




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、單片機(jī)復(fù)位時(shí),單片機(jī)復(fù)位時(shí), TMODTMOD和和TCONTCON兩個(gè)存放器的一切位都被清兩個(gè)存放器的一切位都被清0 0。7.1 7.1 定時(shí)器定時(shí)器/ /計(jì)數(shù)器的構(gòu)造計(jì)數(shù)器的構(gòu)造任務(wù)方式存放器任務(wù)方式存放器TMODTMOD:選擇定時(shí)器:選擇定時(shí)器/ /計(jì)數(shù)器計(jì)數(shù)器T0T0、T1T1的任務(wù)方式和任務(wù)方式的任務(wù)方式和任務(wù)方式; ;控制存放器控制存放器TCONTCON:控制:控制T0T0、T1T1的啟動(dòng)和停頓計(jì)數(shù),的啟動(dòng)和停頓計(jì)數(shù),同時(shí)包含了同時(shí)包含了T0T0、T1T1的形狀。的形狀。/INT0 /INT1P3.2 P3.3單片機(jī)復(fù)位時(shí),單片機(jī)復(fù)位時(shí), TMODTMOD和和TCONTCON兩個(gè)存放
2、器的一切位都被清兩個(gè)存放器的一切位都被清0 0。7.1 7.1 定時(shí)器定時(shí)器/ /計(jì)數(shù)器的構(gòu)造計(jì)數(shù)器的構(gòu)造任務(wù)方式存放器任務(wù)方式存放器TMODTMOD:選擇定時(shí)器:選擇定時(shí)器/ /計(jì)數(shù)器計(jì)數(shù)器T0T0、T1T1的任務(wù)方式和的任務(wù)方式和任務(wù)方式任務(wù)方式; ;控制存放器控制存放器TCONTCON:控制:控制T0T0、T1T1的啟動(dòng)和停頓計(jì)數(shù),同時(shí)包含了的啟動(dòng)和停頓計(jì)數(shù),同時(shí)包含了T0T0、T1T1的形狀。的形狀。88H89H8AH8CH8BH8DH/INT0 /INT1P3.2 P3.37.1.1 7.1.1 定時(shí)器定時(shí)器/ /計(jì)數(shù)器控制存放器計(jì)數(shù)器控制存放器TCONTCONT1溢出中斷標(biāo)志溢出中
3、斷標(biāo)志:1,有懇求有懇求;0,無(wú)懇求無(wú)懇求; T1運(yùn)轉(zhuǎn)控制位運(yùn)轉(zhuǎn)控制位:1,啟動(dòng)啟動(dòng)T1;0,封鎖封鎖T1; T0溢出中斷標(biāo)志溢出中斷標(biāo)志:1,有懇求有懇求;0,無(wú)懇求無(wú)懇求; T0運(yùn)轉(zhuǎn)控制位運(yùn)轉(zhuǎn)控制位:1,啟動(dòng)啟動(dòng)T0; 0,封鎖封鎖T0 /INT0觸發(fā)方式觸發(fā)方式:1,下降沿引起下降沿引起;0,低電平引起低電平引起/INT0中斷懇求標(biāo)志位中斷懇求標(biāo)志位1,有懇求有懇求;0,無(wú)懇求無(wú)懇求;/INT1觸發(fā)方式觸發(fā)方式:1,下降沿引起下降沿引起;0,低電平引起低電平引起/INT1中斷懇求標(biāo)志位中斷懇求標(biāo)志位1,有懇求有懇求;0,無(wú)懇求無(wú)懇求; 低低4 4位與外部中斷有關(guān),已引見。高位與外部中斷有
4、關(guān),已引見。高4 4位的功能如下:位的功能如下: (1) TF0 (1) TF0 、 TF1 TF1計(jì)數(shù)溢出標(biāo)志位計(jì)數(shù)溢出標(biāo)志位 當(dāng)啟動(dòng)當(dāng)啟動(dòng)T0T0計(jì)數(shù)后,定時(shí)器計(jì)數(shù)后,定時(shí)器/ /計(jì)數(shù)器計(jì)數(shù)器T0T0從初值開場(chǎng)加從初值開場(chǎng)加1 1計(jì)數(shù),計(jì)數(shù),當(dāng)最高位產(chǎn)生溢出時(shí),由硬件置當(dāng)最高位產(chǎn)生溢出時(shí),由硬件置“1 1TF0TF0,向,向CPUCPU懇求中斷,懇求中斷,CPUCPU呼應(yīng)呼應(yīng)TF0TF0中斷時(shí),由硬件自動(dòng)清中斷時(shí),由硬件自動(dòng)清“0 0TF0TF0,TF0TF0也可由軟件查也可由軟件查詢,查詢后由軟件清詢,查詢后由軟件清0 0 。(2) TR0 (2) TR0 、 TR1 TR1計(jì)數(shù)運(yùn)轉(zhuǎn)控制
5、位計(jì)數(shù)運(yùn)轉(zhuǎn)控制位 1 1:?jiǎn)?dòng)定時(shí)器:?jiǎn)?dòng)定時(shí)器/ /計(jì)數(shù)器任務(wù)計(jì)數(shù)器任務(wù) 0 0:停頓定時(shí)器:停頓定時(shí)器/ /計(jì)數(shù)器任務(wù)計(jì)數(shù)器任務(wù) 由軟件置位由軟件置位/ /復(fù)位,即由軟件置復(fù)位,即由軟件置“1 1或或“0 0。7.1.2 7.1.2 任務(wù)方式存放器任務(wù)方式存放器TMODTMODM1 M0 : 任務(wù)方式選擇位任務(wù)方式選擇位計(jì)數(shù)器方式和定時(shí)器方式選擇位計(jì)數(shù)器方式和定時(shí)器方式選擇位:0:定時(shí)器方式:定時(shí)器方式; 1:計(jì)數(shù)器方式。:計(jì)數(shù)器方式。門控位門控位:1,翻開翻開;0,封鎖封鎖 0 0 方式方式0 0 1 方式方式1 1 0 方式方式2 M1 M0 : 任務(wù)方式選擇位任務(wù)方式選擇位 0 0
6、方式方式0 0 1 方式方式1 1 0 方式方式2 1 1 方式方式3計(jì)數(shù)器方式和定時(shí)器方式選擇位計(jì)數(shù)器方式和定時(shí)器方式選擇位:0:定時(shí)器方式:定時(shí)器方式; 1:計(jì)數(shù)器方式。:計(jì)數(shù)器方式。門控位門控位:1,翻開翻開;0,封鎖封鎖2)M1 M02)M1 M0任務(wù)方式選擇位任務(wù)方式選擇位 M1 M0 M1 M0 工工 作作 模模 式式 0 0 0 0 方式方式0 0,1313位定時(shí)器位定時(shí)器/ /計(jì)數(shù)器計(jì)數(shù)器 0 1 0 1方式方式1 1,1616位定時(shí)器位定時(shí)器/ /計(jì)數(shù)器計(jì)數(shù)器 1 0 1 0 方式方式2 2,8 8位常數(shù)自動(dòng)重新裝載位常數(shù)自動(dòng)重新裝載 1 1 1 1 方式方式3 3,僅適用于
7、,僅適用于T0T0,T0T0分成兩個(gè)分成兩個(gè)8 8位計(jì)數(shù)器,位計(jì)數(shù)器,T1T1停頓計(jì)數(shù)。停頓計(jì)數(shù)。 8 8位分為兩組,高位分為兩組,高4 4位控制位控制T1T1,低,低4 4位控制位控制T0T0。1 1GATEGATE門控位門控位 0 0:以運(yùn)轉(zhuǎn)控制位:以運(yùn)轉(zhuǎn)控制位TRXTRXX=0,1X=0,1來(lái)啟動(dòng)定時(shí)器來(lái)啟動(dòng)定時(shí)器/ /計(jì)數(shù)器運(yùn)轉(zhuǎn)。計(jì)數(shù)器運(yùn)轉(zhuǎn)。1 1:用外中斷引腳:用外中斷引腳(/INT0(/INT0或或/INT1)/INT1)上的高電平來(lái)啟動(dòng)定時(shí)器上的高電平來(lái)啟動(dòng)定時(shí)器/ /計(jì)數(shù)器運(yùn)轉(zhuǎn)計(jì)數(shù)器運(yùn)轉(zhuǎn)TRX=1TRX=1:X=0,1X=0,1。(3) C/T(3) C/T* *計(jì)數(shù)器方式和定
8、時(shí)器方式選擇位計(jì)數(shù)器方式和定時(shí)器方式選擇位 0 0:定時(shí)器方式。:定時(shí)器方式。 1 1:計(jì)數(shù)器方式。:計(jì)數(shù)器方式。7.2 7.2 定時(shí)器定時(shí)器/ /計(jì)數(shù)器的計(jì)數(shù)器的4 4種任務(wù)方式種任務(wù)方式 7.2.1 7.2.1 方式方式0 0 M1M1、M0M0為為00 00 ,定時(shí)器,定時(shí)器/ /計(jì)數(shù)器的框圖:計(jì)數(shù)器的框圖: 為為13位的定時(shí)器位的定時(shí)器/計(jì)數(shù)器計(jì)數(shù)器 ,C/T* 位控制的電子開關(guān)決議了定時(shí)器位控制的電子開關(guān)決議了定時(shí)器/計(jì)數(shù)器的任務(wù)方式。計(jì)數(shù)器的任務(wù)方式。 0:電子開關(guān)打在上面,為定時(shí)器任務(wù)方式,對(duì)機(jī)器周期計(jì)數(shù),計(jì)數(shù)信號(hào)頻率:電子開關(guān)打在上面,為定時(shí)器任務(wù)方式,對(duì)機(jī)器周期計(jì)數(shù),計(jì)數(shù)信號(hào)
9、頻率fosc/12。 1:電子開關(guān)打在下面,為計(jì)數(shù)器任務(wù)方式,計(jì)數(shù)脈沖為:電子開關(guān)打在下面,為計(jì)數(shù)器任務(wù)方式,計(jì)數(shù)脈沖為P3.4、P3.5引腳上的外部輸入引腳上的外部輸入脈沖,當(dāng)引腳上發(fā)生負(fù)跳變時(shí),計(jì)數(shù)器加脈沖,當(dāng)引腳上發(fā)生負(fù)跳變時(shí),計(jì)數(shù)器加1,計(jì)數(shù)信號(hào)頻率不超越,計(jì)數(shù)信號(hào)頻率不超越fosc/24。 GATE位的形狀決議定時(shí)器位的形狀決議定時(shí)器/計(jì)數(shù)器運(yùn)轉(zhuǎn)控制取決于計(jì)數(shù)器運(yùn)轉(zhuǎn)控制取決于TRX一個(gè)條件還是一個(gè)條件還是TRX和引腳這兩和引腳這兩個(gè)條件。個(gè)條件。 啟動(dòng)計(jì)數(shù)方式:?jiǎn)?dòng)計(jì)數(shù)方式:非門控方式:非門控方式:當(dāng)當(dāng)GATE0, 控制權(quán)由控制權(quán)由 TRx 決議決議TRx1 計(jì)數(shù)開場(chǎng)計(jì)數(shù)開場(chǎng)TRx
10、0 計(jì)數(shù)停頓計(jì)數(shù)停頓門控方式:門控方式:當(dāng)當(dāng)GATE1、TRx1 控制權(quán)由控制權(quán)由 INTx 決議決議INTx1 計(jì)數(shù)開場(chǎng)計(jì)數(shù)開場(chǎng)INTx 0 計(jì)數(shù)停頓計(jì)數(shù)停頓7.2.2 7.2.2 方式方式1 1 M1 M1、M0M0為為0101,1616位的計(jì)數(shù)器。位的計(jì)數(shù)器。THx8THx8位和位和TLx8TLx8位組位組成成1616位加位加1 1計(jì)數(shù)器計(jì)數(shù)器, ,最大計(jì)數(shù)脈沖個(gè)數(shù):最大計(jì)數(shù)脈沖個(gè)數(shù):1 165536(216)65536(216),最長(zhǎng)定時(shí)時(shí)間最長(zhǎng)定時(shí)時(shí)間( (晶振晶振12MHz T=112MHz T=1s) s):1 1s s 6553665536T= 65.54msT= 65.54m
11、s啟動(dòng)計(jì)數(shù)方式:?jiǎn)?dòng)計(jì)數(shù)方式:非門控方式:當(dāng)非門控方式:當(dāng)GATE0, 控制權(quán)由控制權(quán)由 TRx 決議決議 TRx1 計(jì)數(shù)開場(chǎng)計(jì)數(shù)開場(chǎng) TRx 0 計(jì)數(shù)停頓計(jì)數(shù)停頓門控方式:當(dāng)門控方式:當(dāng)GATE1、TRx1 控制權(quán)由控制權(quán)由 /INTx 決議決議 /INTx1 計(jì)數(shù)開場(chǎng)計(jì)數(shù)開場(chǎng) /INTx 0 計(jì)數(shù)停頓計(jì)數(shù)停頓 方式方式2 2為自動(dòng)恢復(fù)初值的初值自動(dòng)裝入為自動(dòng)恢復(fù)初值的初值自動(dòng)裝入8 8位定時(shí)器位定時(shí)器/ /計(jì)數(shù)器,計(jì)數(shù)器,TLXTLX作為常數(shù)緩沖器,當(dāng)作為常數(shù)緩沖器,當(dāng)TLXTLX計(jì)數(shù)溢出時(shí),在置計(jì)數(shù)溢出時(shí),在置“1 1溢出標(biāo)志溢出標(biāo)志TFXTFX的同時(shí),還自動(dòng)的將的同時(shí),還自動(dòng)的將THX
12、THX中的初值送至中的初值送至TLXTLX,使,使TLXTLX從初值開場(chǎng)重新計(jì)數(shù)。定時(shí)器從初值開場(chǎng)重新計(jì)數(shù)。定時(shí)器/ /計(jì)數(shù)器的方式計(jì)數(shù)器的方式2 2任務(wù)過(guò)程任務(wù)過(guò)程如下圖如下圖(X=0,1)(X=0,1)。7.2.3 7.2.3 方式方式 2 2 計(jì)數(shù)滿后自動(dòng)裝入計(jì)數(shù)初值。計(jì)數(shù)滿后自動(dòng)裝入計(jì)數(shù)初值。M1M1、M0=10M0=10,等效框,等效框圖如下:圖如下: 省去用戶軟件中重裝初值的程序。準(zhǔn)確確省去用戶軟件中重裝初值的程序。準(zhǔn)確確實(shí)定定時(shí)時(shí)間。實(shí)定定時(shí)時(shí)間。7.2.4 7.2.4 方式方式3 3 只適用于定時(shí)器只適用于定時(shí)器/ /計(jì)數(shù)器計(jì)數(shù)器T0 T0 ,T1T1不能任務(wù)在方式不能任務(wù)在方
13、式3 3。T1T1為為方式方式3 3時(shí)相當(dāng)于時(shí)相當(dāng)于TR1=0TR1=0,停頓計(jì)數(shù)此時(shí),停頓計(jì)數(shù)此時(shí)T1T1可用來(lái)作串行可用來(lái)作串行口波特率產(chǎn)生器。口波特率產(chǎn)生器。 任務(wù)方式任務(wù)方式3 3下的下的T0:T0: T0 T0分為兩個(gè)獨(dú)立的分為兩個(gè)獨(dú)立的8 8位定時(shí)位定時(shí)/ /計(jì)數(shù)器計(jì)數(shù)器:TL0:TL0和和TH0TH0。TL0TL0運(yùn)用運(yùn)用T0T0的形狀控制位的形狀控制位C/TC/T* *、GATEGATE、TR0TR0,而,而TH0TH0被固定為一被固定為一個(gè)個(gè)8 8位定時(shí)器不能作外部計(jì)數(shù)方式,并運(yùn)用定時(shí)器位定時(shí)器不能作外部計(jì)數(shù)方式,并運(yùn)用定時(shí)器T1T1的形狀控制位的形狀控制位TR1TR1和和T
14、F1TF1,同時(shí)占用定時(shí)器,同時(shí)占用定時(shí)器T1T1的中斷懇求源的中斷懇求源TF1TF1。 各引腳與各引腳與T0T0的邏輯關(guān)系如下圖。的邏輯關(guān)系如下圖。 * T0任務(wù)在方式任務(wù)在方式3下下T1的各種任務(wù)方式的各種任務(wù)方式 T0處于方式處于方式3時(shí),時(shí), T1可定為方式可定為方式0、方式、方式1和方式和方式2,用來(lái)作為串行口的波特率發(fā)生器,或不需求中斷的用來(lái)作為串行口的波特率發(fā)生器,或不需求中斷的場(chǎng)所。場(chǎng)所。 最常用的是方式最常用的是方式2 ,用來(lái)作為串行口的波特率發(fā)生,用來(lái)作為串行口的波特率發(fā)生器。器。 設(shè)置設(shè)置T1為方式為方式0、方式、方式1和方式和方式2就自動(dòng)運(yùn)轉(zhuǎn)。就自動(dòng)運(yùn)轉(zhuǎn)。 設(shè)置設(shè)置T1
15、為方式為方式3就停頓工。就停頓工。例:例:T1任務(wù)在方式任務(wù)在方式2。 * *運(yùn)轉(zhuǎn)中讀定時(shí)器運(yùn)轉(zhuǎn)中讀定時(shí)器/ /計(jì)數(shù)器計(jì)數(shù)器 在讀取運(yùn)轉(zhuǎn)中的定時(shí)器在讀取運(yùn)轉(zhuǎn)中的定時(shí)器/ /計(jì)數(shù)器時(shí),需求特別加以留計(jì)數(shù)器時(shí),需求特別加以留意,假設(shè)恰好出現(xiàn)意,假設(shè)恰好出現(xiàn)TLXTLX溢出向溢出向THXTHX進(jìn)位的情況,那么進(jìn)位的情況,那么讀得的讀得的TLXTLX值就完全不對(duì)了。同樣,先讀值就完全不對(duì)了。同樣,先讀THXTHX再讀再讀TLXTLX也能夠出錯(cuò)。也能夠出錯(cuò)。 方法:先讀方法:先讀THXTHX,后讀,后讀TLXTLX,再讀,再讀THXTHX。假設(shè)兩次讀得。假設(shè)兩次讀得THXTHX一樣,那么讀得一樣,那么讀
16、得的內(nèi)容正確。假設(shè)前后兩次讀得的的內(nèi)容正確。假設(shè)前后兩次讀得的THXTHX有變化,有變化,那么再反復(fù)上述過(guò)程,這次反復(fù)讀得的內(nèi)容就應(yīng)是那么再反復(fù)上述過(guò)程,這次反復(fù)讀得的內(nèi)容就應(yīng)是正確的。下面是有關(guān)的程序,讀得的正確的。下面是有關(guān)的程序,讀得的TH0TH0和和TL0TL0放置在放置在R1R1和和R0R0內(nèi)。內(nèi)。 ORG 300H ORG 300HRDTIME:MOV A,TH0RDTIME:MOV A,TH0;讀;讀TH0TH0 MOV R0,TL0MOV R0,TL0;讀;讀TL0TL0 CJNE A,TH0,RDTIME CJNE A,TH0,RDTIME ;比較;比較2 2次讀得的次讀得的
17、TH0TH0, ,不相等那么反復(fù)不相等那么反復(fù) MOV R1,AMOV R1,A;TH0TH0送入送入R1R1中中 RET RET 7.3 定時(shí)器定時(shí)器/計(jì)數(shù)器運(yùn)用中的兩個(gè)問(wèn)題計(jì)數(shù)器運(yùn)用中的兩個(gè)問(wèn)題* * 定時(shí)器定時(shí)器/ /計(jì)數(shù)器對(duì)輸入信號(hào)的要求計(jì)數(shù)器對(duì)輸入信號(hào)的要求 外部輸入的計(jì)數(shù)脈沖的最高頻率為系統(tǒng)振蕩器頻率的外部輸入的計(jì)數(shù)脈沖的最高頻率為系統(tǒng)振蕩器頻率的1/241/24,例如選用例如選用12MHz12MHz頻率的晶體,那么可輸入頻率的晶體,那么可輸入500KHz500KHz的外部的外部脈沖。脈沖。 為了確保某一給定的電平在變化之前能被采樣一次,那么為了確保某一給定的電平在變化之前能被采樣
18、一次,那么這一電平至少要堅(jiān)持一個(gè)機(jī)器周期。當(dāng)一個(gè)機(jī)器周期采樣這一電平至少要堅(jiān)持一個(gè)機(jī)器周期。當(dāng)一個(gè)機(jī)器周期采樣為高電平,另一個(gè)機(jī)器周期采樣為低電平,計(jì)時(shí)器加為高電平,另一個(gè)機(jī)器周期采樣為低電平,計(jì)時(shí)器加1. 1.故對(duì)故對(duì)外部輸入信號(hào)的根本要求如下圖,圖中外部輸入信號(hào)的根本要求如下圖,圖中TcyTcy為機(jī)器周期。為機(jī)器周期。0 0:制止中斷;:制止中斷;1 1:允許中斷。:允許中斷。 中斷允許存放器中斷允許存放器IE IE # # 中斷控制中斷控制中斷優(yōu)先級(jí)存放器中斷優(yōu)先級(jí)存放器IP1 1:高優(yōu)先級(jí)中斷;:高優(yōu)先級(jí)中斷;0 0:低優(yōu)先級(jí)中斷。:低優(yōu)先級(jí)中斷。# # 定時(shí)器定時(shí)器/ /計(jì)數(shù)器控制存
19、放器計(jì)數(shù)器控制存放器TCONTCONT1溢出中斷標(biāo)志溢出中斷標(biāo)志:1,有懇求有懇求;0,無(wú)懇求無(wú)懇求; T1運(yùn)轉(zhuǎn)控制位運(yùn)轉(zhuǎn)控制位:1,啟動(dòng)啟動(dòng)T1;0,封鎖封鎖T1; T0溢出中斷標(biāo)志溢出中斷標(biāo)志:1,有懇求有懇求;0,無(wú)懇求無(wú)懇求; T0運(yùn)轉(zhuǎn)控制位運(yùn)轉(zhuǎn)控制位:1,啟動(dòng)啟動(dòng)T0; 0,封鎖封鎖T0 /INT0觸發(fā)方式觸發(fā)方式:1,下降引起下降引起;0,低電平引起低電平引起/INT0中斷懇求標(biāo)志位中斷懇求標(biāo)志位1,有懇求有懇求;0,無(wú)懇求無(wú)懇求;/INT1觸發(fā)方式觸發(fā)方式:1,下降引起下降引起;0,低電平引起低電平引起/INT1中斷懇求標(biāo)志位中斷懇求標(biāo)志位1,有懇求有懇求;0,無(wú)懇求無(wú)懇求;#
20、# 任務(wù)方式存放器任務(wù)方式存放器TMODTMODM1 M0 : 任務(wù)方式選擇位任務(wù)方式選擇位計(jì)數(shù)器方式和定時(shí)器方式選擇位計(jì)數(shù)器方式和定時(shí)器方式選擇位:0:定時(shí)器方式:定時(shí)器方式; 1:計(jì)數(shù)器方式。:計(jì)數(shù)器方式。門控位門控位:1,翻開翻開;0,封鎖封鎖 0 0 方式方式0 0 1 方式方式1 1 0 方式方式2 M1 M0 : 任務(wù)方式選擇位任務(wù)方式選擇位 0 0 方式方式0 0 1 方式方式1 1 0 方式方式2 1 1 方式方式3計(jì)數(shù)器方式和定時(shí)器方式選擇位計(jì)數(shù)器方式和定時(shí)器方式選擇位:0:定時(shí)器方式:定時(shí)器方式; 1:計(jì)數(shù)器方式。:計(jì)數(shù)器方式。門控位門控位:1,翻開翻開;0,封鎖封鎖7.4
21、 7.4 定時(shí)器定時(shí)器/ /計(jì)數(shù)器的運(yùn)用計(jì)數(shù)器的運(yùn)用 6.4.1 計(jì)算時(shí)間常數(shù)計(jì)算時(shí)間常數(shù)X(計(jì)數(shù)初值計(jì)數(shù)初值) 運(yùn)用定時(shí)器/計(jì)數(shù)器任務(wù)之前,先確定任務(wù)方式和任務(wù)方式,正確設(shè)置IP, IE, TCON, TMOD, 對(duì)定時(shí)器/計(jì)數(shù)器初始化,并將初值送入定時(shí)器/計(jì)數(shù)器。計(jì)數(shù)功能:X= 2n -計(jì)數(shù)值 , X=模-計(jì)數(shù)值 定時(shí)功能: 2n-X 12 / fosc = T , 模-X TM = T X= 2n - T fosc /12 , X= 模 - T fosc /12 X:計(jì)數(shù)初值; TM:機(jī)器周期; T:定時(shí)時(shí)間s; 晶振頻率: foscHZ;n:8,13,16 方式0: 2n = 213=
22、8192 X= 1FF16 - T fosc /12 方式1: 2n = 216=65536 X= FFF16 - T fosc /12 方式2: 2n = 28=256 X= F16 - T fosc /12 方式3: 2n = 28=256 例: 單片機(jī)晶振fosc=6MHZ,要求由P1.0端輸出一個(gè)周期為500us的方波信號(hào),方波周期由定時(shí)器T1確定,采用查詢方法。(參考 ORG 100H MOV TMOD,#00H ;設(shè)置T1的定時(shí)方式0 MOV TH1,#0FCH ;設(shè)置計(jì)數(shù)初值 MOV TL1,#03H MOV IE,#00H ;制止中斷 SETB TR1 ;啟動(dòng)定時(shí)器LOOP:
23、JBC TF1,LOOP1 ;查詢計(jì)數(shù)溢出位TF1后清0 AJMP LOOPLOOP1: MOV TH1,#0FCH ;重新置計(jì)數(shù)初值 MOV TL1,#03H CLR TF1 ;計(jì)數(shù)溢出標(biāo)志位清零(可省) CPL P1.0 ;輸出值取反 AJMP LOOP END解:周期為解:周期為500us的方波,其脈寬為的方波,其脈寬為250us,故定時(shí)值,故定時(shí)值T=250us。 采用方式采用方式0:晶振頻率:晶振頻率:fosc=6MHZ;X=模模- T fosc /12 T fosc /12 =25010-6 6 106 /12 =125D=7DH X= 1FF16-7DH=1F83H=111111
24、0000011B TH1=FCH TL1=00000011B=03H例:例: 單片機(jī)晶振單片機(jī)晶振fosc=6MHZ,用定時(shí)器用定時(shí)器T1的定時(shí)方式的定時(shí)方式1,以中斷方式由,以中斷方式由P1.0端端輸出一個(gè)周期為輸出一個(gè)周期為500us的方波信號(hào)。的方波信號(hào)。 ORG 2000HMAIN: MOV TMOD,#10H ;設(shè)置定時(shí)器T1的定時(shí)方式1 MOV TH1,#0FFH ; 設(shè)置計(jì)數(shù)初值 MOV TL1,#83H SETB EA ;開中斷 SETB ET1 ;允許定時(shí)器T1 中斷LOOP: SETB TR1 ;定時(shí)器T1 開場(chǎng)計(jì)數(shù)HERE: SJMP $ ;等待中斷中斷效力程序: ORG
25、 001BH LJMP SOFTIM ORG 2400hSOFTIM:MOV TH1,#0FFH ;重設(shè)計(jì)數(shù)初值 MOV TL1,#83H CPL P1.0 ;輸出取反 RETI解:周期為解:周期為500us的方波,其脈寬為的方波,其脈寬為250us,故定時(shí)值,故定時(shí)值T=250us。 采用方式采用方式1:晶振頻率:晶振頻率:fosc=6MHZ;X=模模- T fosc /12 T fosc /12 =25010-6 6 106 /12 =125D=7DH X= FFF16-7DH=FF83H TH1=FFH TL1=83H查詢方式的參考程序查詢方式的參考程序: : ORG 1000H ORG
26、 1000H MOV TMOD,#10H MOV TMOD,#10H ;設(shè);設(shè)置置T1T1為定時(shí)方式為定時(shí)方式1 1LOOP: MOV TH1, #0FFH LOOP: MOV TH1, #0FFH ; 設(shè)置設(shè)置計(jì)數(shù)初值計(jì)數(shù)初值 MOV TL1, #83HMOV TL1, #83H SETB SETB TR1 TR1 ;定時(shí)器;定時(shí)器T1 T1 開場(chǎng)計(jì)開場(chǎng)計(jì)數(shù)數(shù)LOOP1LOOP1:JNB TF1, LOOP1 JNB TF1, LOOP1 ;查詢;查詢TF1TF1標(biāo)志標(biāo)志 CLR CLR TF1 TF1 ;T1T1溢出,清溢出,清TF1TF1 CPL CPL P1.0 P1.0 ;P1.0P
27、1.0的形狀求的形狀求反反 SJMP LOOPSJMP LOOP END END例:例: 單片機(jī)晶振單片機(jī)晶振fosc=6MHZ, 定時(shí)器定時(shí)器T1用于產(chǎn)生用于產(chǎn)生1ms定時(shí)定時(shí),T0用于方式用于方式2計(jì)數(shù)計(jì)數(shù)方式方式,計(jì)數(shù)器初值為計(jì)數(shù)器初值為FFH。T0作為外部中斷懇求輸入線,以中斷方式由作為外部中斷懇求輸入線,以中斷方式由P1.0端端輸出一個(gè)周期為輸出一個(gè)周期為2ms的方波信號(hào)。的方波信號(hào)。 ORG 0000HRESET: AJMP MAIN ;轉(zhuǎn)主程序 ORG 0100HMAIN: MOV SP, #60H MOV TMOD, #16 ;T1定時(shí)器方式1 ;T0計(jì)數(shù)器方式2 MOV TL
28、0, #0FFH ;T0置初值 MOV TH0, #0FFH MOV TL1, #0CH ;T1置初值 MOV TH1, #0FEH CLR PSW.5 SETB ET0 ;允許T0中斷 SETB EA ;開中斷 SETB TR0 ;啟動(dòng)T0LOOP: MOV C, PSW.5 ;T0產(chǎn)生中斷了嗎? JNC LOOP SETB ET1 ;允許T1中斷 SETB TR1 ;啟動(dòng)T1HERE: AJMP HERE ORG 000BH AJMP ITOP ;轉(zhuǎn)T0中斷效力程序 ORG 140HITOP: CLR TR0 ;停頓T0計(jì)數(shù) SETB PSW.5 RETI ORG 001BH AJMP I
29、TIP ;轉(zhuǎn)T1中斷效力程序 ORG 150HITIP: MOV TL1, #0CH MOV TH1, #0FEH CPL P1.0 ;P1.0位取反 RETI例:用定時(shí)器T0的方式3,分別產(chǎn)生200us,400us的定時(shí)中斷,使晶振頻率為6MHZ的單片機(jī)的P1.0和P1.1上產(chǎn)生400us和800us的方波。參考 ORG 0000HRESET: AJMP MAIN ;轉(zhuǎn)主程序 ORG 000BH AJMP ITOP ;轉(zhuǎn)T0中斷效力程序 ORG 001BH AJMP ITIP ;轉(zhuǎn)T1中斷效力程序 ORG 0100HMAIN: MOV SP, #60H ACALL PTOM3HERE: AJ
30、MP HEREPTOM3: MOV TMOD, #03H ;T0方式3,兩 ;個(gè)8位定時(shí)器 MOV TL0, #09CH ;T0置初值 MOV TH0, #38H SETB TR0 ;啟動(dòng)TL0 SETB ET0 ;允許TL0中斷 SETB TR1 ;啟動(dòng)TH0 SETB ET1 ;允許TH0中斷 SETB EA ;全局開中斷 RETITOP: MOV TL0, #9CH CPL P1.0 RETIITIP: MOV TH0, #38H CPL P1.1 RETI門控位門控位GATEGATE的功能和運(yùn)用方法的功能和運(yùn)用方法丈量脈沖寬度丈量脈沖寬度 GATE1=1 GATE1=1時(shí),定時(shí)器時(shí),定
31、時(shí)器/ /計(jì)數(shù)器計(jì)數(shù)器T0T0,T1T1的啟動(dòng)受的啟動(dòng)受/INT0/INT0、/INT1/INT1的控制,可丈量引腳的控制,可丈量引腳/INT0/INT0P3.2)P3.2)、 /INT1 /INT1P3.3P3.3上正脈沖的寬度機(jī)器周期數(shù)。上正脈沖的寬度機(jī)器周期數(shù)。ORG 2000HMOV TMOD, #09H MOV TL0, #00HMOV TH0, #00HCLR EI ; 關(guān)中斷MOV R0, #30HHERE1: JB P3.2, HERE1; 等/INT0=0 SETB TR0 ;啟動(dòng)T0HERE2: JNB P3.2, HERE2 ;等/INT0=1HERE3: JB P3.2
32、, HERE3 ;等/INT0=0 CLR TR0 ;T0停頓任務(wù) MOV R0, TH0 ;存計(jì)數(shù)值 INC R0 , MOV R0 ,TL0 SJMP $顯示TH0、TL0計(jì)數(shù)值,即顯示脈寬有多少個(gè)機(jī)器周期。例例 利用定時(shí)器利用定時(shí)器T1T1的方式的方式2 2對(duì)外部信號(hào)計(jì)數(shù),要求每計(jì)滿對(duì)外部信號(hào)計(jì)數(shù),要求每計(jì)滿100100個(gè)數(shù),個(gè)數(shù),將將P1.0P1.0取反。自學(xué)取反。自學(xué)1 1選擇任務(wù)方式選擇任務(wù)方式 外部信號(hào)由外部信號(hào)由T1(P3.5) T1(P3.5) 腳輸入腳輸入, ,每發(fā)生一次負(fù)跳變計(jì)數(shù)器每發(fā)生一次負(fù)跳變計(jì)數(shù)器加加1 1,每輸入,每輸入100100個(gè)脈沖,計(jì)數(shù)器產(chǎn)生溢出中斷,在中
33、斷效力個(gè)脈沖,計(jì)數(shù)器產(chǎn)生溢出中斷,在中斷效力程序中將程序中將P1.0P1.0取反一次。取反一次。 T1T1任務(wù)在方式任務(wù)在方式2 2的控制字為的控制字為TMOD=60HTMOD=60H。不運(yùn)用。不運(yùn)用T0T0時(shí),時(shí),TMODTMOD的低的低4 4位可任取,但不能使位可任取,但不能使T0T0進(jìn)入方式進(jìn)入方式3 3,這里取全,這里取全0 0。2 2計(jì)算計(jì)算T1T1的初值的初值X=28-100=156D=9CHX=28-100=156D=9CH 因此,因此,TL1TL1的初值為的初值為9CH9CH,重裝初值存放器,重裝初值存放器TH1=9CHTH1=9CH3 3程序設(shè)計(jì)程序設(shè)計(jì) ORG 0000HO
34、RG 0000HLJMP MAINLJMP MAINORG 001BHORG 001BH;T1T1中斷效力程序入口中斷效力程序入口 CPL P1.0CPL P1.0;P1.0P1.0位取反位取反 RETIRETI ORG 0100HORG 0100HMAIN: MOV TMOD,#60H MAIN: MOV TMOD,#60H ;設(shè);設(shè)T1T1為方式為方式2 2計(jì)數(shù)計(jì)數(shù) MOV TL1,#9CH MOV TL1,#9CH ;T1T1置初值置初值 MOV TH1,#9CH MOV TH1,#9CH SETB EA SETB EA SETB ET1 SETB ET1 SETB TR1SETB TR
35、1 ;啟動(dòng);啟動(dòng)T1T1HERE: AJMP HEREHERE: AJMP HERE編程和運(yùn)用編程和運(yùn)用 例例 假設(shè)系統(tǒng)時(shí)鐘為假設(shè)系統(tǒng)時(shí)鐘為6MHz,編寫定時(shí)器,編寫定時(shí)器T0產(chǎn)生產(chǎn)生1秒定時(shí)的程序。參秒定時(shí)的程序。參考考1定時(shí)器定時(shí)器T0任務(wù)方式確實(shí)定任務(wù)方式確實(shí)定 方式方式1最長(zhǎng)可定時(shí)最長(zhǎng)可定時(shí)131.072ms; 選方式選方式1,每隔,每隔100ms中斷一次,中斷中斷一次,中斷10次為次為1s。 2計(jì)算計(jì)數(shù)初值計(jì)算計(jì)數(shù)初值 由于:由于:(216-X)210-6 = 10-1 所以:所以:X=15536=3CB0H 因此:因此:TH0=3CH,TL0=B0H 310次計(jì)數(shù)的實(shí)現(xiàn)次計(jì)數(shù)的實(shí)現(xiàn)
36、 對(duì)于中斷對(duì)于中斷10次計(jì)數(shù),也可用循環(huán)程序的方法實(shí)現(xiàn)。本例采用循次計(jì)數(shù),也可用循環(huán)程序的方法實(shí)現(xiàn)。本例采用循環(huán)程序法。環(huán)程序法。4程序設(shè)計(jì)程序設(shè)計(jì) 參考程序參考程序 : ORG 0000H ORG 0000HRESETRESET: LJMP MAIN LJMP MAIN ;上電,轉(zhuǎn)主程序入口;上電,轉(zhuǎn)主程序入口MAINMAIN ORG 000BH ORG 000BH ;T0T0的中斷入口的中斷入口 LJMP IT0PLJMP IT0P ;轉(zhuǎn);轉(zhuǎn)T0T0中斷處置程序中斷處置程序IT0PIT0P ORG 1000H ORG 1000H MAIN MAIN: MOV SP,#60HMOV SP,#60H;設(shè)堆棧指針;設(shè)堆棧指針 MOV B,#0AHMOV B,#0AH ;設(shè)循環(huán)次數(shù);設(shè)循環(huán)次數(shù)1010次次 MOV TMOD,#01HMOV TMOD,#01H;設(shè);設(shè)T0T0任務(wù)在方式任務(wù)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 統(tǒng)計(jì)師考試復(fù)習(xí)策略試題及答案
- 2025債務(wù)轉(zhuǎn)讓股權(quán)合同書
- 2025個(gè)人服務(wù)合同模板
- 泰國(guó)旅游行程路線
- 2025年濟(jì)南市合同備案指南
- 天津體育學(xué)院《影視文學(xué)鑒賞》2023-2024學(xué)年第二學(xué)期期末試卷
- 山東女子學(xué)院《畜牧試驗(yàn)設(shè)計(jì)與統(tǒng)計(jì)分析1》2023-2024學(xué)年第一學(xué)期期末試卷
- 山東工藝美術(shù)學(xué)院《音樂(lè)技能》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025屆四川成都青羊區(qū)外國(guó)語(yǔ)學(xué)校高考物理試題模擬題專練目錄含解析
- 湖北省竹溪一中、竹山一中等三校2024-2025學(xué)年高三全真歷史試題模擬試卷(3)含解析
- 2024年重慶兩江新區(qū)某國(guó)有企業(yè)招聘筆試真題
- 離婚協(xié)議民政局貴州安順(2025年版)
- 心臟驟停后高質(zhì)量目標(biāo)溫度管理專家共識(shí)2024
- 高校講師個(gè)人學(xué)術(shù)發(fā)展計(jì)劃
- 睪丸切除術(shù)課件
- 2025 年陜西省初中學(xué)業(yè)水平考試仿真摸底卷英語(yǔ)試卷(含解析無(wú)聽力部分)
- 職等職級(jí)設(shè)計(jì)理論與實(shí)踐
- 中醫(yī)藥生物信息學(xué)知到課后答案智慧樹章節(jié)測(cè)試答案2025年春浙江中醫(yī)藥大學(xué)
- 海姆立克急救技術(shù)操作流程及評(píng)分標(biāo)準(zhǔn)
- deepseek在科研機(jī)構(gòu)知識(shí)管理中的應(yīng)用實(shí)例
- 污水處理設(shè)施運(yùn)維服務(wù)投標(biāo)方案(技術(shù)標(biāo))
評(píng)論
0/150
提交評(píng)論