




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
《B中斷與定時(shí)》幻燈片本課件PPT僅供大家學(xué)習(xí)使用學(xué)習(xí)完請(qǐng)自行刪除,謝謝!本課件PPT僅供大家學(xué)習(xí)使用學(xué)習(xí)完請(qǐng)自行刪除,謝謝!《B中斷與定時(shí)》幻燈片本課件PPT僅供大家學(xué)習(xí)使用§5.3定時(shí)器概述§5.3.189C51定時(shí)器構(gòu)造§5.3.289C51定時(shí)器功能
單片機(jī)原理及接口技術(shù)12/26/2022§5.3定時(shí)器概述§5.3.189C51定時(shí)器構(gòu)造§5.3.189C51定時(shí)器構(gòu)造89C51定時(shí)器的構(gòu)造如所示。有兩個(gè)16位的定時(shí)器/計(jì)數(shù)器,即定時(shí)器0〔T0〕和定時(shí)器1〔T1〕。都是16位加1計(jì)數(shù)器。T0由兩個(gè)8位特殊功能存放器TH0和TL0構(gòu)成;T1由TH1和TL1構(gòu)成。
單片機(jī)原理及接口技術(shù)12/26/2022§5.3.189C51定時(shí)器構(gòu)造89C51定時(shí)器的構(gòu)造如《B中斷與定時(shí)》教學(xué)課件§5.1.280C51定時(shí)器功能每個(gè)定時(shí)器都可由軟件設(shè)置為定時(shí)工作方式或計(jì)數(shù)工作方式。由特殊功能存放器TMOD和TCON所控制。定時(shí)器工作不占用CPU時(shí)間,除非定時(shí)器/計(jì)數(shù)器溢出,才能中斷CPU的當(dāng)前操作。定時(shí)器/計(jì)數(shù)器有四種工作模式。其中模式0-2對(duì)T0和T1是一樣的,模式3對(duì)兩者不同。
單片機(jī)原理及接口技術(shù)12/26/2022§5.1.280C51定時(shí)器功能每個(gè)定時(shí)器都可由軟件設(shè)置定時(shí)工作方式定時(shí)器計(jì)數(shù)89C51片內(nèi)振蕩器輸出經(jīng)12分頻后的脈沖,即每個(gè)機(jī)器周期使定時(shí)器〔T0或T1〕的數(shù)值加1直至計(jì)滿溢出。當(dāng)80C51采用12MHz晶振時(shí),一個(gè)機(jī)器周期為1μs,計(jì)數(shù)頻率為1MHz。
單片機(jī)原理及接口技術(shù)12/26/2022定時(shí)工作方式定時(shí)器計(jì)數(shù)89C51片內(nèi)振蕩器輸出經(jīng)12分頻后的計(jì)數(shù)工作方式通過引腳T0〔P3.4〕和T1〔P3.5〕對(duì)外部脈沖信號(hào)計(jì)數(shù)。當(dāng)輸入脈沖信號(hào)產(chǎn)生由1至0的下降沿時(shí)計(jì)數(shù)器的值加1。CPU檢測(cè)一個(gè)1至0的跳變需要兩個(gè)機(jī)器周期,故最高計(jì)數(shù)頻率為振蕩頻率的1/24。為了確保某個(gè)電平在變化之前被采樣一次,要求電平保持時(shí)間至少是一個(gè)完整的機(jī)器周期。對(duì)輸入脈沖信號(hào)的根本要求如所示。
單片機(jī)原理及接口技術(shù)12/26/2022計(jì)數(shù)工作方式通過引腳T0〔P3.4〕和T1〔P3.5〕對(duì)外部§5.3.2定時(shí)器的控制
§5.3.2.1工作模式存放器TMOD§5.3.2.2控制器存放器TCON
單片機(jī)原理及接口技術(shù)12/26/2022§5.3.2定時(shí)器的控制§5.3.2.1工作模式§5.3.2.1工作模式存放器TMODTMOD用于控制T0和T1的工作模式。TMOD不能位尋址,只能用字節(jié)設(shè)置定時(shí)器的工作模式,低半字節(jié)設(shè)置T0,高半字節(jié)設(shè)置T1。89C51系統(tǒng)復(fù)位時(shí),TMOD的所有位被清0。TMOD各位的定義格式如
所示。TMOD各位定義及具體的意義歸納如所示。
單片機(jī)原理及接口技術(shù)12/26/2022§5.3.2.1工作模式存放器TMODTMOD用于控制圖6-3工作模式寄存器TMOD的位定義定時(shí)器T1定時(shí)器T0TMOD(89H)D7D6D5D4D3D2D1D0GATEC/TM1M0
單片機(jī)原理及接口技術(shù)12/26/2022GATEC/TM1M0圖6-3工作模式寄存器TMOD的位定義定時(shí)器T1定時(shí)器①
M1和M0—操作模式控制位。兩位可形成四種編碼,對(duì)應(yīng)于四種模式。表6-1M1,M0控制的四種工作模式
單片機(jī)原理及接口技術(shù)12/26/2022①M(fèi)1和M0—操作模式控制位。表6-1M1,M0控②C/T—計(jì)數(shù)器/定時(shí)器方式選擇位。C/T=0,設(shè)置為定時(shí)方式。定時(shí)器計(jì)數(shù)89C51片內(nèi)脈沖,即對(duì)機(jī)器周期計(jì)數(shù)。C/T=1,設(shè)置為計(jì)數(shù)方式。計(jì)數(shù)器的輸入來自引腳T0〔P3.4〕或T1〔P3.5〕端的外部脈沖。
單片機(jī)原理及接口技術(shù)12/26/2022②C/T—計(jì)數(shù)器/定時(shí)器方式選擇位。
③GATE—門控位。GATE=0,只要用軟件使TR0〔或TR1〕置1就可以啟動(dòng)定時(shí)器,而不管INT0〔或INT1〕的電平是高還是低。GATE=1,只有INT0〔或INT1〕引腳為高電平且由軟件使TR0〔或TR1〕置1時(shí),才能啟動(dòng)定時(shí)器工作。
單片機(jī)原理及接口技術(shù)12/26/2022③GATE—門控位。單片
單片機(jī)原理及接口技術(shù)12/26/2022§5.3.2.2控制器存放器TCONTCON除可字節(jié)尋址外,各位還可位尋址。89C51系統(tǒng)復(fù)位時(shí),TCON的所有位被清0。
TCON各位的定義格式如圖6-5所示。TCON各位定義及具體的意義歸納如圖6-6所示。單片機(jī)原理及接口技術(shù)12/2TF1TR1TF0TR0IE1IT1IE0IT0TCON(88H)8FH8EH8DH8CH8BH8AH89H88H圖6-5控制寄存器TCON的位定義
單片機(jī)原理及接口技術(shù)12/26/2022TF1TR1TF0TR0IE1IT1IE0I①TF1〔TCON.7)—T1溢出標(biāo)志位。當(dāng)T1溢出時(shí),由硬件自動(dòng)使中斷觸發(fā)器TF1置1,并向CPU申請(qǐng)中斷。當(dāng)CPU響應(yīng)中斷進(jìn)入中斷效勞程序后,TF1被硬件自動(dòng)清0。TF1也可以用軟件清0。
單片機(jī)原理及接口技術(shù)12/26/2022①TF1〔TCON.7)—T1溢出標(biāo)志位。②TF0〔TCON.5)—T0溢出標(biāo)志位。其功能和操作情況同TF1。當(dāng)T0溢出時(shí),由硬件自動(dòng)使中斷觸發(fā)器TF0置1,并向CPU申請(qǐng)中斷。當(dāng)CPU響應(yīng)中斷進(jìn)入中斷效勞程序后,TF1被硬件自動(dòng)清0。TF1也可以用軟件清0。
單片機(jī)原理及接口技術(shù)12/26/2022②TF0〔TCON.5)—T0溢出標(biāo)志位。③TR1(TCON.6)—T1運(yùn)行控制位??赏ㄟ^軟件置1〔TR1=1〕或清0〔TR1=0〕來啟動(dòng)或關(guān)閉T1工作。在程序中用指令“SETBTR1〞使TR1位置1,定時(shí)器T1便開場(chǎng)計(jì)數(shù)。用“CLRTR1〞使TR1清0,定時(shí)器停頓工作。
單片機(jī)原理及接口技術(shù)12/26/2022③TR1(TCON.6)—T1運(yùn)行控制位。④TR0(TCON.4)—T0運(yùn)行控制位。其功能和操作情況同TR1。可通過軟件置1〔TR0=1〕或清0〔TR0=0〕來啟動(dòng)或關(guān)閉T0。在程序中用指令“SETBTR0〞使TR0位置1,定時(shí)器T0便開場(chǎng)計(jì)數(shù)。用“CLRTR0〞使TR0清0,定時(shí)器停頓工作。
單片機(jī)原理及接口技術(shù)12/26/2022④TR0(TCON.4)—T0運(yùn)行控制位。⑤IE1,IT1,IE0,IT0(TCON.3~TCON.0)——外部中斷INT1,INT0請(qǐng)求及請(qǐng)求方式控制位。前一章已經(jīng)講過。
單片機(jī)原理及接口技術(shù)12/26/2022⑤IE1,IT1,IE0,IT0(TCON.3~TCON
單片機(jī)原理及接口技術(shù)12/26/2022§5.3.3定時(shí)器的四種模式及應(yīng)用
§5.3.3.1
模式0及其應(yīng)用§5.3.3.2
模式1及其應(yīng)用§5.3.3.3
模式2及其應(yīng)用§5.3.3.4
模式3及其應(yīng)用§5.3.3.5
綜合應(yīng)用舉例單片機(jī)原理及接口技術(shù)12/2§5.3.3.1模式0及其應(yīng)用一、模式0的邏輯電路構(gòu)造 T0在模式0的邏輯電路構(gòu)造如圖6-7所示。〔T1一樣〕二、模式0工作特點(diǎn)三、模式0的應(yīng)用舉例
單片機(jī)原理及接口技術(shù)12/26/2022§5.3.3.1模式0及其應(yīng)用一、模式0的邏二、模式0工作特點(diǎn)在這種模式下,16位存放器〔TH0和TL0〕只用了13位。其中TL0的高3位未用,其余5位為整個(gè)13位的低5為,TH0占高8位。當(dāng)TL0的低5位溢出時(shí),向TH0進(jìn)位;TH0溢出時(shí),向中斷標(biāo)志TF0進(jìn)位〔硬件置位TF0〕,并申請(qǐng)中斷。定時(shí)時(shí)間為:t=(213-T0初值)×振蕩周期×12用于計(jì)數(shù)工作方式時(shí),計(jì)數(shù)長度為:L=(213-T0初值)(個(gè)外部脈沖)×××TH0TL08位5位
單片機(jī)原理及接口技術(shù)12/26/2022二、模式0工作特點(diǎn)在這種模式下,16位存放器〔TH0和T三、模式0的應(yīng)用舉例例6-1:設(shè)晶振為12MHz,試計(jì)算定時(shí)器T0工作于模式0時(shí)的最大定時(shí)時(shí)間T。解:當(dāng)T0處于工作模式0時(shí),加1計(jì)數(shù)器為13位。因?yàn)椋憾〞r(shí)時(shí)間為:t=(213-T0初值)×振蕩周期×12最大定時(shí)時(shí)間為“T0初值=0〞時(shí)。所以:
單片機(jī)原理及接口技術(shù)12/26/2022三、模式0的應(yīng)用舉例例6-1:設(shè)晶振為12MHz,試計(jì)算例6-2:設(shè)定時(shí)器T0用于定時(shí)10ms,晶振為6MHz。試確定T0初值。并編寫定時(shí)器T0初始化程序段。解:1〕確定T0初值當(dāng)T0處于工作模式0時(shí),加1計(jì)數(shù)器為13位。定時(shí)時(shí)間:所以:∴T0初值=3192=C78H=0110001111000B即:(TH0)=01100011B=63H(高8位)(TL0)=11000B=18H(低5位)
單片機(jī)原理及接口技術(shù)12/26/2022例6-2:設(shè)定時(shí)器T0用于定時(shí)10ms,晶振為6MHz。試確
TMOD的低四位為T0的控制位
模式0:M1M0=00,
定時(shí)器方式:C/T=0,
門控位不受INT0的影響:GATE=0,
其余位:為0?!?/p>
模式字為
TMOD=00000000B=00H定時(shí)器T1定時(shí)器T0GATEC/TM1M0GATEM1C/TM0TMOD(89H)D7D6D5D4D3D2D1D0解:2)確定TMOD的初值
單片機(jī)原理及接口技術(shù)12/26/2022TMOD的低四位為T0的控制位定時(shí)器T1定時(shí)器T0G解:3〕編寫定時(shí)器T0的初始化程序段主程序:ORG0100HMAIN:MOVSP,#60H;設(shè)堆棧指針MOVTMOD,#00H;選擇工作模式MOVTH0,#63H;送初值MOVTL0,#18HSETBTR0;啟動(dòng)定時(shí) …
單片機(jī)原理及接口技術(shù)12/26/2022解:3〕編寫定時(shí)器T0的初始化程序段例6-3:設(shè)定時(shí)器T1工作于模式0,晶振為6MHz。編程實(shí)現(xiàn):每10ms時(shí)間P1.0取反的程序。解:1〕確定T1初值T1處于工作模式0時(shí),定時(shí)時(shí)間位10ms〔同例2〕。(TH1)=01100011B=63H(高8位)(TL1)=11000B=18H(低5位)2)確定TMOD的初值TMOD的高四位為T1的控制位
模式0:M1M0=00,定時(shí)器方式:C/T=0,
門控位不受INT0的影響:GATE=0,其余位:為0。∴
模式字為
TMOD=00000000B=00H
單片機(jī)原理及接口技術(shù)12/26/2022例6-3:設(shè)定時(shí)器T1工作于模式0,晶振為6MHz。編程實(shí)現(xiàn)解:3〕編寫程序初始化引導(dǎo)程序: ORG0000HRESET:AJMPMAIN;跳過中斷效勞程序區(qū)ORG001BH;中斷效勞程序入口AJMPITOP主程序:ORG0100HMAIN:MOVSP,#60H;設(shè)堆棧指針MOVTMOD,#00H;選擇工作模式MOVTH1,#63H;送初值MOVTL1,#18HSETBP1.0;P1.0置1SETBTR1;啟動(dòng)定時(shí)SETBET1;T1開中斷SETBEA;CPU開中斷HERE:AJMPHERE;等待時(shí)間到,轉(zhuǎn)入中斷效勞程序
單片機(jī)原理及接口技術(shù)12/26/2022中斷服務(wù)程序ORG0150HITOP:MOVTL1,#18H;重新裝入初值
MOVTH1,#63H
CPLP1.0;P1.0取反RETI ;中斷返回解:3〕編寫程序單片機(jī)原理及例6-4:利用T0的工作模式0產(chǎn)生定時(shí),在P1.0引腳輸出周期為10ms的方波。設(shè)晶振頻率fosc=12MHz。編程實(shí)現(xiàn)其功能〔分別采用查詢方式和中斷方式〕。解:要在P1.0引腳輸出周期為10ms的方波,只要使P1.0每隔5ms取反一次即可。
(1)選擇工作模式
T0的模式字為TMOD=00H,即:M1M0=00,C/T=0,GATE=0,其余位為0。(2)計(jì)算5ms定時(shí)T0的初值T=(213-T0初值)×(1/12)×10-6×12=5×10-3sT0初值=3192D=C78H=0110001111000BT0的低5位:11000B=18H即(TL0)=18HT0的高8位:01100011B=63H即(TH0)=63H
單片機(jī)原理及接口技術(shù)12/26/2022例6-4:利用T0的工作模式0產(chǎn)生定時(shí),在P1.0引腳輸出周〔3〕采用查詢方式的程序程序清單:ORG 0000H LJMP MAIN;初始化引導(dǎo)程序 ORG 0080HMAIN:MOVTMOD,#00H;設(shè)置T0為模式0 MOVTL0,#18H;送初值 MOVTH0,#63H SETB P1.0 SETBTR0;啟動(dòng)定時(shí)LP: JBCTF0,NEXT;查詢定時(shí)時(shí)間到否 SJMPLPNEXT:MOVTL0,#18H;重裝計(jì)數(shù)初值 MOVTH0,#63H CPLP1.0;取反 SJMPLP;重復(fù)循環(huán)
單片機(jī)原理及接口技術(shù)12/26/2022〔3〕采用查詢方式的程序單片〔4〕采用定時(shí)器溢出中斷方式的程序ORG0000H;主程序RESET:AJMPMAIN;跳過中斷效勞程序區(qū)ORG000BH ;定時(shí)器T0中斷矢量AJMPCTC0 ;轉(zhuǎn)入中斷效勞程序ORG0030HMAIN:MOVTMOD,#00H;設(shè)置T0為模式0MOVTL0,#18H;送初值MOVTH0,#63HSETBEA;CPU開中斷SETBET0;T0中斷允許SETBTR0;啟動(dòng)定時(shí)HERE:SJMPHERE;等待中斷 ORG0120H;中斷效勞程序CTC0:MOVTL0,#18H;重新裝入初值MOVTH0,#63HCPLP1.0;P1.0取反RETI ;中斷返回
單片機(jī)原理及接口技術(shù)12/26/2022模式0的應(yīng)用舉例完〔4〕采用定時(shí)器溢出中斷方式的程序§5.3.3.2模式1及其應(yīng)用一、模式1的邏輯電路構(gòu)造:T0在模式1的邏輯電路構(gòu)造如圖6-8所示?!睺1一樣〕二、模式1工作特點(diǎn)三、模式1的應(yīng)用舉例
單片機(jī)原理及接口技術(shù)12/26/2022§5.3.3.2模式1及其應(yīng)用一、模式1的邏輯電二、模式1工作特點(diǎn)該模式對(duì)應(yīng)的是一個(gè)16位的定時(shí)器/計(jì)數(shù)器。用于定時(shí)工作方式時(shí),定時(shí)時(shí)間為:
t=(216-T0初值)×振蕩周期×12用于計(jì)數(shù)工作方式時(shí),計(jì)數(shù)長度為:
(216-T0初值)(個(gè)外部脈沖)TH0TL08位8位
單片機(jī)原理及接口技術(shù)12/26/2022二、模式1工作特點(diǎn)該模式對(duì)應(yīng)的是一個(gè)16位的定時(shí)器/計(jì)數(shù)三、模式1的應(yīng)用舉例例6-5:設(shè)定時(shí)器T0選擇工作模式1的計(jì)數(shù)器工作方式,其計(jì)數(shù)器初值為FFFFH,問此時(shí)定時(shí)器T0的實(shí)際用途是什么?解:因其初值為FFFFH,只要隨機(jī)外來一脈沖即可溢出,向CPU申請(qǐng)中斷,故這一內(nèi)部中斷源實(shí)質(zhì)上已作為外部中斷源使用。因此此定時(shí)器T0并不用于定時(shí)或計(jì)數(shù)。
單片機(jī)原理及接口技術(shù)12/26/2022三、模式1的應(yīng)用舉例例6-5:設(shè)定時(shí)器T0選擇工作模式1例6-6:設(shè)晶振為12MHz,試計(jì)算定時(shí)器T0工作于模式1時(shí)的最大定時(shí)時(shí)間T。解:當(dāng)T0處于工作模式1時(shí),加1計(jì)數(shù)器為16位。定時(shí)時(shí)間為:t=(216-T0初值)×振蕩周期×12最大定時(shí)時(shí)間為“T0初值=0〞時(shí)。所以:
單片機(jī)原理及接口技術(shù)12/26/2022例6-6:設(shè)晶振為12MHz,試計(jì)算定時(shí)器T0工作于模式1時(shí)例6-7:用定時(shí)器T1產(chǎn)生一個(gè)50Hz的方波,由P1.1輸出。使用程序查詢方式,fosc=6MHz。解:1)確定定時(shí)器T1初值∵方波周期T=1/50=0.02s=20ms
∴用T1定時(shí)10ms,時(shí)間到P1.1引腳電平取反。∴(TH1)=ECH,(TL1)=78H20ms10ms10ms
單片機(jī)原理及接口技術(shù)12/26/2022例6-7:用定時(shí)器T1產(chǎn)生一個(gè)50Hz的方波,由P1.1輸解:2)確定工作模式寄存器TMOD的值
∵定時(shí)器T1工作于模式1的定時(shí)器工作方式,
∴高四位:GATE=0,C/T=0,M1M0=01,低四位:取0。
∴(TMOD)=00010000B=10H3)編程
ORG0000H LJMPSTARTORG0080HSTART:MOVTMOD,#10H;T1為模式1
MOVTL1,#78H;送初值MOVTH1,#0ECHSETBP1.1;P1.1置1SETBTR1;啟動(dòng)定時(shí)LOOP: JNBTF1,LOOP;查詢定時(shí)時(shí)間到否CLRTF1;產(chǎn)生溢出,清標(biāo)志位
MOVTL1,#78H;重新置初值 MOVTH1,#0ECH CPLP1.1;取反 SJMPLOOP;重復(fù)循環(huán)
單片機(jī)原理及接口技術(shù)12/26/2022《模式1的應(yīng)用舉例完》解:2)確定工作模式寄存器TMOD的值3)編程§5.3.3.3模式2及其應(yīng)用一、模式2的邏輯電路構(gòu)造二、模式2工作特點(diǎn)三、模式2的應(yīng)用舉例
單片機(jī)原理及接口技術(shù)12/26/2022§5.3.3.3模式2及其應(yīng)用一、模式2的一、模式2的邏輯電路構(gòu)造T0在模式2的邏輯電路構(gòu)造如圖6-9所示?!睺1一樣〕TL0計(jì)數(shù)溢出時(shí),不僅使溢出中斷標(biāo)志位TF0置1,而且還自動(dòng)把TH0中的內(nèi)容重新裝載到TL0中。TL0用作8位計(jì)數(shù)器,TH0用以保存初值。
單片機(jī)原理及接口技術(shù)12/26/2022一、模式2的邏輯電路構(gòu)造T0在模式2的邏輯電路構(gòu)造如二、模式2工作特點(diǎn)該模式把TL0(TL1)配置成一個(gè)可以自動(dòng)重裝載的8位定時(shí)器/計(jì)數(shù)器。在程序初始化時(shí),TL0和TH0由軟件賦予相同的初值。用于定時(shí)工作方式時(shí),定時(shí)時(shí)間為:t=(28-TL0初值)×振蕩周期×12用于計(jì)數(shù)工作方式時(shí),計(jì)數(shù)長度為:
(28-TL0初值)
(個(gè)外部脈沖)該模式可省去軟件中重裝常數(shù)的語句,并可產(chǎn)生相當(dāng)精確的定時(shí)時(shí)間,適合于作串行口波特率發(fā)生器。
單片機(jī)原理及接口技術(shù)12/26/2022二、模式2工作特點(diǎn)該模式把TL0(TL1)配置成一個(gè)可以三、模式2的應(yīng)用舉例例6-8:當(dāng)P3.4引腳〔定時(shí)器T0的外部計(jì)數(shù)輸入端〕上的電平發(fā)生負(fù)跳變時(shí),從P1.0輸出一個(gè)500μs的同步脈沖。用查詢方式編程實(shí)現(xiàn)該功能,fosc=6MHz。
單片機(jī)原理及接口技術(shù)12/26/2022解:(1)確定TMOD值門控位GATE=0,高四位取0,選T0為模式2(M1M0=10),
首先為計(jì)數(shù)器工作方式(C/T=1):(TMOD)=00000110B=06H
當(dāng)P3.4引腳上的電平發(fā)生負(fù)跳變時(shí),T0計(jì)數(shù)器加1,溢出標(biāo)志TF0置1;
然后改變T0為500μs定時(shí)工作方式(C/T=0):(TMOD)=02H
當(dāng)上面TF0=1時(shí)使P1.0輸出由1變?yōu)?。開始T0定時(shí),到500μs產(chǎn)生溢出,使P1.0輸出恢復(fù)高電平,T0又恢復(fù)外部事件計(jì)數(shù)方式。定時(shí)器T1定時(shí)器T0GATEC/TM1M0GATEM1C/TM0TMOD(89H)D7D6D5D4D3D2D1D0三、模式2的應(yīng)用舉例例6-8:當(dāng)P3.4引腳〔定時(shí)器T0〔2〕計(jì)算T0初值T0工作在外部事件計(jì)數(shù)方式:題目要求T0引腳出現(xiàn)一次外部事件時(shí),引起T0中斷。所以:設(shè)計(jì)計(jì)數(shù)器初值為FFH,當(dāng)計(jì)數(shù)器再加1就溢出了。即:T0初值+1=28T0初值=28-1=11111111B=0FFH即:〔TH0〕=〔TL0〕=0FFHT0工作在定時(shí)工作方式:因?yàn)榫д耦l率為6MHz,定時(shí)500μs。所以:(28-T0初值)×2μs=500μs得出:T0初值=6=06H,即:〔TH0〕=〔TL0〕=06H
單片機(jī)原理及接口技術(shù)12/26/2022〔2〕計(jì)算T0初值單片機(jī)原理〔3〕程序清單:ORG 0000H LJMP START ORG 0080H START: MOV TMOD,#06H ;設(shè)置T0為模式2,外部計(jì)數(shù)方式 MOV TL0,#0FFH;T0計(jì)數(shù)器初值 MOV TH0,#0FFH SETB TR0;啟動(dòng)T0計(jì)數(shù) LOOP1: JBC TF0,PTFO1;查詢T0溢出標(biāo)志,TF0=1時(shí)轉(zhuǎn),且清TF0=0 SJMP LOOP1 ;等待T0溢出 PTFO1:CLRTR0 ;停頓計(jì)數(shù) MOVTMOD,#02H;設(shè)置T0為模式2,定時(shí)方式 MOVTL0,#06H;送初值,定時(shí)500μs MOVTH0,#06H CLRP1.0;P1.0清0 SETBTR0;啟動(dòng)定時(shí)500μs LOOP2: JBCTF0,PTFO2;查詢T0溢出標(biāo)志,TF0=1時(shí)轉(zhuǎn)并清TF0=0 SJMPLOOP2;等待T0溢出中斷〔定時(shí)時(shí)間到〕 PTFO2: SETBP1.0;P1.0置1 CLRTR0;停頓定時(shí) SJMPSTART;轉(zhuǎn)向開場(chǎng),重新等待T0引腳的脈沖
單片機(jī)原理及接口技術(shù)12/26/2022《例6-8完》〔3〕程序清單:ORG 0000H例6-9:利用定時(shí)器T1的模式2對(duì)外部信號(hào)計(jì)數(shù)。要求每計(jì)滿100次,將P1.0端取反。解:(1)選擇模式外部信號(hào)由T1(P3.5)引腳輸入,每發(fā)生一次負(fù)跳變計(jì)數(shù)器加1,每輸入100個(gè)脈沖,計(jì)數(shù)器發(fā)生溢出中斷,中斷服務(wù)程序?qū)1.0取反一次。
T1計(jì)數(shù)工作方式模式2的模式字為(TMOD)=60H。T0不用時(shí),TMOD的低4位可任取,但不能進(jìn)入模式3,一般取0。
單片機(jī)原理及接口技術(shù)12/26/2022例6-9:利用定時(shí)器T1的模式2對(duì)外部信號(hào)計(jì)數(shù)。要求每計(jì)滿1〔2〕計(jì)算T1的計(jì)數(shù)初值X=28-100=156=9CH因此:TL1的初值為9CH,重裝初值存放器TH1=9CH?!?〕程序清單 ORG 0000H LJMP MAIN ORG001BH;中斷效勞程序入口 CPLP1.0 RETI MAIN: MOVTMOD,#60H;設(shè)置T1為模式2,外部計(jì)數(shù)方式 MOVTL1,#9CH;T1計(jì)數(shù)器初值 MOVTH1,#9CH MOVIE,#88H;定時(shí)器開中斷 SETBTR1;啟動(dòng)T1計(jì)數(shù)HERE: SJMPHERE;等待中斷
單片機(jī)原理及接口技術(shù)12/26/2022《模式2的應(yīng)用舉例完》〔2〕計(jì)算T1的計(jì)數(shù)初值單片§5.3.3.4模式3及其應(yīng)用一、模式3的邏輯電路構(gòu)造工作模式3對(duì)T0和T1大不一樣。1、T0模式3的邏輯電路構(gòu)造2、T0模式3下T1的邏輯電路構(gòu)造二、模式3的應(yīng)用舉例
單片機(jī)原理及接口技術(shù)12/26/2022§5.3.3.4模式3及其應(yīng)用一、模式31、T0模式3的邏輯電路構(gòu)造T0模式3的邏輯電路構(gòu)造如所示。T0設(shè)置為模式3,TL0和TH0被分成兩個(gè)相互獨(dú)立的8位計(jì)數(shù)器。TL0:用原T0的各控制位、引腳和中斷源,即C/T,GATE,TR0,TF0,T0〔P3.4〕引腳,INT0〔P3.2〕引腳。TL0可工作在定時(shí)器方式和計(jì)數(shù)器方式。其功能和操作與模式0、模式1一樣〔只是8位〕。TH0:只可用作簡(jiǎn)單的內(nèi)部定時(shí)功能。TH0占用了定時(shí)器T1的控制位TR1和T1的中斷標(biāo)志TF1,其啟動(dòng)和關(guān)閉僅受TR1的控制。
單片機(jī)原理及接口技術(shù)12/26/20221、T0模式3的邏輯電路構(gòu)造T0模式3的邏輯電路構(gòu)造如所示2、T0模式3下T1的邏輯電路構(gòu)造定時(shí)器T1無工作模式3狀態(tài)。在T0用作模式3時(shí),T1仍可設(shè)置為模式0~2。T0模式3下T1的邏輯電路構(gòu)造如圖6-12所示。由于TR1和TF1被定時(shí)器T0占用,計(jì)數(shù)器開關(guān)K已被接通,此時(shí),僅用T1控制位,C/T切換其定時(shí)或計(jì)數(shù)器工作方式就可使T1運(yùn)行。當(dāng)計(jì)數(shù)器溢出時(shí),只能將輸出送入串行口或用于不需要中斷的場(chǎng)合。一般作波特率發(fā)生器
單片機(jī)原理及接口技術(shù)12/26/20222、T0模式3下T1的邏輯電路構(gòu)造定時(shí)器T1無工作模式3狀態(tài)二、模式3的應(yīng)用舉例例6-10:設(shè)某用戶系統(tǒng)已使用了兩個(gè)外部中斷源,并置定時(shí)器T1工作在模式2,作串行口波特率發(fā)生器用?,F(xiàn)要求再增加一個(gè)外部中斷源,并由P1.0引腳輸出一個(gè)5kHz的方波。Fosc=12MHz.解:(1)工作模式
可設(shè)置T0工作在模式3計(jì)數(shù)器方式,把T0的引腳作附加的外部中斷輸入端,TL0的計(jì)數(shù)初值為FFH,當(dāng)檢測(cè)到T0引腳電平出現(xiàn)由1至0的負(fù)跳變時(shí),TL0產(chǎn)生溢出,申請(qǐng)中斷。
T0模式3下,TL0作計(jì)數(shù)用,而TH0用作8位的定時(shí)器,定時(shí)控制P1.0引腳輸出5kHz的方波信號(hào)。
單片機(jī)原理及接口技術(shù)12/26/2022(2)計(jì)算初值TL0的計(jì)數(shù)初值為FFH。TH0的計(jì)數(shù)初值X為:P1.0方波周期T=1/(5kHz)=0.2ms=200μs用TH0作定時(shí)100μs時(shí),X=256-100×12/12=156二、模式3的應(yīng)用舉例例6-10:設(shè)某用戶系統(tǒng)已使用了兩個(gè)〔3〕程序清單MOVTMOD,#27H;T0為模式3,計(jì)數(shù)方式,T1為模式2,定時(shí)方式MOVTL0,#0FFH;TL0計(jì)數(shù)初值MOVTH0,#156;TH0計(jì)數(shù)初值MOVTL1,#data;data是根據(jù)波特率,要求設(shè)置的常數(shù)〔初值〕MOVTH1,#dataMOVTCON,#55H;外中斷0,外中斷1邊沿觸發(fā),啟動(dòng)T0,T1MOVIE,#9FH;開放全部中斷TL0溢出中斷效勞程序〔由000BH轉(zhuǎn)來〕TL0INT:MOVTL0,#0FFH;TL0重賦初值 〔中斷處理〕RETITH0溢出中斷效勞程序〔由001BH轉(zhuǎn)來〕TH0INT:MOVTH0,#156;TH0重賦初值CPLP1.0;P1.0取反輸出RETI串行口及外部中斷0,外部中斷1的效勞程序略
單片機(jī)原理及接口技術(shù)12/26/2022《模式3的應(yīng)用舉例完》〔3〕程序清單單片機(jī)原理及接§5.3.3.5綜合應(yīng)用舉例例6-11:設(shè)時(shí)鐘頻率為6MHz。編寫利用T0產(chǎn)生1s定時(shí)的程序。解:(1)定時(shí)器T0工作模式的確定∵模式0最長可定時(shí)16.384ms;模式1最長可定時(shí)131.072ms;模式2最長可定時(shí)512μs;∴定時(shí)1s,可選用模式1,每隔100ms中斷一次,中斷10次從而達(dá)到1s的定時(shí)。(2)求計(jì)數(shù)器初值X∵(216-X)×12/(6×106)=100×10-3s∴X=15536=3CB0H因此:(TL0)=0B0H(TH0)=3CH(3)實(shí)現(xiàn)方法:對(duì)于中斷10次計(jì)數(shù),可使T0工作在計(jì)數(shù)方式,也可用循環(huán)程序的方法實(shí)現(xiàn)。本例采用循環(huán)程序法。
單片機(jī)原理及接口技術(shù)12/26/2022§5.3.3.5綜合應(yīng)用舉例例6-11:設(shè)時(shí)鐘頻〔4〕源程序清單 ORG 0000H AJMP MAIN ;上電,轉(zhuǎn)向主程序 ORG 000BH ;T0的中斷效勞程序入口地址 AJMPSERVE ;轉(zhuǎn)向中斷效勞程序 ORG 0080H ;主程序MAIN: MOV SP,#60H;設(shè)堆棧指針 MOV B,#0AH;設(shè)循環(huán)次數(shù) MOV TMOD,#01H;設(shè)置T0工作于模式1 MOV TL0,#0B0H;裝計(jì)數(shù)值低8位 MOV TH0,#3CH;裝計(jì)數(shù)值高8位 SETB TR0 ;啟動(dòng)定時(shí) SETB ET0 ;T0開中斷 SETB EA ;CPU開中斷 SJMP $ ;等待中斷SERVE: MOVTL0,#0B0H;重新賦初值 MOVTH0,#3CH DJNZB,LOOP;B-1不為0,繼續(xù)定時(shí) CLRTR0;1s定時(shí)到,停頓T0工作LOOP: RETI;中斷返回 END
單片機(jī)原理及接口技術(shù)12/26/2022《例6-11完》〔4〕源程序清單單片機(jī)原理及例6-12:設(shè)計(jì)實(shí)時(shí)時(shí)鐘程序。時(shí)鐘就是以秒、分、時(shí)為單位進(jìn)展計(jì)時(shí)。用定時(shí)器與中斷的聯(lián)合應(yīng)用。解:(1)實(shí)現(xiàn)時(shí)鐘計(jì)時(shí)的基本方法
①計(jì)算計(jì)數(shù)初值。
時(shí)鐘計(jì)時(shí)的最小單位是秒,可把定時(shí)器的定時(shí)時(shí)間定為100ms,計(jì)數(shù)溢出10次即得到1秒;10次計(jì)數(shù)可用軟件方法實(shí)現(xiàn)。
假定使用定時(shí)器T0,以工作模式1進(jìn)行100ms的定時(shí)。如fosc=6MHz,則計(jì)數(shù)初值X為:∴X=15536=3CB0H因此:(TL0)=0B0H(TH0)=3CH②采用定時(shí)方式進(jìn)行溢出次數(shù)的累計(jì),計(jì)滿10次即得到秒計(jì)時(shí)。
設(shè)置軟件計(jì)數(shù)器初值為10,每100ms定時(shí)時(shí)間到溢出中斷,使軟件計(jì)數(shù)器減1,直到減到0,則1s到。
單片機(jī)原理及接口技術(shù)12/26/2022例6-12:設(shè)計(jì)實(shí)時(shí)時(shí)鐘程序。時(shí)鐘就是以秒、分、時(shí)為單位③從秒到分和從分到時(shí)的計(jì)時(shí)是通過累計(jì)和數(shù)值比較實(shí)現(xiàn)的。
設(shè)置幾個(gè)累加單元分別進(jìn)行對(duì)1s,1min,1h進(jìn)行計(jì)數(shù)。滿1s,秒位累加;滿60s,分位累加;滿60min,時(shí)位累加;滿24h全部累加單元清0
單片機(jī)原理及接口技術(shù)12/26/2022〔2〕程序流程及程序清單 ①主程序流程如圖所示。設(shè)T1為模式1設(shè)中斷次數(shù)清計(jì)時(shí)單元開中斷啟動(dòng)T1調(diào)用顯示子程序圖6-13時(shí)鐘主程序流程③從秒到分和從分到時(shí)的計(jì)時(shí)是通過累計(jì)和數(shù)值比較實(shí)現(xiàn)的。保護(hù)現(xiàn)場(chǎng)賦計(jì)數(shù)初值到1s?(32H)加1(32H)=60?(32H)清0(31H)加1(31H)=60?(31H)清0(30H)加1(30H)=24?(30H)清0恢復(fù)現(xiàn)場(chǎng)返回入口NNNNYYYY圖6-14中斷服務(wù)程序流程圖②中斷服務(wù)流程如圖6-14所示。保護(hù)現(xiàn)場(chǎng)賦計(jì)數(shù)初值到1s?(32H)加1(32H)=60?(③源程序如下:ORG0000HAJMPMAIN;上電,轉(zhuǎn)向主程序ORG001BH;T1的中斷效勞程序入口地址AJMPSERVE;轉(zhuǎn)向中斷效勞程序ORG2000H;主程序MAIN:MOVSP,#60H;設(shè)堆棧指針MOVTMOD,#10H;設(shè)置T1工作于模式1MOV20H,#0AH;設(shè)循環(huán)次數(shù)CLRAMOV30H,A;時(shí)單元清0MOV31H,A;分單元清0MOV32H,A;秒單元清0 SETBET1;T1開中斷SETBEA;CPU開中斷MOVTL1,#0B0H;裝計(jì)數(shù)值低8位MOVTH1,#3CH;裝計(jì)數(shù)值高8位SETBTR1;啟動(dòng)定時(shí)SJMP$;等待中斷〔可反復(fù)調(diào)用顯示子程序〕
單片機(jī)原理及接口技術(shù)12/26/2022③源程序如下:?jiǎn)纹瑱C(jī)原理及中斷服務(wù)程序:
SERVE:PUSHPSW;保護(hù)現(xiàn)場(chǎng)PUSHACC
MOVTL1,#0B0H;重新賦初值MOVTH1,#3CHDJNZ20H,RETUNT;1s未到,返回MOV20H,#0AH;重置中斷次數(shù) MOVA,#01HADDA,32H;“秒位”加1DAA;轉(zhuǎn)換為BCD碼MOV32H,ACJNEA,#60H,RETUNT;未滿60s,返回MOV32H,#00H;計(jì)滿60s,“秒位”清0MOVA,#01HADDA,31H;“分位”加1DAA;轉(zhuǎn)換為BCD碼MOV31H,ACJNEA,#60H,RETUNT;未滿60min,返回MOV31H,#00H;計(jì)滿60min,“分位”清0
單片機(jī)原理及接口技術(shù)12/26/2022中斷服務(wù)程序:?jiǎn)纹瑱C(jī)原理及MOVA,#01HADDA,30H;“時(shí)位〞加1DAA;轉(zhuǎn)換為BCD碼MOV30H,ACJNEA,#24H,RETUNT;未滿24h,返回MOV30H,#00H;計(jì)滿24h,“時(shí)位〞清0RETUNT:POPACC;恢復(fù)現(xiàn)場(chǎng)POPPSWRETI;中斷返回END
單片機(jī)原理及接口技術(shù)12/26/2022《綜合應(yīng)用舉例完》MOVA,#01H
單片機(jī)原理及接口技術(shù)§5.4思考題與習(xí)題1、定時(shí)器模式2有什么特點(diǎn)?適用于什么應(yīng)用場(chǎng)合?2、單片機(jī)用內(nèi)部定時(shí)方法產(chǎn)生頻率為100KHz等寬距形波,假定單片機(jī)的晶振頻率為12MHz。請(qǐng)編程實(shí)現(xiàn)。3、89C51定時(shí)器有哪幾種工作模式?有何區(qū)別?4、89C51單片機(jī)內(nèi)部設(shè)有幾個(gè)定時(shí)器/計(jì)數(shù)器?它們是由哪些特殊功能存放器組成?5、定時(shí)器用作定時(shí)器時(shí),其定時(shí)時(shí)間與哪些因素有關(guān)?作計(jì)數(shù)器時(shí),對(duì)外界計(jì)數(shù)頻率有何限制?12/26/2022單片機(jī)原理及接口技術(shù)§5.46、簡(jiǎn)述定時(shí)器四種工作模式的特點(diǎn),如何選擇和設(shè)定?7、當(dāng)定時(shí)器T0用作模式3時(shí),由于TR1位已被T0占用,如何控制定時(shí)器T1的開啟和關(guān)閉?8、以定時(shí)器/計(jì)數(shù)器1進(jìn)展外部事件計(jì)數(shù)。每計(jì)數(shù)1000個(gè)脈沖后,定時(shí)器T1轉(zhuǎn)為定時(shí)工作方式。定時(shí)10ms后,又轉(zhuǎn)為計(jì)數(shù)方式,如此循環(huán)不止。假定單片機(jī)晶振頻率為6MHz,請(qǐng)使用模式1編程實(shí)現(xiàn)。9、一個(gè)定時(shí)器的定時(shí)時(shí)間有限,如何實(shí)現(xiàn)兩個(gè)定時(shí)器的串行定時(shí),以滿足較長定時(shí)時(shí)間的要求?10、使用一個(gè)定時(shí)器,如何通過軟、硬件結(jié)合的方法,實(shí)現(xiàn)較長時(shí)間的定時(shí)?
單片機(jī)原理及接口技術(shù)12/26/2022§6.4思考題與習(xí)題6、簡(jiǎn)述定時(shí)器四種工作模式的特點(diǎn),如何選擇和設(shè)定?11、89C51定時(shí)器作定時(shí)和計(jì)數(shù)時(shí),其計(jì)數(shù)脈沖分別由誰提供?12、89C51定時(shí)器的門控制信號(hào)GATE設(shè)置為1時(shí),定時(shí)器如何啟動(dòng)?13、89C51單片機(jī)的fosc=6MHz,請(qǐng)利用T0和P1.0輸出矩形波。矩形波高電平寬50μs,低電平寬300μs.14、89C51單片機(jī)的fosc=12MHz,用T1定時(shí)。試編程由P1.0和P1.1引腳分別輸出周期為2ms和500μs的方波。15、單片機(jī)8031的時(shí)鐘頻率為6MHz,假設(shè)要求定時(shí)值分別為0.1ms,1ms,10ms,定時(shí)器0工作在模式0、模式1和模式2時(shí),其定時(shí)器初值各應(yīng)是多少?
單片機(jī)原理及接口技術(shù)12/26/2022§6.4思考題與習(xí)題11、89C51定時(shí)器作定時(shí)和計(jì)數(shù)時(shí),其計(jì)數(shù)脈沖分別由誰提供16、89C51單片機(jī)的定時(shí)器在何種設(shè)置下可提供三個(gè)8位計(jì)數(shù)器定時(shí)器?這時(shí),定時(shí)器1可作為串行口波特率發(fā)生器。假設(shè)波特率按9600b/s,4800b/s,2400b/s,1200b/s,600b/s,100b/s來考慮,那么此時(shí)可選用的波特率是多少〔允許存在一定誤差〕?設(shè)fosc=12MHz。17、試編制一段程序,功能為:當(dāng)P1.2引腳的電平上跳時(shí),對(duì)P1.1的輸入脈沖進(jìn)展計(jì)數(shù);當(dāng)P1.2引腳的電平下跳時(shí),停頓計(jì)數(shù),并將計(jì)數(shù)值寫入R6,R7。18、設(shè)fosc=6MHz。試編制一段程序,功能為:對(duì)定時(shí)器T0初始化,使之工作在模式2,產(chǎn)生200μs定時(shí),并用查詢T0溢出標(biāo)志的方法,控制P1.0輸出周期為2ms的方波。?完?
單片機(jī)原理及接口技術(shù)12/26/2022§6.4思考題與習(xí)題16、89C51單片機(jī)的定時(shí)器在何種設(shè)置下可提供三個(gè)8位計(jì)數(shù)《B中斷與定時(shí)》幻燈片本課件PPT僅供大家學(xué)習(xí)使用學(xué)習(xí)完請(qǐng)自行刪除,謝謝!本課件PPT僅供大家學(xué)習(xí)使用學(xué)習(xí)完請(qǐng)自行刪除,謝謝!《B中斷與定時(shí)》幻燈片本課件PPT僅供大家學(xué)習(xí)使用§5.3定時(shí)器概述§5.3.189C51定時(shí)器構(gòu)造§5.3.289C51定時(shí)器功能
單片機(jī)原理及接口技術(shù)12/26/2022§5.3定時(shí)器概述§5.3.189C51定時(shí)器構(gòu)造§5.3.189C51定時(shí)器構(gòu)造89C51定時(shí)器的構(gòu)造如所示。有兩個(gè)16位的定時(shí)器/計(jì)數(shù)器,即定時(shí)器0〔T0〕和定時(shí)器1〔T1〕。都是16位加1計(jì)數(shù)器。T0由兩個(gè)8位特殊功能存放器TH0和TL0構(gòu)成;T1由TH1和TL1構(gòu)成。
單片機(jī)原理及接口技術(shù)12/26/2022§5.3.189C51定時(shí)器構(gòu)造89C51定時(shí)器的構(gòu)造如《B中斷與定時(shí)》教學(xué)課件§5.1.280C51定時(shí)器功能每個(gè)定時(shí)器都可由軟件設(shè)置為定時(shí)工作方式或計(jì)數(shù)工作方式。由特殊功能存放器TMOD和TCON所控制。定時(shí)器工作不占用CPU時(shí)間,除非定時(shí)器/計(jì)數(shù)器溢出,才能中斷CPU的當(dāng)前操作。定時(shí)器/計(jì)數(shù)器有四種工作模式。其中模式0-2對(duì)T0和T1是一樣的,模式3對(duì)兩者不同。
單片機(jī)原理及接口技術(shù)12/26/2022§5.1.280C51定時(shí)器功能每個(gè)定時(shí)器都可由軟件設(shè)置定時(shí)工作方式定時(shí)器計(jì)數(shù)89C51片內(nèi)振蕩器輸出經(jīng)12分頻后的脈沖,即每個(gè)機(jī)器周期使定時(shí)器〔T0或T1〕的數(shù)值加1直至計(jì)滿溢出。當(dāng)80C51采用12MHz晶振時(shí),一個(gè)機(jī)器周期為1μs,計(jì)數(shù)頻率為1MHz。
單片機(jī)原理及接口技術(shù)12/26/2022定時(shí)工作方式定時(shí)器計(jì)數(shù)89C51片內(nèi)振蕩器輸出經(jīng)12分頻后的計(jì)數(shù)工作方式通過引腳T0〔P3.4〕和T1〔P3.5〕對(duì)外部脈沖信號(hào)計(jì)數(shù)。當(dāng)輸入脈沖信號(hào)產(chǎn)生由1至0的下降沿時(shí)計(jì)數(shù)器的值加1。CPU檢測(cè)一個(gè)1至0的跳變需要兩個(gè)機(jī)器周期,故最高計(jì)數(shù)頻率為振蕩頻率的1/24。為了確保某個(gè)電平在變化之前被采樣一次,要求電平保持時(shí)間至少是一個(gè)完整的機(jī)器周期。對(duì)輸入脈沖信號(hào)的根本要求如所示。
單片機(jī)原理及接口技術(shù)12/26/2022計(jì)數(shù)工作方式通過引腳T0〔P3.4〕和T1〔P3.5〕對(duì)外部§5.3.2定時(shí)器的控制
§5.3.2.1工作模式存放器TMOD§5.3.2.2控制器存放器TCON
單片機(jī)原理及接口技術(shù)12/26/2022§5.3.2定時(shí)器的控制§5.3.2.1工作模式§5.3.2.1工作模式存放器TMODTMOD用于控制T0和T1的工作模式。TMOD不能位尋址,只能用字節(jié)設(shè)置定時(shí)器的工作模式,低半字節(jié)設(shè)置T0,高半字節(jié)設(shè)置T1。89C51系統(tǒng)復(fù)位時(shí),TMOD的所有位被清0。TMOD各位的定義格式如
所示。TMOD各位定義及具體的意義歸納如所示。
單片機(jī)原理及接口技術(shù)12/26/2022§5.3.2.1工作模式存放器TMODTMOD用于控制圖6-3工作模式寄存器TMOD的位定義定時(shí)器T1定時(shí)器T0TMOD(89H)D7D6D5D4D3D2D1D0GATEC/TM1M0
單片機(jī)原理及接口技術(shù)12/26/2022GATEC/TM1M0圖6-3工作模式寄存器TMOD的位定義定時(shí)器T1定時(shí)器①
M1和M0—操作模式控制位。兩位可形成四種編碼,對(duì)應(yīng)于四種模式。表6-1M1,M0控制的四種工作模式
單片機(jī)原理及接口技術(shù)12/26/2022①M(fèi)1和M0—操作模式控制位。表6-1M1,M0控②C/T—計(jì)數(shù)器/定時(shí)器方式選擇位。C/T=0,設(shè)置為定時(shí)方式。定時(shí)器計(jì)數(shù)89C51片內(nèi)脈沖,即對(duì)機(jī)器周期計(jì)數(shù)。C/T=1,設(shè)置為計(jì)數(shù)方式。計(jì)數(shù)器的輸入來自引腳T0〔P3.4〕或T1〔P3.5〕端的外部脈沖。
單片機(jī)原理及接口技術(shù)12/26/2022②C/T—計(jì)數(shù)器/定時(shí)器方式選擇位。
③GATE—門控位。GATE=0,只要用軟件使TR0〔或TR1〕置1就可以啟動(dòng)定時(shí)器,而不管INT0〔或INT1〕的電平是高還是低。GATE=1,只有INT0〔或INT1〕引腳為高電平且由軟件使TR0〔或TR1〕置1時(shí),才能啟動(dòng)定時(shí)器工作。
單片機(jī)原理及接口技術(shù)12/26/2022③GATE—門控位。單片
單片機(jī)原理及接口技術(shù)12/26/2022§5.3.2.2控制器存放器TCONTCON除可字節(jié)尋址外,各位還可位尋址。89C51系統(tǒng)復(fù)位時(shí),TCON的所有位被清0。
TCON各位的定義格式如圖6-5所示。TCON各位定義及具體的意義歸納如圖6-6所示。單片機(jī)原理及接口技術(shù)12/2TF1TR1TF0TR0IE1IT1IE0IT0TCON(88H)8FH8EH8DH8CH8BH8AH89H88H圖6-5控制寄存器TCON的位定義
單片機(jī)原理及接口技術(shù)12/26/2022TF1TR1TF0TR0IE1IT1IE0I①TF1〔TCON.7)—T1溢出標(biāo)志位。當(dāng)T1溢出時(shí),由硬件自動(dòng)使中斷觸發(fā)器TF1置1,并向CPU申請(qǐng)中斷。當(dāng)CPU響應(yīng)中斷進(jìn)入中斷效勞程序后,TF1被硬件自動(dòng)清0。TF1也可以用軟件清0。
單片機(jī)原理及接口技術(shù)12/26/2022①TF1〔TCON.7)—T1溢出標(biāo)志位。②TF0〔TCON.5)—T0溢出標(biāo)志位。其功能和操作情況同TF1。當(dāng)T0溢出時(shí),由硬件自動(dòng)使中斷觸發(fā)器TF0置1,并向CPU申請(qǐng)中斷。當(dāng)CPU響應(yīng)中斷進(jìn)入中斷效勞程序后,TF1被硬件自動(dòng)清0。TF1也可以用軟件清0。
單片機(jī)原理及接口技術(shù)12/26/2022②TF0〔TCON.5)—T0溢出標(biāo)志位。③TR1(TCON.6)—T1運(yùn)行控制位??赏ㄟ^軟件置1〔TR1=1〕或清0〔TR1=0〕來啟動(dòng)或關(guān)閉T1工作。在程序中用指令“SETBTR1〞使TR1位置1,定時(shí)器T1便開場(chǎng)計(jì)數(shù)。用“CLRTR1〞使TR1清0,定時(shí)器停頓工作。
單片機(jī)原理及接口技術(shù)12/26/2022③TR1(TCON.6)—T1運(yùn)行控制位。④TR0(TCON.4)—T0運(yùn)行控制位。其功能和操作情況同TR1??赏ㄟ^軟件置1〔TR0=1〕或清0〔TR0=0〕來啟動(dòng)或關(guān)閉T0。在程序中用指令“SETBTR0〞使TR0位置1,定時(shí)器T0便開場(chǎng)計(jì)數(shù)。用“CLRTR0〞使TR0清0,定時(shí)器停頓工作。
單片機(jī)原理及接口技術(shù)12/26/2022④TR0(TCON.4)—T0運(yùn)行控制位。⑤IE1,IT1,IE0,IT0(TCON.3~TCON.0)——外部中斷INT1,INT0請(qǐng)求及請(qǐng)求方式控制位。前一章已經(jīng)講過。
單片機(jī)原理及接口技術(shù)12/26/2022⑤IE1,IT1,IE0,IT0(TCON.3~TCON
單片機(jī)原理及接口技術(shù)12/26/2022§5.3.3定時(shí)器的四種模式及應(yīng)用
§5.3.3.1
模式0及其應(yīng)用§5.3.3.2
模式1及其應(yīng)用§5.3.3.3
模式2及其應(yīng)用§5.3.3.4
模式3及其應(yīng)用§5.3.3.5
綜合應(yīng)用舉例單片機(jī)原理及接口技術(shù)12/2§5.3.3.1模式0及其應(yīng)用一、模式0的邏輯電路構(gòu)造 T0在模式0的邏輯電路構(gòu)造如圖6-7所示。〔T1一樣〕二、模式0工作特點(diǎn)三、模式0的應(yīng)用舉例
單片機(jī)原理及接口技術(shù)12/26/2022§5.3.3.1模式0及其應(yīng)用一、模式0的邏二、模式0工作特點(diǎn)在這種模式下,16位存放器〔TH0和TL0〕只用了13位。其中TL0的高3位未用,其余5位為整個(gè)13位的低5為,TH0占高8位。當(dāng)TL0的低5位溢出時(shí),向TH0進(jìn)位;TH0溢出時(shí),向中斷標(biāo)志TF0進(jìn)位〔硬件置位TF0〕,并申請(qǐng)中斷。定時(shí)時(shí)間為:t=(213-T0初值)×振蕩周期×12用于計(jì)數(shù)工作方式時(shí),計(jì)數(shù)長度為:L=(213-T0初值)(個(gè)外部脈沖)×××TH0TL08位5位
單片機(jī)原理及接口技術(shù)12/26/2022二、模式0工作特點(diǎn)在這種模式下,16位存放器〔TH0和T三、模式0的應(yīng)用舉例例6-1:設(shè)晶振為12MHz,試計(jì)算定時(shí)器T0工作于模式0時(shí)的最大定時(shí)時(shí)間T。解:當(dāng)T0處于工作模式0時(shí),加1計(jì)數(shù)器為13位。因?yàn)椋憾〞r(shí)時(shí)間為:t=(213-T0初值)×振蕩周期×12最大定時(shí)時(shí)間為“T0初值=0〞時(shí)。所以:
單片機(jī)原理及接口技術(shù)12/26/2022三、模式0的應(yīng)用舉例例6-1:設(shè)晶振為12MHz,試計(jì)算例6-2:設(shè)定時(shí)器T0用于定時(shí)10ms,晶振為6MHz。試確定T0初值。并編寫定時(shí)器T0初始化程序段。解:1〕確定T0初值當(dāng)T0處于工作模式0時(shí),加1計(jì)數(shù)器為13位。定時(shí)時(shí)間:所以:∴T0初值=3192=C78H=0110001111000B即:(TH0)=01100011B=63H(高8位)(TL0)=11000B=18H(低5位)
單片機(jī)原理及接口技術(shù)12/26/2022例6-2:設(shè)定時(shí)器T0用于定時(shí)10ms,晶振為6MHz。試確
TMOD的低四位為T0的控制位
模式0:M1M0=00,
定時(shí)器方式:C/T=0,
門控位不受INT0的影響:GATE=0,
其余位:為0?!?/p>
模式字為
TMOD=00000000B=00H定時(shí)器T1定時(shí)器T0GATEC/TM1M0GATEM1C/TM0TMOD(89H)D7D6D5D4D3D2D1D0解:2)確定TMOD的初值
單片機(jī)原理及接口技術(shù)12/26/2022TMOD的低四位為T0的控制位定時(shí)器T1定時(shí)器T0G解:3〕編寫定時(shí)器T0的初始化程序段主程序:ORG0100HMAIN:MOVSP,#60H;設(shè)堆棧指針MOVTMOD,#00H;選擇工作模式MOVTH0,#63H;送初值MOVTL0,#18HSETBTR0;啟動(dòng)定時(shí) …
單片機(jī)原理及接口技術(shù)12/26/2022解:3〕編寫定時(shí)器T0的初始化程序段例6-3:設(shè)定時(shí)器T1工作于模式0,晶振為6MHz。編程實(shí)現(xiàn):每10ms時(shí)間P1.0取反的程序。解:1〕確定T1初值T1處于工作模式0時(shí),定時(shí)時(shí)間位10ms〔同例2〕。(TH1)=01100011B=63H(高8位)(TL1)=11000B=18H(低5位)2)確定TMOD的初值TMOD的高四位為T1的控制位
模式0:M1M0=00,定時(shí)器方式:C/T=0,
門控位不受INT0的影響:GATE=0,其余位:為0?!?/p>
模式字為
TMOD=00000000B=00H
單片機(jī)原理及接口技術(shù)12/26/2022例6-3:設(shè)定時(shí)器T1工作于模式0,晶振為6MHz。編程實(shí)現(xiàn)解:3〕編寫程序初始化引導(dǎo)程序: ORG0000HRESET:AJMPMAIN;跳過中斷效勞程序區(qū)ORG001BH;中斷效勞程序入口AJMPITOP主程序:ORG0100HMAIN:MOVSP,#60H;設(shè)堆棧指針MOVTMOD,#00H;選擇工作模式MOVTH1,#63H;送初值MOVTL1,#18HSETBP1.0;P1.0置1SETBTR1;啟動(dòng)定時(shí)SETBET1;T
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年貴州省安全員-A證考試題庫及答案
- 公司租用場(chǎng)地合同范本
- 修訂合同范本必要性
- 淺析德育在初中體育教學(xué)中的有效滲透
- 買平房合同范本
- 高中音樂課堂單元教學(xué)設(shè)計(jì)探究
- 東南亞首條高鐵合同范本
- 加工訂做合同范本
- 公司合同范本 知乎
- 2025甘肅省建筑安全員《B證》考試題庫及答案
- PySide學(xué)習(xí)教程
- 數(shù)據(jù)結(jié)構(gòu)英文教學(xué)課件:chapter1 Introduction
- 人教三年級(jí)數(shù)學(xué)下冊(cè)表格式全冊(cè)
- 事業(yè)單位綜合基礎(chǔ)知識(shí)考試題庫 綜合基礎(chǔ)知識(shí)考試題庫.doc
- 優(yōu)秀教研組評(píng)比制度及實(shí)施細(xì)則
- 譯林初中英語教材目錄
- 物業(yè)交付后工程維修工作機(jī)制
- 農(nóng)作物病蟲害專業(yè)化統(tǒng)防統(tǒng)治管理辦法
- JJF 1752-2019全自動(dòng)封閉型發(fā)光免疫分析儀校準(zhǔn)規(guī)范(高清版)
- GB 1886.300-2018 食品安全國家標(biāo)準(zhǔn) 食品添加劑 離子交換樹脂(高清版)
- 食品經(jīng)營單位經(jīng)營場(chǎng)所和設(shè)備布局、操作流程示意圖模板
評(píng)論
0/150
提交評(píng)論