定時(shí)-計(jì)數(shù)器綜合應(yīng)用_第1頁(yè)
定時(shí)-計(jì)數(shù)器綜合應(yīng)用_第2頁(yè)
定時(shí)-計(jì)數(shù)器綜合應(yīng)用_第3頁(yè)
定時(shí)-計(jì)數(shù)器綜合應(yīng)用_第4頁(yè)
定時(shí)-計(jì)數(shù)器綜合應(yīng)用_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第五項(xiàng):計(jì)時(shí)器的綜合應(yīng)用,教學(xué)目的,了解計(jì)時(shí)器的結(jié)構(gòu)和工作原理。掌握計(jì)時(shí)器/計(jì)數(shù)器四種工作模式的特點(diǎn)及應(yīng)用。掌握定時(shí)器/計(jì)數(shù)器的初始化。掌握定時(shí)器/計(jì)數(shù)器和中斷集成應(yīng)用的設(shè)計(jì)方法。如圖所示,在工業(yè)生產(chǎn)線上,零件通過(guò)裝有光電傳感器的傳送帶傳輸。每當(dāng)零件通過(guò)傳感器時(shí),傳感器就會(huì)向單片機(jī)發(fā)送一個(gè)脈沖信號(hào)。每100個(gè)零件,單片機(jī)發(fā)出一個(gè)控制信號(hào),生產(chǎn)線自動(dòng)包裝100個(gè)零件。生產(chǎn)線自動(dòng)包裝控制電路,用發(fā)光二極管模擬打包機(jī);用按鈕模擬零件通過(guò)裝有光電傳感器的傳輸帶傳輸,產(chǎn)生脈沖信號(hào),并向單片機(jī)發(fā)送計(jì)數(shù)脈沖信號(hào)。生產(chǎn)線自動(dòng)包裝控制程序,采用t 0模式2計(jì)數(shù)功能,每100個(gè)外部脈沖計(jì)數(shù)一次,從P1.0輸出一個(gè)

2、低電平脈沖信號(hào)(寬度約0.1毫秒),生產(chǎn)線自動(dòng)包裝系統(tǒng)程序,采用定時(shí)器/計(jì)數(shù)器結(jié)構(gòu),有兩個(gè)16位可編程定時(shí)器/計(jì)數(shù)器T0,T1有計(jì)數(shù)模式和計(jì)時(shí)模式四種工作模式,定時(shí)器/計(jì)數(shù)器原理,16位定時(shí)器/計(jì)數(shù)器本質(zhì)上是一個(gè)1加計(jì)數(shù)器,可實(shí)現(xiàn)計(jì)時(shí)和計(jì)數(shù)兩種功能在計(jì)時(shí)器/計(jì)數(shù)器開(kāi)始工作之前,中央處理器必須將一些命令(稱(chēng)為控制字)寫(xiě)入計(jì)時(shí)器/計(jì)數(shù)器(即初始化)。將初始化操作模式控制字寫(xiě)入定時(shí)器模式寄存器(tmod);工作狀態(tài)控制字(或相關(guān)位)寫(xiě)入定時(shí)器控制寄存器(tcon);將計(jì)時(shí)/計(jì)數(shù)初始值分配給TH0(TH1)和TL0(TL1)。定時(shí)功能,每次機(jī)器周期過(guò)去,計(jì)數(shù)器增加1,直到溢出計(jì)數(shù),即機(jī)器周期計(jì)數(shù)。定時(shí)

3、器的計(jì)時(shí)時(shí)間與系統(tǒng)的時(shí)鐘頻率有關(guān)。由于機(jī)器周期等于12個(gè)時(shí)鐘周期,計(jì)數(shù)頻率應(yīng)為系統(tǒng)時(shí)鐘頻率(即機(jī)器周期)的十二分之一。如果晶體頻率為12兆赫茲,機(jī)器周期為1秒。定時(shí)時(shí)間可以通過(guò)改變定時(shí)器的初始值和適當(dāng)選擇定時(shí)器的長(zhǎng)度(8位、13位或16位)來(lái)調(diào)整。計(jì)數(shù)功能,通過(guò)外部計(jì)數(shù)輸入引腳T0(P3.4)和T1(P3.5)對(duì)外部脈沖信號(hào)進(jìn)行計(jì)數(shù),外部脈沖信號(hào)的下降沿觸發(fā)計(jì)數(shù)。計(jì)數(shù)器在每個(gè)機(jī)器周期的S5P2期間對(duì)引腳輸入電平進(jìn)行采樣。如果在一個(gè)機(jī)器周期的S2P 2期間采樣值為1,在下一個(gè)機(jī)器周期的S2P 2期間采樣值為0,則計(jì)數(shù)器將增加1,并且新的計(jì)數(shù)值將在下一個(gè)機(jī)器周期的S3P1期間加載到計(jì)數(shù)器中。檢測(cè)從

