版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第二講定時器計數(shù)器及實驗第1頁,課件共39頁,創(chuàng)作于2023年2月
定時/計數(shù)器及實驗本講內(nèi)容:定時/計數(shù)器的概念MCS51單片機的定時/計數(shù)器定時器的工作模式及控制方法課堂實驗第2頁,課件共39頁,創(chuàng)作于2023年2月定時/計數(shù)器的概念計數(shù)器的定義:可以計量輸入時鐘的個數(shù),結(jié)果以二進制表示,存放在若干字節(jié)(取決于計數(shù)器的長度)的RAM中,該部分存儲單元稱為計數(shù)寄存器。精確的時鐘信號+計數(shù)器=定時器第3頁,課件共39頁,創(chuàng)作于2023年2月MCS51的定時/計數(shù)器MSC51片內(nèi)有兩個16位定時器/計數(shù)器,即定時器0(T0)和定時器1(T1),它們都有定時和事件計數(shù)的功能。其中,T0由兩個8位特殊功能寄存器TH0和TL0構(gòu)成;T1由TH1和TL1構(gòu)成。每個定時器都可由軟件設(shè)置為定時工作方式或計數(shù)工作方式及其他靈活多樣的可控功能方式(指的是定時器的4種工作模式)。第4頁,課件共39頁,創(chuàng)作于2023年2月定時工作方式在作定時器使用時,輸入的時鐘脈沖是由晶體振蕩器的輸出經(jīng)12分頻后得到的,所以定時器也可看作是對計算機機器周期的計數(shù)器(因為每個機器周期包含12個振蕩周期,故每一個機器周期定時器加1,可以把輸入的時鐘脈沖看成機器周期信號)。故其頻率為晶振頻率的1/12。如果晶振頻率為12MHZ,則定時器每接收一個輸入脈沖的時間為1us。第5頁,課件共39頁,創(chuàng)作于2023年2月計數(shù)工作方式設(shè)置為計數(shù)工作方式時,通過引腳T0(P3.4)和T1(P3.5)對外部脈沖信號計數(shù)。單片機采樣T0或T1的輸入電平,若在前一個機器周期采樣為1,下一個機器周期采樣值為0,則計數(shù)器加1,所以最高計數(shù)頻率為振蕩頻率的1/24。為了確保某個電平在變化之前至少被采樣一次,要求電平保持時間至少是一個完整的機器周期。第6頁,課件共39頁,創(chuàng)作于2023年2月小結(jié)不管是定時還是計數(shù)工作方式,定時器T0或T1在對內(nèi)部時鐘或?qū)ν獠渴录嫈?shù)時,不占用CPU時間,除非定時器/計數(shù)器益處,才可能中斷CPU的當(dāng)前操作。由此可見,定時器是單片機中效率高而且工作靈活的部件。第7頁,課件共39頁,創(chuàng)作于2023年2月中斷講解中斷的概念在程序運行期間,自動響應(yīng)非預(yù)期的緊急事件的發(fā)生。通常是為了避免查詢方式的程序設(shè)計。用得最多的是外部中斷與定時器中斷。外部中斷:按鍵程序定時器中斷:定時與循環(huán)掃描等應(yīng)用場合中斷服務(wù)程序中斷發(fā)生時,主程序暫停,跳轉(zhuǎn)到中斷服務(wù)程序,稱為“響應(yīng)中斷”。執(zhí)行完畢后返回主程序繼續(xù)運行。中斷服務(wù)程序不能被調(diào)用、沒有返回值,編寫程序時不知道會在程序的何處發(fā)生中斷。第8頁,課件共39頁,創(chuàng)作于2023年2月中斷講解C語言中采用一類特殊的函數(shù)來實現(xiàn)中斷服務(wù)程序,叫做“中斷服務(wù)函數(shù)”,格式如下void函數(shù)名()interruptN函數(shù)名可以任意,但一般要用一個有意義的函數(shù)名,例如int0_srv;N代表中斷向量編號,外部INT0的中斷服務(wù)函數(shù)中斷向量號為0,外部中斷INT1的N=2,定時器T0的N=1,定時器T1的N=3。第9頁,課件共39頁,創(chuàng)作于2023年2月如何使用定時器?第10頁,課件共39頁,創(chuàng)作于2023年2月定時器的控制MCS51定時/計數(shù)器相關(guān)的寄存器MCS51定時器/計數(shù)器有四種工作模式,其工作方式的選擇及控制都由兩個特殊功能寄存器(TMOD和TCON)的內(nèi)容來決定。TMOD和TCON寄存器在復(fù)位時其每一位均清零。定時器的方式寄存器TMOD特殊功能寄存器TMOD為定時器的方式控制寄存器,寄存器中每位的定義如圖所示。高4位用于定時器1,低4位用于定時器0。第11頁,課件共39頁,創(chuàng)作于2023年2月定時器的方式寄存器TMODM1M0:定時器/計數(shù)器四種工作方式選擇第12頁,課件共39頁,創(chuàng)作于2023年2月定時器的方式寄存器TMODC/T:定時器方式或計數(shù)器方式選擇位。C/T=1時,為計數(shù)器方式;C/T=0時,為定時器方式。GATE定時器/計數(shù)器運行控制位,用來確定對應(yīng)的外部中斷請求引腳(INT0,INT1)是否參與T0或T1的操作控制。當(dāng)GATE=0時,只要定時器控制寄存器TCON中的TR0(或TR1)被置1時,T0(或T1)被允許開始計數(shù)(TCON各位含義見后面敘述);當(dāng)GATE=1時,不僅要TCON中的TR0或TR1置位,還需要P3口的P3.2或P3.3引腳為高電平,才允許計數(shù)。第13頁,課件共39頁,創(chuàng)作于2023年2月定時器控制寄存器TCONTR0:T0的運行控制位。該位置1或清0用來實現(xiàn)啟動計數(shù)或停止計數(shù)。TF0:T0的溢出中斷標(biāo)志位。當(dāng)T0計數(shù)溢出時由硬件自動置1;在CPU中斷處理時由硬件清為0。TR1:T1的運行控制位,功能同TR0。TF1:T1的溢出中斷標(biāo)志位,功能同TF0。第14頁,課件共39頁,創(chuàng)作于2023年2月模式1及應(yīng)用MCS51定時器工作于方式1當(dāng)M1:M0設(shè)置為01時,定時器選定為方式1工作。在這種方式下,由TH0和TL0組成一個16位計數(shù)器。當(dāng)GATE=0時,只要TCON中的TR0為1,TL0及TH0組成的16位計數(shù)器就開始計數(shù).當(dāng)GATE=1時,此時僅TR0=1仍不能使計數(shù)器計數(shù),還需要P3.2引腳為1才能使計數(shù)器工作。由此可知,當(dāng)GATE=1和TR0=1時,TH0+TL0是否計數(shù)取決于P3.2引腳的信號,當(dāng)P3.2由0變1時,開始計數(shù);當(dāng)P3.2由1變0時,停止計數(shù),這樣就可以用來測量在P3.2端出現(xiàn)的脈沖寬度。當(dāng)16位計數(shù)器從0或設(shè)定的初值,加1到全“1”以后,再加1就產(chǎn)生溢出。這時,置TCON的TF0位為1,同時把計數(shù)器變?yōu)槿?”第15頁,課件共39頁,創(chuàng)作于2023年2月MCS51定時器使用步驟(工作于方式1)初始化TMOD,設(shè)置工作模式。根據(jù)定時間隔,計算并初始化TH0與TL0的數(shù)值。計算公式如下。其中FOSC是晶振頻率(單位:Hz),T是定時間隔(單位:S)如果中斷方式使用定時器,則需置位中斷允許控制寄存器(IE)中的ET0或ET1,而且要打開全局中斷(EA=1)。同時要寫好中斷服務(wù)函數(shù)。將TR0或TR1置位,啟動定時器。第16頁,課件共39頁,創(chuàng)作于2023年2月定時間隔計算公式的推導(dǎo)過程計算時鐘周期:MCS51的定時器的時鐘源就是CPU的工作時鐘,因此時鐘周期t。例如晶振頻率24MHz時,t=0.5*10-6S計算定時間隔經(jīng)歷的時鐘周期數(shù)N。例如期望的定時間隔是10mS,則N=20000。計算TH0:TL0的初值。對于T=10mS,F(xiàn)OSC=24MHz,結(jié)果為45535第17頁,課件共39頁,創(chuàng)作于2023年2月模式0及應(yīng)用該模式結(jié)構(gòu)與操作幾乎與模式0完全相同,唯一的差別是:16位寄存器(TH0和TL0)只用了13位。其中,TL0的高3位未使用,其余位為整個13位的低5位,TH0占高8位。當(dāng)TL0的低5位溢出時,向TH0進位;TH0溢出時,向中斷標(biāo)志位TF0進位,申請中斷。模式0的最大定時時間:模式1的最大定時時間:第18頁,課件共39頁,創(chuàng)作于2023年2月模式1實例程序voidinit_tc0(void)//24MHz時定時10mS{ TMOD|=0x01;//定時器模式 TH0=(65535-20000)>>8;//初值高8位 TL0=(65535-20000)&0xff;//初值低8位EA=1;//打開全局中斷 ET0=1;//開定時中斷 TR0=1;//啟動定時器}voidtc0_srv(void)interrupt1//定時器0中斷服務(wù)程序{ TH0=(65535-20000)>>8;//重置初值高8位 TL0=(65535-20000)&0xff;//重置初值低8位}voidmain(void){init_tc0();while(1);//條件總為真,死循環(huán)}第19頁,課件共39頁,創(chuàng)作于2023年2月蜂鳴器實驗一
中斷方式使用定時器實驗內(nèi)容:使用定時器T0定時,使蜂鳴器每隔1S響一次,一次響一秒鐘。第20頁,課件共39頁,創(chuàng)作于2023年2月蜂鳴器實驗一
中斷方式使用定時器第21頁,課件共39頁,創(chuàng)作于2023年2月蜂鳴器實驗一
中斷方式使用定時器第22頁,課件共39頁,創(chuàng)作于2023年2月蜂鳴器實驗一
中斷方式使用定時器為了使OUT3驅(qū)動蜂鳴器,鎖存器U22的所存使能端要為高電平,從而CS4和WR要同時為低電平,所以對P2和P3引腳的操作為:P3&=~(1<<6);P2=0x80;第23頁,課件共39頁,創(chuàng)作于2023年2月#include<reg52.h>//必要的頭文件#include<absacc.h>//必要的頭文件sbitBUZ_BIT=P0^3;//控制蜂鳴器的IO口unsignedintcnt;voidinit_tc0(void)//24MHz時定時10mS{ TMOD|=0x01;//定時器模式 TH0=(65535-20000)>>8;//初值高8位 TL0=(65535-20000)&0xff;//初值低8位EA=1;//打開全局中斷 ET0=1;//開定時中斷 TR0=1;//啟動定時器}蜂鳴器實驗一
中斷方式使用定時器第24頁,課件共39頁,創(chuàng)作于2023年2月voidtc0_srv(void)interrupt1//定時器0中斷服務(wù)程序{ TH0=(65535-20000)>>8;//重置初值高8位 TL0=(65535-20000)&0xff;//重置初值低8位 if(cnt<100)//10mSX100=1S {cnt++;} else {BUZ_BIT=~BUZ_BIT; cnt=0;//計數(shù)歸零}}voidmain(void){init_tc0(); P3&=~(1<<6); P2=0x88;//此代碼用于選通蜂鳴器,while(1);//條件總為真,死循環(huán)}蜂鳴器實驗一
中斷方式使用定時器第25頁,課件共39頁,創(chuàng)作于2023年2月流水燈實驗二實驗內(nèi)容:使八個發(fā)光二極管每隔1S鐘亮一次。
關(guān)閉蜂鳴器的程序代碼:P3&=~(1<<6);P2=0x80;BUZ_BIT=0;P3|=(1<<6);P2=0xE0;P0=0xff;第26頁,課件共39頁,創(chuàng)作于2023年2月數(shù)碼管實驗三
定時中斷方式掃描數(shù)碼管八段數(shù)碼管由八段LED構(gòu)成,各LED陰極或陽極并在一起,稱為“位選線”:共陰、共陽,其余8個引腳各自引出,稱為“段選線”,各段可以分別控制。段碼表將需要的字形對應(yīng)的各個段點亮,即可顯示對應(yīng)的數(shù)字。一般將數(shù)字對應(yīng)的段列表做成數(shù)組的形式,稱為段碼表。第27頁,課件共39頁,創(chuàng)作于2023年2月數(shù)碼管實驗三
定時中斷方式掃描數(shù)碼管多位合一的數(shù)碼管將多個八段數(shù)碼管的段選線分別并在一起,位選線引出。第28頁,課件共39頁,創(chuàng)作于2023年2月靜態(tài)顯示與掃描顯示靜態(tài)顯示共陽數(shù)碼管:公共端接Vcc,用單片機的一個8位IO(以P0為例)口接在段選線上,P0輸出相應(yīng)段碼的反碼即可顯示相應(yīng)的數(shù)字。共陰數(shù)碼管:公共端接地,用單片機的一個8位IO(以P2為例)口接在段選線上,P2輸出相應(yīng)段碼即可顯示相應(yīng)的數(shù)字。MCS51的IO口拉電流能力很弱,不推薦此種接法。掃描顯示將多位數(shù)碼管的共陰/共陽數(shù)碼管的公共端也用IO口加以控制,各個位輪番顯示,利用人眼的視覺暫留效應(yīng),使得看上去所有位一起亮。位選線上的電流可能會很大(例如8位數(shù)碼管一起亮?xí)r,相當(dāng)于64個LED一起發(fā)光的電流),一般要用三極管或者數(shù)字芯片驅(qū)動。第29頁,課件共39頁,創(chuàng)作于2023年2月學(xué)習(xí)板上的數(shù)碼管掃描顯示電路數(shù)碼管實驗三
定時中斷方式掃描數(shù)碼管第30頁,課件共39頁,創(chuàng)作于2023年2月數(shù)碼管實驗三
定時中斷方式掃描數(shù)碼管第31頁,課件共39頁,創(chuàng)作于2023年2月動態(tài)掃描程序代碼for(com=0;com<8;com++)//位選計數(shù) { P2=0x00;P3&=0xbf; P0=~(1<<com);//共陰數(shù)碼管,按位取反 P2=0x20;P3&=0xbf;P0=scandata[com];//要顯示的值 my_delay_1ms(1);//延時1mSP0=0;//消隱,防止重影 }第32頁,課件共39頁,創(chuàng)作于2023年2月動態(tài)掃描:使8個數(shù)碼管分別顯示0,1,2,3,4,5,6,7使用定時器:使8個數(shù)碼管同時從0顯示到7,時間間隔為1S。數(shù)碼管實驗三
定時中斷方式掃描數(shù)碼管第33頁,課件共39頁,創(chuàng)作于2023年2月模式2及應(yīng)用模式2把TL0(或TL1)配置成一個可以自動重裝載的8位定時器/計數(shù)器。TL0計數(shù)溢出時,不僅使溢出中斷標(biāo)志位TF0置1,而且還自動把TH0中的內(nèi)容重新裝載到TL0中。這里TL0用作8位計數(shù)器,TH0用以保存初值。在程序初始化時,TL0和TH0由軟件賦予相同的初值。一旦TL0計數(shù)溢出,便置位TF0,并將TH0中的初值自動裝入TL0,繼續(xù)計數(shù),循環(huán)重復(fù)。第34頁,課件共39頁,創(chuàng)作于2023年2月模式2及應(yīng)用用于定時工作方式時,其定時時間為:用于計數(shù)工作方式時,最大計數(shù)長度為256(個外部脈沖)。這種工作模式可以省去用戶軟件中重裝常數(shù)的語句,可產(chǎn)生相當(dāng)精確的定時時間。第35頁,課件共39頁,創(chuàng)作于2023年2月模式2程序?qū)嵗齰oidinit_tc0(void)//24MHz時定時0.1mS{ TMOD|=0x02;//定時器模式 TH0=56;//初值高8位 TL0=
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年無人機安防監(jiān)控系統(tǒng)采購合同2篇
- 2025版委托持股業(yè)務(wù)盡職調(diào)查與風(fēng)險評估合同3篇
- 2025版塔吊租賃合同解除及賠償協(xié)議6篇
- 2025版小企業(yè)勞動合同修訂與完善建議5篇
- 光纖通信在高速鐵路信號系統(tǒng)中的應(yīng)用考核試卷
- 《企業(yè)文化圣經(jīng)》課件
- 初中生財經(jīng)素養(yǎng)的培養(yǎng)與財經(jīng)知識普及教育的實踐探索策略考核試卷
- 人力資源管理培訓(xùn)課程課件-高效招聘與面試技巧
- 2025版高端商務(wù)區(qū)門面房使用權(quán)購買合同4篇
- 2025版商業(yè)地產(chǎn)物業(yè)委托居間合同范本3篇
- 2024年蘇州工業(yè)園區(qū)服務(wù)外包職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測試歷年參考題庫含答案解析
- 人教版初中語文2022-2024年三年中考真題匯編-學(xué)生版-專題08 古詩詞名篇名句默寫
- 2024-2025學(xué)年人教版(2024)七年級(上)數(shù)學(xué)寒假作業(yè)(十二)
- 山西粵電能源有限公司招聘筆試沖刺題2025
- 醫(yī)療行業(yè)軟件系統(tǒng)應(yīng)急預(yù)案
- 使用錯誤評估報告(可用性工程)模版
- 《精密板料矯平機 第2部分:技術(shù)規(guī)范》
- 2024光伏發(fā)電工程交流匯流箱技術(shù)規(guī)范
- 旅游活動碳排放管理評價指標(biāo)體系構(gòu)建及實證研究
- 2022年全國職業(yè)院校技能大賽-電氣安裝與維修賽項規(guī)程
- 2024年黑龍江省政工師理論知識考試參考題庫(含答案)
評論
0/150
提交評論