




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、.定時器 計數(shù)器的基本結(jié)構(gòu)及工作原理80C51單片機內(nèi)部設(shè)有兩個16位的可編程定時器/計數(shù)器??删幊痰囊馑际侵钙涔δ?如工作方式、定時時間、量程、啟動方式等)均可由指令來確定和改變。在定時器/計數(shù)器中除了有兩個16位的計數(shù)器之外,還有兩個特殊功能寄存器(控制寄存器和方式寄存器)。定時器/計數(shù)器的結(jié)構(gòu):從上面定時器/計數(shù)器的結(jié)構(gòu)圖中我們可以看出,16位的定時/計數(shù)器分別由兩個8位專用寄存器組成,即:T0由TH0和TL0構(gòu)成;T1由TH1和TL1構(gòu)成。其訪問地址依次為8AH-8DH。每個寄存器均可單獨訪問。這些寄存器是用于存放定時或計數(shù)初值的。此外,其內(nèi)部還有一個8位的定時器方式寄存器TMOD和一
2、個8位的定時控制寄存器TCON。這些寄存器之間是通過內(nèi)部總線和控制邏輯電路連接起來的。TMOD主要是用于選定定時器的工作方式;TCON主要是用于控制定時器的啟動停止,此外TCON還可以保存T0、T1的溢出和中斷標(biāo)志。當(dāng)定時器工作在計數(shù)方式時,外部事件通過引腳T0(P3.4)和T1(P3.5)輸入。定時計數(shù)器的原理:16位的定時器/計數(shù)器實質(zhì)上就是一個加1計數(shù)器,其控制電路受軟件控制、切換。當(dāng)定時器/計數(shù)器為定時工作方式時,計數(shù)器的加1信號由振蕩器的12分頻信號產(chǎn)生,即每過一個機器周期,計數(shù)器加1,直至計滿溢出為止。顯然,定時器的定時時間與系統(tǒng)的振蕩頻率有關(guān)。因一個機器周期等于12個振蕩周期,所
3、以計數(shù)頻率fcount=1/12osc。如果晶振為12MHz,則計數(shù)周期為:T=1/(12×106)Hz×1/12=1s這是最短的定時周期。若要延長定時時間,則需要改變定時器的初值,并要適當(dāng)選擇定時器的長度(如8位、13位、16位等)。當(dāng)定時器/計數(shù)器為計數(shù)工作方式時,通過引腳T0和T1對外部信號計數(shù),外部脈沖的下降沿將觸發(fā)計數(shù)。計數(shù)器在每個機器周期的S5P2期間采樣引腳輸入電平。若一個機器周期采樣值為1,下一個機器周期采樣值為0,則計數(shù)器加1。此后的機器周期S3P1期間,新的計數(shù)值裝入計數(shù)器。所以檢測一個由1至0的跳變需要兩個機器周期,故外部事年的最高計數(shù)頻率為振蕩頻率的
4、1/24。例如,如果選用12MHz晶振,則最高計數(shù)頻率為0.5MHz。雖然對外部輸入信號的占空比無特殊要求,但為了確保某給定電平在變化前至少被采樣一次,外部計數(shù)脈沖的高電平與低電平保持時間均需在一個機器周期以上。當(dāng)CPU用軟件給定時器設(shè)置了某種工作方式之后,定時器就會按設(shè)定的工作方式獨立運行,不再占用CPU的操作時間,除非定時器計滿溢出,才可能中斷CPU當(dāng)前操作。CPU也可以重新設(shè)置定時器工作方式,以改變定時器的操作。由此可見,定時器是單片機中效率高而且工作靈活的部件。綜上所述,我們已知定時器/計數(shù)器是一種可編程部件,所以在定時器/計數(shù)器開始工作之前,CPU必須將一些命令(稱為控制字)寫入定時
5、/計數(shù)器。將控制字寫入定時/計數(shù)器的過程叫定時器/計數(shù)器初始化。在初始化過程中,要將工作方式控制字寫入方式寄存器,工作狀態(tài)字(或相關(guān)位)寫入控制寄存器,賦定時/計數(shù)初值。下面我們就提出的控制字的格式及各位的主要功能與大家詳細(xì)的講解??刂萍拇嫫鞫〞r器/計數(shù)器T0和T1有2個控制寄存器-TMOD和TCON,它們分別用來設(shè)置各個定時器/計數(shù)器的工作方式,選擇定時或計數(shù)功能,控制啟動運行,以及作為運行狀態(tài)的標(biāo)志等。其中,TCON寄存器中另有4位用于中斷系統(tǒng)。定時器/計數(shù)器方式寄存器TMOD:定時器方式控制寄存器TMOD在特殊功能寄存器中,字節(jié)地址為89H,無位地址。TMOD的格式如下圖所示。由圖可見,
6、TMOD的高4位用于T1,低4使用于T0,4種符號的含義如下:GATE:門控制位。GATE和軟件控制位TR、外部引腳信號INT的狀態(tài),共同控制定時器/計數(shù)器的打開或關(guān)閉。C/T:定時器/計數(shù)器選擇位。C/T=1,為計數(shù)器方式;C/T=0,為定時器方式。M1M0:工作方式選擇位,定時器/計數(shù)器的4種工作方式由M1M0設(shè)定。工作方式功能描述0 00 11 01 1工作方式0工作方式1工作方式2工作方式313位計數(shù)器16位計數(shù)器自動再裝入8位計數(shù)器定時器0:分成兩個8位計數(shù)器定時器1:停止計數(shù)定時器/計數(shù)器方式控制寄存器TMOD不能進(jìn)行位尋址,只能用字節(jié)傳送指令設(shè)置定時器工作方式,低半字節(jié)定義為定時
7、器0,高半字節(jié)定義為定時器1。復(fù)位時,TMOD所有位均為0。例:設(shè)定定時器1為定時工作方式,要求軟件啟動定時器1按方式2工作。定時器0為計數(shù)方式,要求由軟件啟動定時器0,按方式1工作。我們怎么來實現(xiàn)這個要求呢?大家先看上面TMOD寄存器各位的分布圖第一個問題:控制定時器1工作在定時方式或計數(shù)方式是哪個位?通過前面的學(xué)習(xí),我們已知道,C/T位(D6)是定時或計數(shù)功能選擇位,當(dāng)C/T=0時定時/計數(shù)器就為定時工作方式。所以要使定時/計數(shù)器1工作在定時器方式就必需使D6為0。第二個問題:設(shè)定定時器1按方式2工作。上表中可以看出,要使定時/計數(shù)器1工作在方式2,M0(D4)M1(D5)的值必須是1 0
8、。第三個問題:設(shè)定定時器0為計數(shù)方式。與第一個問題一樣,定時/計數(shù)器0的工作方式選擇位也是C/T(D2),當(dāng)C/T=1時,就工作在計數(shù)器方式。第四個問題:由軟件啟動定時器0,前面已講過,當(dāng)門控位GATE=0時,定時/計數(shù)器的啟停就由軟件控制。第五個問題:設(shè)定定時/計數(shù)器工作在方式1,使定時/計數(shù)器0工作在方式1,M0(D0)M1(D1)的值必須是0 1。從上面的分析我們可以知道,只要將TMOD的各位,按規(guī)定的要求設(shè)置好后,定時器/計靈敏器就會按我們預(yù)定的要求工作。我們分析的這個例子最后各位的情況如下:D7 D6 D5 D4 D3 D2 D1 D0 00 10 01 01二進(jìn)制數(shù)00100101
9、=十六進(jìn)制數(shù)25H。所以執(zhí)行MOV TMOD,#25H這條指令就可以實現(xiàn)上述要求。定時器/計數(shù)器控制寄存器TCON:TCON在特殊功能寄存器中,字節(jié)地址為88H,位地址(由低位到高位)為88H一8FH,由于有位地址,十分便于進(jìn)行位操作。TCON的作用是控制定時器的啟、停,標(biāo)志定時器溢出和中斷情況。TCON的格式如下圖所示。其中,TFl,TRl,TF0和TR0位用于定時器/計數(shù)器;IEl,ITl,IE0和IT0位用于中斷系統(tǒng)。各位定義如下:TF1:定時器1溢出標(biāo)志位。當(dāng)字時器1計滿溢出時,由硬件使TF1置"1",并且申請中斷。進(jìn)入中斷服務(wù)程序后,由硬件自動清"0&q
10、uot;,在查詢方式下用軟件清"0"。TR1:定時器1運行控制位。由軟件清"0"關(guān)閉定時器1。當(dāng)GATE=1,且INT1為高電平時,TR1置"1"啟動定時器1;當(dāng)GATE=0,TR1置"1"啟動定時器1。TF0:定時器0溢出標(biāo)志。其功能及操作情況同TF1。TR0:定時器0運行控制位。其功能及操作情況同TR1。IE1:外部中斷1請求標(biāo)志。IT1:外部中斷1觸發(fā)方式選擇位。IE0:外部中斷0請求標(biāo)志。IT0:外部中斷0觸發(fā)方式選擇位。TCON中低4位與中斷有關(guān),我們將在下節(jié)課講中斷時再給予講解。由于TCON是可以位尋址
11、的,因而如果只清溢出或啟動定時器工作,可以用位操作命令。例如:執(zhí)行"CLR TF0"后則清定時器0的溢出;執(zhí)行"SETB TR1"后可啟動定時器1開始工作(當(dāng)然前面還要設(shè)置方式定)。定時器/計數(shù)器的初始化:由于定時器/計數(shù)器的功能是由軟件編程確定的,所以一般在使用定時/計數(shù)器前都要對其進(jìn)行初始化,使其按設(shè)定的功能工作。初始貨的步驟一般如下:1、確定工作方式(即對TMOD賦值);2、預(yù)置定時或計數(shù)的初值(可直接將初值寫入TH0、TL0或TH1、TL1);3、根據(jù)需要開放定時器/計數(shù)器的中斷(直接對IE位賦值);4、啟動定時器/計數(shù)器(若已規(guī)定用軟件啟動,則
12、可把TR0或TR1置"1";若已規(guī)定由外中斷引腳電平啟動,則需給外引腳步加啟動電平。當(dāng)實現(xiàn)了啟動要求后,定時器即按規(guī)定的工作方式和初值開始計數(shù)或定時)。下面介紹一下確定時時/計數(shù)器初值的具體方法。因為在不同工作方式下計數(shù)器位數(shù)不同,因而最大計數(shù)值也不同。現(xiàn)假設(shè)最大計數(shù)值為M,那么各方式下的最大值M值如下:方式0:M=213=8 192方式1:M=216=65 536方式2:M=28=256方式3:定時器0分成兩個8位計數(shù)器,所以兩個M均為256。因為定時器/計數(shù)器是作"加1"計數(shù),并在計數(shù)滿溢出時產(chǎn)生中斷,因此初值X可以這樣計算:X=M-計數(shù)值下面舉例說
13、明初值的確定方法。例1、選擇T1方式0用于定時,在P1.1輸出周期為1ms方波,晶振fosc=6MHz。解:根據(jù)題意,只要使P1.1每隔500us取反一次即可得到1ms的方波,因而T1的定時時間為500us,因定時時間不長,取方式0即可。則M1 M0=0;因是定時器方式,所以C/T=0;在此用軟件啟動T1,所以GATE=0。T0不用,方式字可任意設(shè)置,只要不使其進(jìn)入方式3即可,一般取0,故TMOD=00H。系統(tǒng)復(fù)位后TMOD為0,可不對TMOD重新清0。下面計算500us定時T1初始值:機器周期T=12/fosc=12/(6×106)Hz=2s設(shè)初值為X,則:(1013-X)
14、5;2×10-6s=500×10-6s X=7942D=1111100000110 B=1F06H因為在作13位計數(shù)器用時,TL1的高3位未用,應(yīng)填寫0,TH1占用高8位,所以X的實際填寫應(yīng)為:X=111100000000110 B=F806H結(jié)果:TH1=F8H,TL1=06H源程序如下:ORG 2000H MOV TL1,#06H;給TL1置初值MOV TH1,#0F8H;給TH1置初值SETB TR1;啟動T1 LP1:JBC TF1,LP2;查詢計數(shù)溢出否?AJMP LP1 LP2:MOV TL1,#06H;重新設(shè)置計數(shù)初值MOV TH1,#0F8H CPL P1.
15、1;輸出取反AJMP LP1;重復(fù)循環(huán)定時器/計數(shù)器的四種工作方式:定T0或T1無論用作定時器或計數(shù)器都有4種工作方式:方式0、方式1、方式2和方式3。除方式3外,T0和T1有完全相同的工作狀態(tài)。下面以T1為例,分述各種工作方式的特點和用法。工作方式0:13位方式由TL1的低5位和TH1的8位構(gòu)成13位計數(shù)器(TL1的高3位無效)。工作方式0的結(jié)構(gòu)見下圖:為定時/計數(shù)選擇:C/T=0,T1為定時器,定時信號為振蕩周期12分頻后的脈沖;C/T=l,T1為計數(shù)器,計數(shù)信號來自引腳T1的外部信號。定時器T1能否啟動工作,還受到了R1、GATE和引腳信號INT1的控制。由圖中的邏輯電路可知,當(dāng)GATE
16、=0時,只要TR1=1就可打開控制門,使定時器工作;當(dāng)GATE=1時,只有TR1=1且INT1=1,才可打開控制門。GATE,TR1,C/T的狀態(tài)選擇由定時器的控制寄存器TMOD,TCON中相應(yīng)位狀態(tài)確定,INT1則是外部引腳上的信號。在一般的應(yīng)用中,通常使GATE=0,從而由TRl的狀態(tài)控制Tl的開閉:TRl=1,打開T1;TRl=0,關(guān)閉T1。在特殊的應(yīng)用場合,例如利用定時器測量接于INT1引腳上的外部脈沖高電平的寬度時,可使GATE=1,TRl=1。當(dāng)外部脈沖出現(xiàn)上升沿,亦即INT1由0變1電平時,啟動T1定時,測量開始;一旦外部脈沖出現(xiàn)下降沿,亦即INT1由l變O時就關(guān)閉了T1。定時器
17、啟動后,定時或計數(shù)脈沖加到TLl的低5位,從預(yù)先設(shè)置的初值(時間常數(shù))開始不斷增1。TL1計滿后,向THl進(jìn)位。當(dāng)TL1和THl都計滿之后,置位T1的定時器回零標(biāo)志TFl,以此表明定時時間或計數(shù)次數(shù)已到,以供查詢或在打開中斷的條件下,可向CPU請求中斷。如需進(jìn)一步定時/計數(shù),需用指令重置時間常數(shù)。方式0是13位計數(shù)結(jié)構(gòu)的工作方式,其計數(shù)器由TH0全部8位和TL0的低5位構(gòu)成。當(dāng)TL0的低5位計數(shù)溢出時,向TH0進(jìn)位,而全部13位計數(shù)溢出時,則向計數(shù)溢出標(biāo)志位TF0進(jìn)位。在方式0下,當(dāng)為計數(shù)工作方式時,計數(shù)值的范圍是:18192(213)當(dāng)為定時工作方式時,定時時間的計算公式為:(213-計數(shù)初
18、值)×晶振周期×12或(213-計數(shù)初值)×機器周期其時間單位與晶振周期或機器周期相同(ms)。例題1:當(dāng)某單片機系統(tǒng)的外接晶振頻率為6MHz,該系統(tǒng)的最小定時時間為:213-(213-1)×1/(6×106)×12=2×10-6=2(ms)最大定時時間為:(213-0)×1/(6×106)×12=16384×10-6=16384(ms)或:最小定時單位×1013=16384(ms)例題2:設(shè)某單片機系統(tǒng)的外接晶振頻率為6MHz,使用定時器1以方式0產(chǎn)生周期為500ms的等寬
19、正方波連續(xù)脈沖,并由P1.0輸出。以查詢方式完成。計算計數(shù)初值欲產(chǎn)生500ms的等寬正方波脈沖,只需在P1.0端以250ms為周期交替輸出高低電平即可實現(xiàn),為此定時時間應(yīng)為250ms。使用6MHz晶振,根據(jù)上例的計算,可知一個機器周期為2ms。方式0為13位計數(shù)結(jié)構(gòu)。設(shè)待求的計數(shù)初值為X,則:(213-X)×2×10-6=250×10-6求解得:X=213-(250÷2)=8067。二進(jìn)制數(shù)表示為1111110000011。十六進(jìn)制表示,高8位為FCH,放入TH1,即TH1=FCH;低5位為03H。放入TL1,即TL1=03H。TMOD寄存器初始化為把定
20、時器/計數(shù)器1設(shè)定為方式0,則M1M0=00;為實現(xiàn)定時功能,應(yīng)使C/T=0;為實現(xiàn)定時器/計數(shù)器1的運行控制,則GATE=0。定時器/計數(shù)器0不用,有關(guān)位設(shè)定為0。因此TMOD寄存器應(yīng)初始化為00H。由定時器控制寄存器TCON中的TR1位控制定時的啟動和停止TR1=1啟動,TR1=0停止。程序設(shè)計:MOV TMOD,#00H;設(shè)置T1為工作方式0 MOV TH1,#OFCH;設(shè)置計數(shù)初值MOV TL1,#03H MOV IE,#00H;禁止中斷LOOP:SETB TR1;啟動定時JBC TF1,LOOP1;查詢計數(shù)溢出AJMP LOOP LOOP1:MOV TH1,#FCH;重新設(shè)置計數(shù)初值
21、MOV TL1,#03H CLR TF1;計數(shù)溢出標(biāo)志位清0 CPL P1.0;輸出取反AJMP LOOP;重復(fù)循環(huán)工作方式1:方式1是16位計數(shù)結(jié)構(gòu)的工作方式,計數(shù)器由TH0全部8位和TL0全部8位構(gòu)成。與工作方式0基本相同,區(qū)別僅在于工作方式1的計數(shù)器TL1和TH1組成16位計數(shù)器,從而比工作方式0有更寬的定時/計數(shù)范圍。當(dāng)為計數(shù)工作方式時,計數(shù)值的范圍是:165536(216)當(dāng)為定時工作方式時,定時時間計算公式為:(216-計數(shù)初值)×晶振周期×12或(216-計數(shù)初值)×機器周期例題1:當(dāng)某單片機系統(tǒng)的外部晶振頻率為6MHz,則最小定時時間為:216-(
22、216-1)×1/6×10-6×12=2×10-6=2(ms)最大定時時間為:(216-0)×1/6×10-6×12=131072×10-6(s)=131072(ms)131(ms)例題2:某單片機系統(tǒng)外接晶振頻率為6MHz,使用定時器1以工作方式1產(chǎn)生周期為500ms的等寬連續(xù)正方波脈沖,并在P1.0端輸出。,但以中斷方式完成。計算計數(shù)初值TH1=FFH TL1=83HTMOD寄存器初始化TMOD=10H程序設(shè)計主程序:MOV TMOD,#10H;定時器1工作方式1 MOV TH1,#0FFH;設(shè)置計數(shù)初值MOV
23、 TL1,#0A1H SETB EA;開中斷SETB ET1;定時器1允許中斷LOOP:SETB TR1;定時開始HERE:SJMP$;等待中斷中斷服務(wù)程序:MOV TH1,#0FFH;重新設(shè)置計數(shù)初值MOV TL1,#0A1H CPL P1.0;輸出取反RETI;中斷返回工作方式2 8位自動裝入時間常數(shù)方式。由TLl構(gòu)成8位計數(shù)器,THl僅用來存放時間常數(shù)。啟動T1前,TLl和THl裝入相同的時間常數(shù),當(dāng)TL1計滿后,除定時器回零標(biāo)志TFl置位,具有向CPU請求中斷的條件外,THl中的時間常數(shù)還會自動地裝入TLl,并重新開始定時或計數(shù)。所以,工作方式2是一種自動裝入時間常數(shù)的8位計數(shù)器方式。
24、由于這種方式不需要指令重裝時間常數(shù),因而操作方便,在允許的條件下,應(yīng)盡量使用這種工作方式。當(dāng)然,這種方式的定時/計數(shù)范圍要小于方式0和方式1。工作方式2的結(jié)構(gòu)見下圖.當(dāng)計數(shù)溢出后,不是像前兩種工作方式那樣通過軟件方法,而是由預(yù)置寄存器TH以硬件方法自動給計數(shù)器TL重新加載。變軟件加載為硬件加載。初始化時,8位計數(shù)初值同時裝入TL0和TH0中。當(dāng)TL0計數(shù)溢出時,置位TF0,同時把保存在預(yù)置寄存器TH0中的計數(shù)初值自動加載TL0,然后TL0重新計數(shù)。如此重復(fù)不止。這不但省去了用戶程序中的重裝指令,而且也有利于提高定時精度。但這種工作方式下是8位計數(shù)結(jié)構(gòu),計數(shù)值有限,最大只能到255。這種自動重新
25、加載工作方式非常適用于循環(huán)定時或循環(huán)計數(shù)應(yīng)用,例如用于產(chǎn)生固定脈寬的脈沖,此外還可以作串行數(shù)據(jù)通信的波特率發(fā)送器使用。例題1:使用定時器0以工作方式2產(chǎn)生100ms定時,在P1.0輸出周期為200ms的連續(xù)正方波脈沖。已知晶振頻率fosc=6MHz。計算計數(shù)初值6MHz晶振下,一個機器周期為2ms,以TH0作重裝載的預(yù)置寄存器,TL0作8位計數(shù)器,假設(shè)計數(shù)初值為X,則:(28-X)×2×10-6=100×10-6求解得:X=206D=11001110 B=0CEH把0CEH分別裝入TH0和TL0中:TH0=0CEH,TL0=0CEHTMOD寄存器初始化定時器/計數(shù)
26、器0為工式方式2,M1M0=10;為實現(xiàn)定時功能C/T=0;為實現(xiàn)定時器/計數(shù)器0的運行GATE=0;定時器/計數(shù)器1不用,有關(guān)位設(shè)定為0。綜上情況TMOD寄存器的狀態(tài)應(yīng)為02H。程序設(shè)計(查詢方式)MOV IE,#00H;禁止中斷MOV TMOD,#02H;設(shè)置定時器0為方式2 MOV TH0,#0CEH;保存計數(shù)初值MOV TL0,#0CEH;設(shè)置計數(shù)初值SETB TR0;啟動定時LOOP:JBC TF0,LOOP1;查詢計數(shù)溢出AJMP LOOP LOOP1:CPL P1.0;輸出方波AJMP LOOP;重復(fù)循環(huán)由于方式2具有自動重裝載功能,因此計數(shù)初值只需設(shè)置一次,以后不再需要軟件重置
27、。程序設(shè)計(中斷方式)主程序:MOV TMOD,#02H;定時器0工作方式2 MOV TH0,#0CEH;保存計數(shù)初值MOV TL0,#0CEH;設(shè)置計數(shù)初值SETB EA;開中斷SETB ET0;定時器0允許中斷LOOP:SETB TR0;開始定時HERE:SJMP$;等待中斷CLP TF0;計數(shù)溢出標(biāo)志位清0 AJMP LOOP中斷服務(wù)中斷:CPL P1.0;輸出方波RETI;中斷返回例題2:用定時器1以工作方式2實現(xiàn)計數(shù),每計100次進(jìn)行累加器加1操作。計算計數(shù)初值28-100=156D=09CH則TH1=09CH,TL1=09CHTMOD寄存器初始化M1M0=10,C/T=1,GATE
28、=0因此TMOD=60H程序設(shè)計MOV IE,#00H;禁止中斷MOV TMOD,#60H;設(shè)置計數(shù)器1為方式2 MOV TH1,#9CH;保存計數(shù)初值MOV TL1,#9CH;設(shè)置計數(shù)初值SETB TR1;啟動計數(shù)DEL:JBC TF1,LOOP;查詢計數(shù)溢出AJMP DEL LOOP:INC A;累加器加1 AJMP DEL;循環(huán)返回工作方式3 2個8位方式。工作方式3只適用于定時器0。如果使定時器1為工作方式3,則定時器1將處于關(guān)閉狀態(tài)。當(dāng)T0為工作方式3時,THo和TL0分成2個獨立的8位計數(shù)器。其中,TL0既可用作定時器,又可用作計數(shù)器,并使用原T0的所有控制位及其定時器回零標(biāo)志和中
29、斷源。TH0只能用作定時器,并使用T1的控制位TRl、回零標(biāo)志TFl和中斷源,見下圖。通常情況下,T0不運行于工作方式3,只有在T1處于工作方式2,并不要求中斷的條件下才可能使用。這時,T1往往用作串行口波特率發(fā)生器(見1.4),TH0用作定時器,TL0作為定時器或計數(shù)器。所以,方式3是為了使單片機有1個獨立的定時器/計數(shù)器、1個定時器以及1個串行口波特率發(fā)生器的應(yīng)用場合而特地提供的。這時,可把定時器l用于工作方式2,把定時器0用于工作方式3。下才可能使用。這時,T1往往用作串行口波特率發(fā)生器,TH0用作定時器,TL0作為定時器或計數(shù)器。所以,方式3是為了使單片機有1個獨立的定時器/計數(shù)器、1
30、個定時器以及1個串行口波特率發(fā)生器的應(yīng)用場合而特地提供的。這時,可把定時器l用于工作方式2,把定時器0用于工作方式3。理解內(nèi)容定時器/計數(shù)器的應(yīng)用例1、設(shè)fosc=6MHz,利用單片機內(nèi)定時/計數(shù)器及P10口線輸出1000個脈沖,脈沖周期為2ms,試編程。解:T=12×1/fosc=2us選取T0定時;T1計數(shù)。設(shè)T0采用中斷方式產(chǎn)生周期為2ms方波,T1對該方波計數(shù),當(dāng)輸出至第1000個脈沖時,使TF1置1。在主程序中用查詢方法,檢測到TF1變1時,關(guān)掉T0,停止輸出方波。T0、T1參數(shù)的確定:T0模式0、定時:脈寬為脈沖周期的一半所以,X=213-1ms/2us=0001 1110 0000 1100B TH0=0F0H TL0=0CH T1模式1、計數(shù):N=1000則X=65
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國餐飲設(shè)備市場發(fā)展趨勢規(guī)劃研究報告
- 2025-2030年中國鋼制車輪行業(yè)發(fā)展現(xiàn)狀及前景趨勢分析報告
- 2025-2030年中國采暖散熱器行業(yè)十三五規(guī)劃及發(fā)展前景分析報告
- 2025-2030年中國通信繼電器市場供需狀況及投資戰(zhàn)略研究報告
- 2025-2030年中國船舶涂料產(chǎn)業(yè)運營狀況與發(fā)展趨勢分析報告
- 2025-2030年中國聚酯多元醇行業(yè)市場現(xiàn)狀分析規(guī)劃研究報告
- 2025-2030年中國網(wǎng)絡(luò)借貸市場發(fā)展現(xiàn)狀及前景趨勢分析報告
- 2025-2030年中國精制棉市場運營現(xiàn)狀及投資前景規(guī)劃研究報告
- 2025-2030年中國眼視光行業(yè)發(fā)展趨勢規(guī)劃研究報告
- 實驗經(jīng)濟學(xué)實驗設(shè)計案例
- 東軟入職合同
- 護理責(zé)任組長競聘
- 衛(wèi)生監(jiān)督村醫(yī)培訓(xùn)課件
- 2024年新青島版(六三制)四年級下冊科學(xué)全冊精編復(fù)習(xí)資料
- 大學(xué)生創(chuàng)新創(chuàng)業(yè)基礎(chǔ)(創(chuàng)新創(chuàng)業(yè)課程)全套教學(xué)課件
- 礦山開工第一課
- 直腸癌術(shù)后的康復(fù)護理
- 性商老師課程培訓(xùn)課件
- 貴州省教育科學(xué)規(guī)劃課題申請書
- 火針療法課件
評論
0/150
提交評論