4、1到0的轉(zhuǎn)換需要兩個(gè)機(jī)器周期,外部信號(hào)的最高計(jì)數(shù)頻率是時(shí)鐘頻率的四分之一。如果晶振頻率為12兆赫茲,最高計(jì)數(shù)頻率為0.5兆赫茲。為了確保給定電平在改變前至少采樣一次,外部計(jì)數(shù)脈沖的高電平和低電平保持時(shí)間應(yīng)超過(guò)一個(gè)機(jī)器周期。應(yīng)用定時(shí)器/計(jì)數(shù)器、定時(shí)和延時(shí)控制產(chǎn)生定時(shí)中斷信號(hào),設(shè)計(jì)不同頻率的各種信號(hào)源;產(chǎn)生定時(shí)掃描信號(hào),掃描鍵盤(pán)獲得控制信號(hào),掃描顯示器連續(xù)顯示數(shù)據(jù)。在測(cè)量外部脈沖時(shí),對(duì)外部脈沖信號(hào)進(jìn)行計(jì)數(shù)可以測(cè)量脈沖信號(hào)的寬度和周期,也可以實(shí)現(xiàn)自動(dòng)計(jì)數(shù)。在監(jiān)控系統(tǒng)工作方面,定期對(duì)系統(tǒng)進(jìn)行掃描。當(dāng)系統(tǒng)工作異常時(shí),系統(tǒng)會(huì)自動(dòng)復(fù)位并重新啟動(dòng)以恢復(fù)正常工作。定時(shí)器模式寄存器TMOD TMOD用于設(shè)置T0和

5、T1的工作模式。TMOD格式:門(mén):門(mén)位。GATE=0:軟件啟動(dòng)定時(shí)器,指令將TCON的TR1(TR0)設(shè)置為啟動(dòng)定時(shí)器1(定時(shí)器0)。GATE=1:軟件和硬件一起啟動(dòng)定時(shí)器。當(dāng)通過(guò)指令將TCON的TR1(TR0)設(shè)為1時(shí),只有當(dāng)外部中斷INT0(INT1)引腳輸入高電平時(shí),定時(shí)器1(定時(shí)器0)才能啟動(dòng)。定時(shí)器模式寄存器TMOD,C/T:功能選擇位。當(dāng)C/T=0時(shí),它作為計(jì)時(shí)器工作。當(dāng)C/T=1時(shí),它作為計(jì)數(shù)器工作。M1和M0:模式選擇位。定時(shí)器操作模式選擇位定義、定時(shí)器控制寄存器TCON、TCON用于控制定時(shí)器的啟動(dòng)和停止,并保存T0和T1的溢出和中斷標(biāo)志。TCON的格式是: TF1(TCON

6、.7):定時(shí)器1溢出標(biāo)志位。當(dāng)定時(shí)器1滿(mǎn)溢時(shí),硬件自動(dòng)將TF1置1,并應(yīng)用中斷。處理該標(biāo)志位有兩種方式:在中斷模式下工作,即將TF1置1,申請(qǐng)中斷,響應(yīng)中斷后,執(zhí)行中斷服務(wù)程序,硬件自動(dòng)清除TF1;在查詢(xún)模式下工作,即通過(guò)查詢(xún)?cè)撐皇欠駷?來(lái)判斷是否發(fā)生溢出。TF1設(shè)置為1后,必須使用軟件清除TF1。定時(shí)器控制寄存器TCON,TR1(TCON.6):定時(shí)器1啟動(dòng)-停止控制位。當(dāng)門(mén)=0時(shí),軟件將TR1設(shè)置為啟動(dòng)定時(shí)器1,如果被軟件清零,則停止定時(shí)器1。當(dāng)GATE=1時(shí),軟件將TR1設(shè)置為1,外部中斷INT1的引腳輸入高電平以啟動(dòng)定時(shí)器1。TF0(TCON.5):定時(shí)器0溢出標(biāo)志位。其功能與TF1相

