版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、第五章 8051單片機的定時器/計數(shù)器1 在在8051中,實現(xiàn)中斷需要用軟件對以下中,實現(xiàn)中斷需要用軟件對以下5個內(nèi)容進行個內(nèi)容進行初始化初始化設(shè)置:設(shè)置: 中斷服務(wù)程序入口地址的設(shè)定。中斷服務(wù)程序入口地址的設(shè)定。 CPU開中斷與關(guān)中斷。開中斷與關(guān)中斷。 某一中斷源中斷請求的允許與禁止。某一中斷源中斷請求的允許與禁止。 各中斷源優(yōu)先級別的設(shè)定。各中斷源優(yōu)先級別的設(shè)定。 對于外部中斷請求,還需進行觸發(fā)方式的設(shè)定。對于外部中斷請求,還需進行觸發(fā)方式的設(shè)定。中斷服務(wù)程序的設(shè)計中斷服務(wù)程序的設(shè)計中斷程序一般包含中斷程序一般包含中斷控制程序中斷控制程序和和中斷服務(wù)程序兩部分中斷服務(wù)程序兩部分。 中斷控制
2、程序即中斷控制程序即中斷初始化程序中斷初始化程序,一般不獨立編寫,而是,一般不獨立編寫,而是包含包含在主程序中在主程序中,根據(jù)上述的,根據(jù)上述的5點通過編寫幾條指令來實現(xiàn)。點通過編寫幾條指令來實現(xiàn)。 中斷服務(wù)程序是一種為中斷源的特定事態(tài)要求服務(wù)的中斷服務(wù)程序是一種為中斷源的特定事態(tài)要求服務(wù)的獨立程序獨立程序段段,以中斷返回指令,以中斷返回指令RETI結(jié)束。結(jié)束。第五章 8051單片機的定時器/計數(shù)器2編程如下:編程如下:ORG0000HSJMPMAINORG0003H ; 外部中斷外部中斷/INT0中斷矢量中斷矢量LJMPINT0INT ORG 0013H ;外部中斷;外部中斷/INT1中斷矢
3、量中斷矢量LJMPINT1INT MAIN:MOV IP,#00000100B ;設(shè);設(shè)INT1為高優(yōu)先級為高優(yōu)先級 SETB IT0 ;設(shè);設(shè)INT0下降沿有效下降沿有效 MOV IE, #10000101B ;允許;允許INT0、INT1中斷,中斷, ;開放;開放CPU中斷中斷 INT0INT : ;中斷服務(wù)程序;中斷服務(wù)程序 PUSH PSW ;保護現(xiàn)場保護現(xiàn)場 PUSH ACC POP ACC ;恢復(fù)現(xiàn)場恢復(fù)現(xiàn)場 POP PSW RETI中斷中斷入口入口中斷中斷控制控制中斷服中斷服務(wù)務(wù)第第5章章 定時器定時器/計數(shù)器計數(shù)器及其應(yīng)用及其應(yīng)用第五章 8051單片機的定時器/計數(shù)器4 定時器
4、定時器/ /計數(shù)器的作用:計數(shù)器的作用:1)1) 產(chǎn)生一個產(chǎn)生一個時間很長的定時信號時間很長的定時信號,可,可實現(xiàn)定時控制;實現(xiàn)定時控制;2)可以測量可以測量外部脈沖信號的個數(shù)及頻率外部脈沖信號的個數(shù)及頻率。 1軟件法軟件法 常用生產(chǎn)定時信號的方法:常用生產(chǎn)定時信號的方法: 假設(shè)單片機使用假設(shè)單片機使用12MHz晶振,一個機器周期是晶振,一個機器周期是1us。要編一個延。要編一個延時時50ms的程序。的程序。DEL: MOV R7, #200DEL1:MOV R6, #125 DEL2: DJNZ R6, DEL2 DJNZ R7, DEL1單條指令執(zhí)行時間單條指令執(zhí)行時間2us總時間:總時間
5、:212520050000us缺點:缺點:1)占用占用CPU時間;時間;2)定時有時不準(zhǔn)。定時有時不準(zhǔn)。第五章 8051單片機的定時器/計數(shù)器5 8051包含有兩個包含有兩個16位的定時器計數(shù)器位的定時器計數(shù)器:T0和和T1;8052包含包含有三個有三個16位的定時器計數(shù)器:位的定時器計數(shù)器:T0、T1和和T2;Philips公司的公司的80C552中,還包含有一個用做看門狗的中,還包含有一個用做看門狗的8位定時器(位定時器(T3)。)。 定時器計數(shù)器的核心是一個定時器計數(shù)器的核心是一個加加1計數(shù)器計數(shù)器,其基本功能是計數(shù)加,其基本功能是計數(shù)加1。2. 采用定時器計數(shù)器采用定時器計數(shù)器 最大特
6、點是:可以通過軟件設(shè)置來實現(xiàn)定時長短,通過最大特點是:可以通過軟件設(shè)置來實現(xiàn)定時長短,通過中斷方中斷方法來完成定時。法來完成定時。單片機系列中定時器計數(shù)器配備情況:單片機系列中定時器計數(shù)器配備情況:第五章 8051單片機的定時器/計數(shù)器6定時器計數(shù)器的工作原理:定時器計數(shù)器的工作原理: 計數(shù)器就計數(shù)器就象一個容器,象一個容器,來來1個脈沖加個脈沖加1粒顆粒,對進入的脈沖信粒顆粒,對進入的脈沖信號進行號進行“加加1”計數(shù),低位滿了向高位進位,當(dāng)所有的位都滿了就產(chǎn)計數(shù),低位滿了向高位進位,當(dāng)所有的位都滿了就產(chǎn)生溢出,在生溢出,在TCON中產(chǎn)生計數(shù)器溢出標(biāo)志。中產(chǎn)生計數(shù)器溢出標(biāo)志。定時器計數(shù)器還要解
7、決的問題:定時器計數(shù)器還要解決的問題:1. 實現(xiàn)定時器與計數(shù)器功能轉(zhuǎn)換。實現(xiàn)定時器與計數(shù)器功能轉(zhuǎn)換。2. 在在計數(shù)寄存器計數(shù)寄存器中裝入中裝入初值初值。3. 改變計數(shù)寄存器的總改變計數(shù)寄存器的總位數(shù)位數(shù)。4. 定時器計數(shù)器何時及如何定時器計數(shù)器何時及如何啟動啟動?第五章 8051單片機的定時器/計數(shù)器7計數(shù)寄存器計數(shù)寄存器方式寄方式寄存器存器控制寄控制寄存器存器輸入引輸入引腳腳時鐘分時鐘分頻器頻器定時器計數(shù)器定時器計數(shù)器T0、T1原理示意圖:原理示意圖:第五章 8051單片機的定時器/計數(shù)器8 T0、T1 的方式寄存器的方式寄存器TMOD D7 D6 D5 D4 D3 D2 D1 D0GATE
8、C/TM1M0GATEC/TM1M0T1T0門控位:為門控位:為0時僅由時僅由TR1置位置位來啟動定時器來啟動定時器T1。為。為1時由外時由外部中斷引腳、和部中斷引腳、和TR1共同來啟共同來啟動定時器。動定時器。定時器計數(shù)器方定時器計數(shù)器方式選擇位,為式選擇位,為0時時為定時器。為定時器。工作方式選擇位,可工作方式選擇位,可以有四種工作方式。以有四種工作方式。5.1 定時器計數(shù)器的工作方式與控制字定時器計數(shù)器的工作方式與控制字第五章 8051單片機的定時器/計數(shù)器9M1、M0工作方式選擇位。工作方式選擇位。 由于有由于有M1和和M0兩位,可以有四種工作方式,如下表所示。兩位,可以有四種工作方式
9、,如下表所示。M1 M0 工作方式工作方式 計數(shù)器配置計數(shù)器配置 0 0方式方式0 13位計數(shù)器位計數(shù)器 0 1方式方式1 16位計數(shù)器位計數(shù)器 1 0方式方式2 自動重裝載的自動重裝載的8位計數(shù)器位計數(shù)器 1 1方式方式3 T0分為分為2 2個個8位計數(shù)器位計數(shù)器/ /定時器定時器,T1分為分為1 1個個8位計數(shù)器位計數(shù)器/ /定時器定時器。第五章 8051單片機的定時器/計數(shù)器10 控制寄存器控制寄存器TCON是一個逐位定義的是一個逐位定義的8位寄存器,字節(jié)地址位寄存器,字節(jié)地址為為88H,位尋址的地址為,位尋址的地址為88H8FH。其格式如下:。其格式如下:位地址位地址 8FH 8EH8
10、DH8CH8BH8AH89H88H位功能位功能 TF1TR1TF0TR0IE1IT1IE0IT0 T0、T1 的運行控制寄存器的運行控制寄存器TCONT1的的溢出溢出標(biāo)志標(biāo)志T1的運行控的運行控制位置制位置 1時,時,啟動啟動 T1,清,清 0時,停止時,停止 T1 。外部中斷外部中斷1申申請中斷位請中斷位外部中斷外部中斷0觸發(fā)類觸發(fā)類型選擇位型選擇位第五章 8051單片機的定時器/計數(shù)器11 由由TH1(地址為地址為8DH)、TL1(地址為地址為8BH)和和TH0(地址為地址為8CH)、TL0(地址為地址為8AH)寄存器所組成。寄存器所組成。 定時器定時器/計數(shù)器中斷計數(shù)器中斷 中斷允許寄存
11、器中斷允許寄存器IE EA位位-中斷允許總控制位中斷允許總控制位 ET0位、位、ET1位、位、ET2位位-T0、T1和和T2的中斷允許控制位。的中斷允許控制位。 某位某位=0,則禁止對應(yīng)定時器,則禁止對應(yīng)定時器/計數(shù)器的中斷。計數(shù)器的中斷。某位某位=1,則允許對應(yīng)定時器,則允許對應(yīng)定時器/計數(shù)器的中斷。計數(shù)器的中斷。 中斷矢量中斷矢量 定時器定時器T0:000BH 定時器定時器T1:001BH 定時器定時器T2:002BH T0、T1 的數(shù)據(jù)寄存器的數(shù)據(jù)寄存器第五章 8051單片機的定時器/計數(shù)器12 根據(jù)對根據(jù)對TMOD寄存器中寄存器中M1和和M0的設(shè)定,的設(shè)定,T0可選擇四種不同的可選擇四
12、種不同的工作方式,而工作方式,而T1只具有三種工作方式(即方式只具有三種工作方式(即方式0、方式、方式1和方式和方式2)。)。 方式方式0 0:1313位定時器位定時器/ /計數(shù)器計數(shù)器當(dāng)當(dāng)M10、M00時,選定方式時,選定方式0工作。工作。非非或或與與為為1時閉合時閉合定時器計數(shù)器定時器計數(shù)器T0、T1 的工作方式:的工作方式:第五章 8051單片機的定時器/計數(shù)器13 門控位門控位GATE可用作對可用作對INTx引腳上的高電平時間進行計量。當(dāng)引腳上的高電平時間進行計量。當(dāng)GATE0時,時,A點為高電平,定時器計數(shù)器的啟動停止由點為高電平,定時器計數(shù)器的啟動停止由 TRx決定。決定。TRx1
13、,定時器計數(shù)器啟動;,定時器計數(shù)器啟動;TRx0,定時器計數(shù)器,定時器計數(shù)器停止。停止。 當(dāng)當(dāng)GATE1時,時,A點的電位由點的電位由INTx決定,因而決定,因而B點的電位就由點的電位就由TRx和和INTx決定,即定時器計數(shù)器的啟動停止由決定,即定時器計數(shù)器的啟動停止由TRx和和INTx兩個條件決定。兩個條件決定。 非非或或與與為為1時閉合時閉合第五章 8051單片機的定時器/計數(shù)器14 方式方式1:16位定時器位定時器/計數(shù)器計數(shù)器 當(dāng)當(dāng)TMOD中的中的M10、M0l時,選定方式時,選定方式1工作。工作。方式方式1時,時,T0、T1的邏輯結(jié)構(gòu)如圖所示。這種方式下,計數(shù)寄存器的邏輯結(jié)構(gòu)如圖所示
14、。這種方式下,計數(shù)寄存器由由16位組成,位組成,THx高高8位和位和TLx的低的低8位。位。 計數(shù)時,計數(shù)時,TLx溢出后向溢出后向THx進位,進位,THx溢出后將溢出后將TFx置位,如置位,如果中斷允許,果中斷允許,CPU響應(yīng)中斷并轉(zhuǎn)入中斷服務(wù)程序,由內(nèi)部硬件清響應(yīng)中斷并轉(zhuǎn)入中斷服務(wù)程序,由內(nèi)部硬件清TFx。TFx也可以由程序查詢和清零。也可以由程序查詢和清零。 第五章 8051單片機的定時器/計數(shù)器15 方式方式2:定時常數(shù)自動重裝載的:定時常數(shù)自動重裝載的8位定時器位定時器/計數(shù)器計數(shù)器 當(dāng)當(dāng)TMOD中的中的M11、M00時,選定方式時,選定方式2工作工作。這種方式是。這種方式是將將16
15、位計數(shù)寄存器分為兩個位計數(shù)寄存器分為兩個8位寄存器,組成一個可重載的位寄存器,組成一個可重載的8位計數(shù)位計數(shù)寄存器。方式寄存器。方式2時定時器時定時器/計數(shù)器計數(shù)器T0、T1的邏輯結(jié)構(gòu)如下圖所示。的邏輯結(jié)構(gòu)如下圖所示。當(dāng)當(dāng)TLx計數(shù)溢計數(shù)溢出時,將出時,將THx的內(nèi)容重新裝的內(nèi)容重新裝入入TLx中,繼中,繼續(xù)計數(shù)。續(xù)計數(shù)。 方式方式2適合于作為串行口波特率發(fā)生器使用。適合于作為串行口波特率發(fā)生器使用。第五章 8051單片機的定時器/計數(shù)器16 方式方式3 當(dāng)當(dāng)TMOD中的中的M1l、M01時,選定方式時,選定方式3工作。工作。 工作方式工作方式3下的下的定時器定時器/計數(shù)器計數(shù)器T0 方式方式
16、3時,這種方式是時,這種方式是將將T0分為一個分為一個8位定時器計數(shù)器和一個位定時器計數(shù)器和一個 8位位定時器定時器,TL0用于用于 8位定時器計數(shù)器,位定時器計數(shù)器,TH0用于用于8位定時器。位定時器。第五章 8051單片機的定時器/計數(shù)器17工作方式工作方式3下的定時器下的定時器/計數(shù)器計數(shù)器T1T0方式方式3時,時,T1只可選方式只可選方式0、1或或2。作串行口波特率發(fā)生器時,。作串行口波特率發(fā)生器時,T1的計數(shù)輸出直接去串行口,只需設(shè)置好工作方式,串行口的計數(shù)輸出直接去串行口,只需設(shè)置好工作方式,串行口波波特率發(fā)生器特率發(fā)生器自動開始運行。自動開始運行。時鐘發(fā)生器時鐘發(fā)生器第五章 80
17、51單片機的定時器/計數(shù)器185.2定時器計數(shù)器應(yīng)用舉例定時器計數(shù)器應(yīng)用舉例 8051單片機定時器計數(shù)器的初始化編程包括如下幾個步驟:單片機定時器計數(shù)器的初始化編程包括如下幾個步驟: 1確定工作方式,即給方式控制寄存器確定工作方式,即給方式控制寄存器TMOD寫入控制字。寫入控制字。 2計算定時器計數(shù)器初值,并將初值寫入寄存器計算定時器計數(shù)器初值,并將初值寫入寄存器TL和和TH 。 3根據(jù)需要對中斷控制寄存器根據(jù)需要對中斷控制寄存器IE置初值,決定是否開放定時器置初值,決定是否開放定時器中斷。中斷。 4使運行控制寄存器使運行控制寄存器TCON中的中的TR0或或TR1置置“1,啟動定時器,啟動定時
18、器計數(shù)器。計數(shù)器。計數(shù)計數(shù)初始值初始值X確定:確定: 假設(shè)計數(shù)器的假設(shè)計數(shù)器的最大計數(shù)值為最大計數(shù)值為M(根據(jù)不同工作方式,(根據(jù)不同工作方式,M可以是可以是213、216或或28),則),則計算初值計算初值X的公式如下:的公式如下: 計數(shù)方式:計數(shù)方式:X=M要求的計數(shù)值要求的計數(shù)值 (5-1)定時方式:定時方式:XM 要求的定時值要求的定時值/(12/fosc) (5-2)機器周期第五章 8051單片機的定時器/計數(shù)器195.2.1計算初值和最大定時時間計算初值和最大定時時間例例5-1假設(shè)單片機的振蕩頻率假設(shè)單片機的振蕩頻率fosc = 6 MHz,現(xiàn)要求產(chǎn)生,現(xiàn)要求產(chǎn)生1 ms的定時的定
19、時,試分別計算定時器試分別計算定時器T1在方式在方式0、方式、方式1和方式和方式2時的初值。時的初值。方式方式0:最大計數(shù)值為:最大計數(shù)值為M=213,因此定時器的初值應(yīng)為:,因此定時器的初值應(yīng)為: X=213(1 10-3)(12/610-6) =7692D 十進制數(shù)十進制數(shù)X值變值變16進制方法:進制方法: X除除16余數(shù)為最低位余數(shù)為最低位,商再除于商再除于16余數(shù)為次低位余數(shù)為次低位,再把商除,再把商除16余數(shù)為次高位,商為最高位。余數(shù)為次高位,商為最高位。例如:例如:X為為7692化為化為16進制。進制。769216余數(shù)為余數(shù)為12,商為,商為480480 16余數(shù)為余數(shù)為0,商為,
20、商為3030 16余數(shù)為余數(shù)為14,商為,商為176921E0CH而:而:1E0CH0001,1110,0000,1100B如采用如采用13位位計數(shù)器:計數(shù)器:TL1=0CHTH1=F0H第五章 8051單片機的定時器/計數(shù)器20 方式方式1:最大計數(shù)值為:最大計數(shù)值為M=216,因此定時器的初值應(yīng)為,因此定時器的初值應(yīng)為 X=216(110-3) /(210-6) = 65036D =1111111000001100B =FE0CH 此時高此時高8位位TH1的初值為的初值為FEH,低,低8位位TL1的初值為的初值為0CH。 例例5-2假設(shè)單片機的振蕩頻率假設(shè)單片機的振蕩頻率fosc= 6 M
21、Hz,試計算,試計算T0在在方式方式0和和方式方式1下的最大定時時間下的最大定時時間。 T0最大定時時間對應(yīng)于計數(shù)器最大定時時間對應(yīng)于計數(shù)器TH0和和TL0的各位全為的各位全為1,即,即TH0=0FFH,TL0=0FFH,若定時器若定時器T0工作在方式工作在方式0,則最大定時值為,則最大定時值為Tmax=213 (12/(6106 Hz) =16.384ms若工作在方式若工作在方式1,則最大定時值為,則最大定時值為 Tmax=216 (12/(6106 Hz) )= 131.072ms第五章 8051單片機的定時器/計數(shù)器215.2.2定時器方式應(yīng)用定時器方式應(yīng)用例例5-3設(shè)設(shè)8051單片機的
22、工作頻率為單片機的工作頻率為6 MHz,利用利用T0中斷擴展方式產(chǎn)中斷擴展方式產(chǎn)生生1s定時,當(dāng)定時,當(dāng)1s定時時間到定時時間到,從,從P1.0輸出一個輸出一個低電平低電平點亮發(fā)光二極點亮發(fā)光二極管。管。解:本例可以選用解:本例可以選用方式方式1,每隔,每隔l00ms中斷一次中斷一次,中斷,中斷10次次即為即為1s。定時初值計算如下:定時初值計算如下: X=216(l0010-3) / (210-6) =15536D =3CB0H因此,因此,TH0= 3CH, TL0B0H。程序清單如下:程序清單如下:第五章 8051單片機的定時器/計數(shù)器22 ORG 0000H LJMP MAIN ORG
23、000BH LJMP TT0 ORG 0030HMAIN: MOV SP, #60H MOV 20H, #0AH MOV TMOD, #01H MOV TH0,#3CH MOV TL0,#0B0H SETB TR0 SETB EA SETB ET0 SJMP $TT0:MOV TH0,3CH MOV TL0,#0B0H DJNZ 20H, LOOP CLR TR0 CLR P1.0LOOP:CPL P1.7 RETI END;復(fù)位入口;復(fù)位入口;轉(zhuǎn)到主程序;轉(zhuǎn)到主程序;T0中斷入口中斷入口;轉(zhuǎn)到;轉(zhuǎn)到T0中斷服務(wù)程序中斷服務(wù)程序;主程序入口;主程序入口;設(shè)置堆棧指針;設(shè)置堆棧指針;設(shè)置中斷次數(shù)
24、;設(shè)置中斷次數(shù):設(shè)置設(shè)置T0工作方式工作方式;裝入;裝入T0初值初值;啟動啟動T0;開中斷;開中斷;允許允許T0中斷中斷;等待中斷;等待中斷;重裝;重裝T0初值初值;中斷次數(shù)未到;中斷次數(shù)未到;1s定時時間到,停止定時時間到,停止T0;從從P1.0輸出低電平輸出低電平;中斷返回;中斷返回第五章 8051單片機的定時器/計數(shù)器23例例 5.5 要求在要求在 P1.0引腳上產(chǎn)生周期為引腳上產(chǎn)生周期為2 ms的方波輸出的方波輸出。已知晶體振蕩器的頻率為已知晶體振蕩器的頻率為fosc=6MHz??墒褂?。可使用T0作定時器,作定時器,設(shè)為方設(shè)為方式式0,設(shè)定,設(shè)定 lms的定時,每隔的定時,每隔1ms使
25、使P1.0引腳上的電平變反引腳上的電平變反(1) 解:定時常數(shù)計算解:定時常數(shù)計算 振蕩器的頻率振蕩器的頻率fosc6MHz,機器周期為,機器周期為2s,方式,方式0計數(shù)器長計數(shù)器長度度13,定時時間,定時時間 t1ms0.001s方式方式0最大計數(shù)值為最大計數(shù)值為M=213,因此定時器的初值應(yīng)為:,因此定時器的初值應(yīng)為: X=213(1 10-3)(12/ (6106) =7692D第五章 8051單片機的定時器/計數(shù)器24 X為為76921E0CH,二進制數(shù),二進制數(shù)XB0 0 0 1 1 1 1 0 0 0 0 0 1 1 0 0 B,取低,取低13位,其中高位,其中高8位位TCHF0H
26、,低,低5位為位為TCL0CH。TMOD的設(shè)定(即控制字)的設(shè)定(即控制字)第五章 8051單片機的定時器/計數(shù)器25( 2) 編編 程程 (中斷法中斷法) ORG 0000H AJMP MAIN ORG 000BH;T0中斷矢量中斷矢量 AJMP INQP ORG 0030HMAIN:MOV TMOD,00H ;寫控制字,;寫控制字, ;設(shè)設(shè)T0為定時器方式為定時器方式0 0 MOV TH0,0F0H ;寫定時常數(shù);寫定時常數(shù)( (定時定時1ms)1ms)M O V T L 0 , , 0 C HSETB TR0 ;啟動;啟動 T0 SETB ET0 ;允許;允許T0中斷中斷 SETB EA
27、 ;開放;開放CPU中斷中斷 AJMP $ ;定時中斷等待;定時中斷等待 ORG XXXX H ;T0T0中斷服務(wù)程序中斷服務(wù)程序INQP:MOV TH0,0F0H ;重寫定時常數(shù)重寫定時常數(shù) MOV TL0,0CHCPL P10 ;變反輸出;變反輸出 RETI ;中斷返回;中斷返回 第五章 8051單片機的定時器/計數(shù)器26編編 程程 (查詢法查詢法) ORG 0000H MOV TMOD ,00H ;寫控制字,;寫控制字, ;設(shè);設(shè)T0為定時器方式為定時器方式0 MOV TH0,0F0H ;寫定時常數(shù);寫定時常數(shù)(定時定時1ms)MOV TL0,0CHSETB TR0 ;啟動;啟動 T0
28、LOOP1:JNB TF0, LOOP1 CLR TF0 CPL P1.0 MOV TH0,0F0H ;寫定時常數(shù);寫定時常數(shù)(定時定時1ms) MOV TL0,0CH SJMP LOOP1 END第五章 8051單片機的定時器/計數(shù)器27例例5-6測量脈沖寬度。當(dāng)特殊功能寄存器測量脈沖寬度。當(dāng)特殊功能寄存器TMOD中的中的 GATE=1和和TCON中的中的TR1=1時,只有時,只有INT1引腳引腳上出現(xiàn)上出現(xiàn)高電平高電平的時候,的時候,T1才被才被允許計數(shù)允許計數(shù),利用這一特點可以測量加在,利用這一特點可以測量加在P3.3(即(即INT1引腳)上的正引腳)上的正脈沖寬度。脈沖寬度。測量時,先
29、將測量時,先將T1設(shè)置為定時方式,設(shè)置為定時方式,GATE設(shè)為設(shè)為1,并在,并在INT1引腳為引腳為“0”時將時將TR1置置“1”這樣當(dāng)這樣當(dāng)INT1引腳變?yōu)橐_變?yōu)椤?”時將啟動時將啟動T1;當(dāng)當(dāng)INT1引腳再次變?yōu)橐_再次變?yōu)椤?”時將停止時將停止T1,此時,此時T1的定時值就是被測的定時值就是被測正脈沖的寬度。若將定時初值設(shè)為正脈沖的寬度。若將定時初值設(shè)為0,當(dāng)單片機工作頻率為,當(dāng)單片機工作頻率為12MHz時,能測量的最大脈沖寬度為時,能測量的最大脈沖寬度為65.536ms。*門控位門控位GATE的應(yīng)用的應(yīng)用:第五章 8051單片機的定時器/計數(shù)器28第五章 8051單片機的定時器/計數(shù)
30、器29 程序清單如下:程序清單如下: ORG 0000H LJMP MAIN ORG 0030HMAIN:MOV TMOD,#90H MOV TL1,#00H MOV TH1,#00HRL1: JB P3.3,RL1 SETB TR1RL2:JNB P3.3, RL2RL3: JB P3.3,RL3 CLR TR1 MOV 30H, TH1 MOV 31H, TL1 SJMP $;復(fù)位地址;復(fù)位地址;跳轉(zhuǎn)到主程序;跳轉(zhuǎn)到主程序;主程序入口地址;主程序入口地址;T1工作于定時方式工作于定時方式1,GATE=1;計數(shù)初值設(shè)為計數(shù)初值設(shè)為0;最大脈沖寬度為;最大脈沖寬度為65.536ms;等待;等待
31、P3.3變低變低;啟動啟動T1;等待;等待P3.3變高變高;等待;等待P3.3再次變低再次變低;停止停止T1;讀取脈沖寬度高低字節(jié)值;分;讀取脈沖寬度高低字節(jié)值;分別存放于別存放于30H和和31H中中;分別存放于;分別存放于30H和和31H中中第五章 8051單片機的定時器/計數(shù)器305.2.3 計數(shù)器計數(shù)器的應(yīng)用的應(yīng)用 例例5-7 將將T0設(shè)置為外部脈沖設(shè)置為外部脈沖計數(shù)方式計數(shù)方式,在,在P3.4 (T0)引腳上引腳上外接一個單脈沖發(fā)生外接一個單脈沖發(fā)生器器,每按一次單脈沖按鈕,每按一次單脈沖按鈕,T0計數(shù)一個脈沖,同時將計數(shù)值送往計數(shù)一個脈沖,同時將計數(shù)值送往P1口,從口,從P1.0-P
32、1.7外接的外接的LED發(fā)光二極管可以看到計數(shù)值。發(fā)光二極管可以看到計數(shù)值。 程序清單如下:程序清單如下: ORG 0000H;復(fù)位地址;復(fù)位地址 LJMP MAIN ;跳轉(zhuǎn)到主程序;跳轉(zhuǎn)到主程序 ORG 0030H ;主程序入口地址;主程序入口地址MAIN:MOV TMOD,#05H;寫入;寫入T0控制字,控制字,16位外部計數(shù)方式位外部計數(shù)方式 MOV TH0,#0 ;寫入;寫入T0計數(shù)初值計數(shù)初值 MOV TL0,#0 SETB TR0;開始計數(shù);開始計數(shù)LOOP:MOV P1,TL0;將記數(shù)將記數(shù) LJMP LOOP ; 結(jié)果送結(jié)果送P1口口 END第五章 8051單片機的定時器/計數(shù)
33、器31例例5-8 要求當(dāng)要求當(dāng)P3.4 (T0)引腳引腳上的電平發(fā)生負(fù)上的電平發(fā)生負(fù)跳變時跳變時,從,從P1.0輸出一個輸出一個500us的同的同步步脈沖脈沖。Proteus仿真電路如圖仿真電路如圖5.9所示,所示,將將P1.0和和P3.4引腳分別接到模引腳分別接到模擬示波器的擬示波器的A, B輸入端,每次輸入端,每次按下按鈕時,可以看到按下按鈕時,可以看到P1.0輸輸出的同步脈沖信號。出的同步脈沖信號。若單片機工作頻率為若單片機工作頻率為6MHz, T0的定時初值應(yīng)為:的定時初值應(yīng)為: X=28(50010-6)/(210-6) =6 =06H 可以先將可以先將T0設(shè)置為方式設(shè)置為方式2,外
34、部計數(shù)方式,計數(shù)初值設(shè)為,外部計數(shù)方式,計數(shù)初值設(shè)為FFH,當(dāng),當(dāng)P3.4引腳上引腳上的電平發(fā)生負(fù)跳變時,的電平發(fā)生負(fù)跳變時,T0計數(shù)器加計數(shù)器加1,發(fā)生溢出使,發(fā)生溢出使TF0標(biāo)志置位;然后將標(biāo)志置位;然后將T0改變改變?yōu)闉?00us定時工作方式定時工作方式,并使,并使P1.0輸出由輸出由1變?yōu)樽優(yōu)?。當(dāng)。當(dāng)T0定時時間到,產(chǎn)生溢出,定時時間到,產(chǎn)生溢出,使使P1.0恢復(fù)輸出高電平,同時恢復(fù)輸出高電平,同時T0恢復(fù)外部計數(shù)工作方式?;謴?fù)外部計數(shù)工作方式。第五章 8051單片機的定時器/計數(shù)器32 ORG 0000H LJMP MAIN ORG 0030HMAIN:MOV TMOD,#06H
35、MOV TH0,#0FFH MOV TL0,#0FFH SETS TR0LOOP1: JBC TF0,PTF01 SJMP LOOP1PTF01: CLR TR0 MOV TMOD,#02H MOV TH0,#06H MOV TL0,#06H CLR P1.0 SETB TR0LOOP2: JBC TF0,PTF02 SJMP LOOP2PTF02: SETB P1.0 CLR TR0 SJMP MAIN END;復(fù)位地址;復(fù)位地址;跳轉(zhuǎn)到主程序;跳轉(zhuǎn)到主程序;主程序入口地址;主程序入口地址;T0: 8位外部計數(shù)方式位外部計數(shù)方式;寫入;寫入T0計數(shù)初值計數(shù)初值;寫入;寫入T0計數(shù)初值計數(shù)初值
36、;啟動;啟動T0計數(shù)計數(shù):查詢查詢T0溢出標(biāo)志溢出標(biāo)志;停止計數(shù)停止計數(shù);改變改變T0為為8位定時方式位定時方式;寫入;寫入T0定時初值定時初值;P1.0輸出低電平輸出低電平;啟動;啟動T0定時定時500us;查詢查詢T0溢出標(biāo)志溢出標(biāo)志;P1.0輸出高電平輸出高電平;停止計數(shù);停止計數(shù)第第6章章單片機的串行口單片機的串行口原理及應(yīng)用原理及應(yīng)用 第五章 8051單片機的定時器/計數(shù)器34問題 2什么叫什么叫波特率波特率?它反映的是什么?它與時鐘頻率是相?它反映的是什么?它與時鐘頻率是相同的嗎?同的嗎?3. 8051單片機的串行口單片機的串行口有哪幾種工作方式有哪幾種工作方式?各有什么特點?各有
37、什么特點和功能?和功能?1. 8051單片機與串行口單片機與串行口相關(guān)的特殊功能寄存器相關(guān)的特殊功能寄存器有哪幾個?有哪幾個?說明它們各個位的功能意義。說明它們各個位的功能意義。第五章 8051單片機的定時器/計數(shù)器35 并行通信方式與串行通信方式并行通信方式與串行通信方式 并行通信并行通信 在數(shù)據(jù)傳輸時,如果一個在數(shù)據(jù)傳輸時,如果一個數(shù)據(jù)數(shù)據(jù)編碼字符的編碼字符的所有各位都同時發(fā)送所有各位都同時發(fā)送、并排傳輸,又同時被接收,則將這種傳送方式稱為并排傳輸,又同時被接收,則將這種傳送方式稱為并行傳送并行傳送方式。方式。特點:傳送速度快、效率高。數(shù)據(jù)線多,成本高。特點:傳送速度快、效率高。數(shù)據(jù)線多,
38、成本高。 串行通信串行通信 在數(shù)據(jù)傳輸時,數(shù)據(jù)編碼字符的所有各位不是同時發(fā)送,而是按在數(shù)據(jù)傳輸時,數(shù)據(jù)編碼字符的所有各位不是同時發(fā)送,而是按一定順序,一定順序,一位接著一位在信道中被發(fā)送和接收一位接著一位在信道中被發(fā)送和接收,則將這種傳送方,則將這種傳送方式稱為串行傳送方式。式稱為串行傳送方式。特點:成本低,但速度慢。特點:成本低,但速度慢。6.1串行通信方式串行通信方式第五章 8051單片機的定時器/計數(shù)器362 異步傳輸和同步傳輸異步傳輸和同步傳輸 異步傳輸異步傳輸 異步傳輸以一個字(或稱字符)為單位進行數(shù)據(jù)傳輸,每個字異步傳輸以一個字(或稱字符)為單位進行數(shù)據(jù)傳輸,每個字符都用起始位、停
39、止位包裝起來,符都用起始位、停止位包裝起來,在字符間允許有長短不一的間隙在字符間允許有長短不一的間隙(空閑位)空閑位)。 一個字符由四個部分組成:起始位、數(shù)據(jù)位、奇偶校驗位和停一個字符由四個部分組成:起始位、數(shù)據(jù)位、奇偶校驗位和停止位。起始位為止位。起始位為“0”信號,信號, 起始位后面緊跟著的是數(shù)據(jù)位,它一般起始位后面緊跟著的是數(shù)據(jù)位,它一般是是8位,奇偶校驗位只占一位,位,奇偶校驗位只占一位, 停止位用來表征字符的結(jié)束,它一停止位用來表征字符的結(jié)束,它一定是定是“1” ,停止位可以是,停止位可以是1位或位或2位。位。第五章 8051單片機的定時器/計數(shù)器373. 波特率波特率 波特率表示串
40、行通信時波特率表示串行通信時每秒鐘傳送每秒鐘傳送”位位” 的數(shù)目的數(shù)目,比如,比如1s傳送傳送1bit,就是,就是1波特。即波特。即1波特波特1bit/s (位位/秒秒) 串行通信常用的標(biāo)準(zhǔn)波特率在串行通信常用的標(biāo)準(zhǔn)波特率在RS-232C標(biāo)準(zhǔn)中已有規(guī)定,如波特標(biāo)準(zhǔn)中已有規(guī)定,如波特率為率為600、1200、2400、4800、9600、19200等等。等等。 假若數(shù)據(jù)傳送速率為假若數(shù)據(jù)傳送速率為120字符字符/s,而每一個字符幀已規(guī)定為,而每一個字符幀已規(guī)定為10個數(shù)個數(shù)據(jù)位,則傳輸速率為據(jù)位,則傳輸速率為120101200bit/s,即波特率為,即波特率為1200。 同步傳輸同步傳輸 同步傳
41、輸用來對數(shù)據(jù)塊進行傳輸,一個數(shù)據(jù)塊中包含著許多連同步傳輸用來對數(shù)據(jù)塊進行傳輸,一個數(shù)據(jù)塊中包含著許多連續(xù)的字符,續(xù)的字符,在字符之間沒有空閑在字符之間沒有空閑。第五章 8051單片機的定時器/計數(shù)器384 單工方式、半雙工方式、全雙工方式單工方式、半雙工方式、全雙工方式 單工方式單工方式 信號信號(不包括聯(lián)絡(luò)信號不包括聯(lián)絡(luò)信號) 在信道中在信道中只能沿一個方向傳送只能沿一個方向傳送,而不能,而不能沿相反方向傳送的工作方式稱為單工方式。沿相反方向傳送的工作方式稱為單工方式。 半雙工方式半雙工方式 通信的雙方均具有發(fā)送和接收信息的能力,信道也具有雙向傳通信的雙方均具有發(fā)送和接收信息的能力,信道也具
42、有雙向傳輸性能,但是,輸性能,但是,通信的任何一方都不能同時既發(fā)送信息又接收信息通信的任何一方都不能同時既發(fā)送信息又接收信息,即在指定的時刻,只能沿某一個方向傳送信息。這樣的傳送方式稱即在指定的時刻,只能沿某一個方向傳送信息。這樣的傳送方式稱為半雙工方式。半雙工方式大多采用雙線制。為半雙工方式。半雙工方式大多采用雙線制。 全雙工方式全雙工方式 若信號在通信雙方之間沿兩個方向同時傳送,任何一方在若信號在通信雙方之間沿兩個方向同時傳送,任何一方在同一時同一時刻既能發(fā)送又能接收信息刻既能發(fā)送又能接收信息,這樣的方式稱為全雙工方式。,這樣的方式稱為全雙工方式。 第五章 8051單片機的定時器/計數(shù)器3
43、9 80518051通過通過RXDRXD(P3P30 0)引腳、)引腳、TXDTXD(P3P31 1)引腳輸入、輸出,)引腳輸入、輸出,與外界通信。與外界通信。內(nèi)部有一個通用異步接收發(fā)送器內(nèi)部有一個通用異步接收發(fā)送器(UART)(UART),及,及波特率波特率發(fā)生器發(fā)生器。 UARTUART由由同步移位寄存器、接收緩沖器(同步移位寄存器、接收緩沖器(SBUF)和發(fā)送緩沖)和發(fā)送緩沖器(器(SBUF)組成)組成它主要完成把數(shù)據(jù)進行串、并行的轉(zhuǎn)換它主要完成把數(shù)據(jù)進行串、并行的轉(zhuǎn)換。8051串行口基本結(jié)構(gòu)主要由兩大部分組成。串行口基本結(jié)構(gòu)主要由兩大部分組成。 波特率發(fā)生器:波特率發(fā)生器: 主要由主要由T1及內(nèi)部的一些控制開關(guān)和分頻器所組成。及內(nèi)部的一些控制開關(guān)和分頻器所組成。它提供串它提供串行口的時鐘信號為行口的時鐘信號為 TXCLOCK(發(fā)送時鐘)和(發(fā)送時鐘)和 XCLOCK(接(接收時鐘)。收時鐘)。 串行口的內(nèi)部串行口的內(nèi)部6.2串行口的工作方式與控制串行口的工作方式與控制第五章 8051
溫馨提示
- 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年度新能源汽車出口產(chǎn)品購銷合同范本4篇
- 2025年度棗樹種植基地綠色認(rèn)證與市場拓展合同4篇
- 2025年度體育場館場地租賃合同終止及運營權(quán)轉(zhuǎn)讓協(xié)議3篇
- 2025年度體育用品代理銷售與售后服務(wù)協(xié)議4篇
- 2024通信信息保密協(xié)議1
- 2025年度智能化廠房整體轉(zhuǎn)讓合同書3篇
- 2024-2030年中國RNA聚合酶行業(yè)市場全景監(jiān)測及投資策略研究報告
- 2025年度互聯(lián)網(wǎng)數(shù)據(jù)中心服務(wù)合同模板2篇
- 2025不銹鋼管道系統(tǒng)安裝與維護服務(wù)合同3篇
- 2024運輸公司車輛全面保險合同6篇
- 大唐電廠采購合同范例
- 國潮風(fēng)中國風(fēng)2025蛇年大吉蛇年模板
- GB/T 18724-2024印刷技術(shù)印刷品與印刷油墨耐各種試劑性的測定
- IEC 62368-1標(biāo)準(zhǔn)解讀-中文
- 15J403-1-樓梯欄桿欄板(一)
- 2024年中考語文名句名篇默寫分類匯編(解析版全國)
- 新煤礦防治水細(xì)則解讀
- 故障診斷技術(shù)的國內(nèi)外發(fā)展現(xiàn)狀
- 醫(yī)院領(lǐng)導(dǎo)班子集體議事決策制度
- 解讀2024年《學(xué)紀(jì)、知紀(jì)、明紀(jì)、守紀(jì)》全文課件
- 農(nóng)機維修市場前景分析
評論
0/150
提交評論