7、同。TR0(TCON.4):定時(shí)器0啟??刂莆?。其功能與TR1相同。定時(shí)器/計(jì)數(shù)器0具有模式0的邏輯結(jié)構(gòu),它構(gòu)成一個(gè)13位定時(shí)器/計(jì)數(shù)器,定時(shí)器1的結(jié)構(gòu)和操作與定時(shí)器0完全相同。當(dāng)選通位GATE=0時(shí),“或”門(mén)的輸出始終為1,“或”門(mén)打開(kāi),TR0控制定時(shí)器/計(jì)數(shù)器的啟動(dòng)和停止。當(dāng)定時(shí)器/計(jì)數(shù)器工作在模式0時(shí),軟件將TR0設(shè)置為1,打開(kāi)控制開(kāi)關(guān),啟動(dòng)定時(shí)器0,13位1加計(jì)數(shù)器根據(jù)定時(shí)初始值或計(jì)數(shù)初始值計(jì)數(shù)1;軟件將TR0清零,關(guān)閉控制開(kāi)關(guān),停止定時(shí)器0,增加1個(gè)計(jì)數(shù)器停止計(jì)數(shù);當(dāng)計(jì)數(shù)溢出時(shí),13位加1計(jì)數(shù)器為0,TF0由硬件自動(dòng)設(shè)置,并請(qǐng)求中斷。同時(shí),13位加1計(jì)數(shù)器繼續(xù)從0開(kāi)始計(jì)數(shù)。模式0應(yīng)用

8、示例,在P1.0輸出周期為1 ms(頻率為1千赫)的方波,用定時(shí)器1模式0設(shè)計(jì)程序,晶體振蕩器頻率為12千赫。周期為1毫秒的方波可以通過(guò)每500秒反轉(zhuǎn)P1.0獲得,T1的計(jì)時(shí)時(shí)間為t=500秒;對(duì)于定時(shí)器1模式0,TMOD的高4位中的M1M0應(yīng)該取00;將其設(shè)置為軟件啟動(dòng)定時(shí)器,取GATE為0;有了計(jì)時(shí)功能,C/T取0。TMOD是00H。晶體振蕩器的頻率為12兆赫茲,T機(jī)=12/fosc=12/(12106)=1s定時(shí)初始值X=213-T/T機(jī)=213-500/1=8192-500=7692=1e 0ch=11100001100 b由于TL1高,校正后的初始定時(shí)值為:x=11110000000

9、1100b=f00ch,工作模塊13為氖要求如下:第一,從燈D1開(kāi)始,八個(gè)燈一次打開(kāi),即D1打開(kāi)1秒后關(guān)閉;D2關(guān)閉1秒鐘,D8關(guān)閉1秒鐘;然后每隔一段時(shí)間閃爍三次,即D1、D3、D5和D7打開(kāi)一秒鐘,然后關(guān)閉;D2、D4、D6和D8關(guān)閉一秒鐘,重復(fù)三次;循環(huán)上述過(guò)程(晶體頻率為6MHz)。霓虹燈模擬控制電路,與項(xiàng)目2中的發(fā)光二極管循環(huán)照明相同。霓虹燈模擬控制程序,編程分析(整個(gè)控制過(guò)程分為兩個(gè)階段):循環(huán)照明階段輸出控制代碼8次,初始控制代碼為7FH(D1照明),下一個(gè)控制代碼可由前一個(gè)控制代碼循環(huán)向右移動(dòng)得到(即8個(gè)控制代碼分別為7FH、0BFH、0FH、0EFH和0F7H),間隔閃爍階段

10、輸出控制代碼6次, 初始控制碼為0AAH,下一個(gè)控制碼可通過(guò)反轉(zhuǎn)前一個(gè)控制碼獲得(即0AAH和55H分別交替3次); 任意兩個(gè)控制碼的輸出間隔為1,因此可以使用T0(或T1)計(jì)時(shí)功能,根據(jù)每1秒后的相位標(biāo)志判斷并輸出下一個(gè)控制碼。氖模擬控制程序,在模式1中使用T1定時(shí)器(晶體頻率為6MHz),最大T1計(jì)時(shí)為131.072毫秒,為了計(jì)時(shí)1秒,采用硬件計(jì)時(shí)加軟件計(jì)數(shù)模式,即設(shè)置T1計(jì)時(shí)100毫秒,軟件計(jì)數(shù)10次。分布如下:i10:初始值為10的定時(shí)軟件計(jì)數(shù)器;F0:控制級(jí)標(biāo)志位,F(xiàn)0=0表示周期點(diǎn)亮級(jí),F(xiàn)0=1表示間隔閃爍級(jí);I8、i6:計(jì)數(shù)器,用于在兩個(gè)控制階段輸出控制代碼,初始值為8和6;Mo

11、d1、mod2:兩級(jí)控制代碼寄存器的初始值分別為0 x01和0 xAA。氖模擬控制程序,定時(shí)器/計(jì)數(shù)器模式1,定時(shí)器/計(jì)數(shù)器是一個(gè)16位加1的計(jì)數(shù)器,由TH0中的8位和TL0中的8位組成。模式1基本上類(lèi)似于模式0,最大的區(qū)別在于模式1中1+計(jì)數(shù)器的位數(shù)是16位。定時(shí)器/計(jì)數(shù)器0模式1的邏輯結(jié)構(gòu)如圖所示。在定時(shí)器/計(jì)數(shù)器模式2下,定時(shí)器/計(jì)數(shù)器是一個(gè)8位加1計(jì)數(shù)器,可以自動(dòng)加載初始值。TH0中的8位用于存儲(chǔ)定時(shí)初始值或計(jì)數(shù)初始值,TL0中的8位用于增加1個(gè)計(jì)數(shù)器。1+計(jì)數(shù)器溢出后,硬件自動(dòng)將TF0設(shè)置為1,并自動(dòng)將計(jì)時(shí)初始值或存儲(chǔ)在TH0中的計(jì)數(shù)初始值重新加載到TL0中繼續(xù)計(jì)數(shù)。定時(shí)器/計(jì)數(shù)器0

12、模式2的邏輯結(jié)構(gòu)如圖所示,T0模式3的邏輯結(jié)構(gòu)分為兩個(gè)獨(dú)立的8位加1計(jì)數(shù)器TH0和TL0。TL0可用于計(jì)時(shí)和計(jì)數(shù)。TH0只能用于計(jì)時(shí)。T0模式3的結(jié)構(gòu)特點(diǎn),1加計(jì)數(shù)器TL0占用T0中除TH0以外的所有資源,原T0控制位和信號(hào)引腳的控制功能與模式0和模式1相同;與模式2相比,自動(dòng)將計(jì)時(shí)初始值或計(jì)數(shù)初始值重新載入TL0是不可能的,但必須由程序完成。1加計(jì)數(shù)器TH0只能用于簡(jiǎn)單的內(nèi)部定時(shí)功能,它占用原始T1的控制位TR1和TF1,也占用T1中斷源。T0模式3中T1的邏輯結(jié)構(gòu)、T0模式3中T1的結(jié)構(gòu)特征以及T1不能在模式3中工作,因?yàn)門(mén)0在模式3中工作時(shí),其控制位TR1、TF1和中斷源被T0占用。T1

13、可以在模式0、模式1和模式2下工作,但其輸出直接發(fā)送到串行端口;設(shè)置T1的工作模式,T1將自動(dòng)開(kāi)始計(jì)數(shù);要停止計(jì)數(shù),將T1設(shè)置為模式3;T1通常用作串口的波特率發(fā)生器,在模式2下工作會(huì)使程序更簡(jiǎn)單。技能訓(xùn)練5-1 0-59秒數(shù)字顯示,利用LED動(dòng)態(tài)掃描顯示和定時(shí)器計(jì)時(shí)功能,完成0-59秒數(shù)字顯示(定時(shí)器)的設(shè)計(jì)與實(shí)現(xiàn)。0-59秒數(shù)字顯示電路設(shè)計(jì)0-59秒數(shù)字顯示程序設(shè)計(jì),0-59秒數(shù)字顯示電路設(shè)計(jì),兩個(gè)普通陰極數(shù)碼管的發(fā)光二極管動(dòng)態(tài)掃描顯示電路通過(guò)74LS245芯片的7位控制引腳,分別連接到單片機(jī)P0端口的7個(gè)引腳P1.0P1.6,數(shù)碼管的公共端分別連接到P1端口的P1.0和P1.1引腳。工作模塊14電子鐘的設(shè)計(jì)與實(shí)現(xiàn),進(jìn)一步掌握定時(shí)器的使用和編程方法,進(jìn)一步掌握中斷處理器的編程方法,并利用中央處理器定時(shí)器和6LED

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論