




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、實驗十 定時器程序?qū)嶒瀸嶒災康模毫私?51 單片機工作原理、熟悉其使用方法實驗所用器材:電腦、CAR-C51 開發(fā)板、STC12C5A60S2、USB 鏈接線、實驗安裝光盤等實驗現(xiàn)象:LED 閃動,改變定時器定時時間,LED 閃動的頻率有變化實驗步驟:1. Keil 軟件,添加音樂世上只有好世上只有好.uvproj2. 編譯后,通過軟件把工程的 HEX 文件到開發(fā)板中改3. 觀察 P2.0 端口對應的 LED 燈閃動頻率,改變定時器定時時間,再觀察閃動頻率關(guān)鍵知識講解:80C51 單片機內(nèi)部設有兩個 16 位的可編程定時器/計數(shù)器??删幊痰囊馑际侵钙涔δ埽ㄈ绻ぷ鞣绞?、定時時間、量程、啟動方式等
2、)均可由指令來確定和改變。在定時器/計數(shù)器中除了有兩個 16位的計數(shù)器之外,還有兩個特殊功能寄存器(控制寄存器和方式寄存器)。從上面定時器/計數(shù)器的結(jié)構(gòu)圖中可以看出,16 位的定時/計數(shù)器分別由兩個 8 位寄存器組成,即:T0 由TH0 和TL0 構(gòu)成;T1 由TH1 和 TL1。其地址依次為 8AH-8DH。每個寄存器均可單獨。這些寄存器是用于存放定時或計數(shù)初值的。此外,其內(nèi)部還有一個 8 位的定時器方式寄存器 TMOD 和一個 8 位的定時控制寄存器TCON。這些寄存器之間是通過內(nèi)部總線和控制邏輯電路連接起來的。TMOD 主要是用于選定定時器的工作方式;TCON 主要是用于控制定時器的啟動
3、停止,此外 TCON 還可以保存 T0、T1 的溢出和中斷標志。當定時器工作在計數(shù)方式時,外部事件通過引腳 T0(P3.4)和 T1(P3.5)輸入。定時計數(shù)器的原理:16 位的定時器/計數(shù)器實質(zhì)上就是一個加 1 計數(shù)器,其控制電路受軟件控制、切換。當定時器/計數(shù)器為定時工作方式時,計數(shù)器的加 1 信號由振蕩器的 12 分頻信號產(chǎn)生,即每過一個機器周期,計數(shù)器加 1,直至計滿溢出為止。顯然,定時器的定時時間與系統(tǒng)的振蕩頻率有關(guān)。因一個機器周期等于 12 個振蕩周期,所以計數(shù)頻率fcount=1/12osc。如果晶振為 12MHz,則計數(shù)周期為:T=1/(12106)Hz1/12=1s這是最短的
4、定時周期。若要延長定時時間,則需要改變定時器的初值,并要適當選擇定時器的長度(如 8 位、13 位、16 位等)。當定時器/計數(shù)器為計數(shù)工作方式時,通過引腳 T0 和 T1 對外部信號計數(shù),外部脈沖的下降沿將觸發(fā)計數(shù)。計數(shù)器在每個機器周期的 S5P2 期間采樣引腳輸入電平。若一個機器周期采樣值為 1,下一個機器周期采樣值為 0,則計數(shù)器加 1。此后的機器周期S3P1 期間,新的計數(shù)值裝入計數(shù)器。所以檢測一個由 1 至 0 的跳變需要兩個機器周期,故外部事年的最高計數(shù)頻率為振蕩頻率的 1/24。例如,如果選用 12MHz 晶振,則最高計數(shù)頻率為 0.5MHz。雖然對外部輸入信號的占空比無特殊要求
5、,但為了確保某給定電平在變化前至少被采樣一次,外部計數(shù)脈沖的與低電平保持時間均需在一個機器周期以上。當 CPU 用軟件給定時器設置了某種工作方式之后,定時器就會按設定的工作方式獨立運行,不再占用 CPU 的操作時間,除非定時器計滿溢出,才可能中斷 CPU 當前操作。CPU 也可以重新設置定時器工作方式,以改變定時器的操作。由此可見,定時器是單片機中效率高而且工作靈活的部件。綜上所述,已知定時器/計數(shù)器是一種可編程部件,所以在定時器/計數(shù)器開始工作之前,CPU 必須將一些命令(稱為控制字)寫入定時/計數(shù)器。將控制字寫入定時/計數(shù)器的過程叫定時器/計數(shù)器初始化。在初始化過程中,要將工作方式控制字寫
6、入方式寄存器,工作狀態(tài)字(或相關(guān)位)寫入控制寄存器,賦定時/計數(shù)初值。下面就控制字的格式及各位的主要功能與大家詳細的講解??刂萍拇嫫?定時器計數(shù)器 T0 和 T1 有 2 個控制寄存器-TMOD 和 TCON,它們分別用來設置各個定時器計數(shù)器的工作方式,選擇定時或計數(shù)功能,控制啟動運行,以及作為運行狀態(tài)的標志等。其中,TCON 寄存器中另有 4 位用于中斷系統(tǒng)。定時器/計數(shù)器方式寄存器 TMOD:定時器方式控制寄存器 TMOD 在特殊功能寄存器中,字節(jié)地址為 89H,無位地址。TMOD 的格式如下圖所示。由圖可見,TMOD 的高 4 位用于 T1,低 4 使用于T0,4 種符號的含義如下:GA
7、TE:門控制位。GATE 和軟件控制位 TR、外部引腳信號的狀態(tài),共同控制定時器計數(shù)器的打開或關(guān)閉。CT:定時器計數(shù)器選擇位。C/T1,為計數(shù)器方式;CT0,為定時器方式。M1M0:工作方式選擇位,定時器計數(shù)器的 4 種工作方式由M1M0 設定。工作方式功能描述0 0工作方式 0位計數(shù)器工作方式位計數(shù)器工作方式自動再裝入位計數(shù)器1 1工作方式 3定時器 0:分成兩個 8 位計數(shù)器,定時器 1:停止計數(shù)定時器/計數(shù)器方式控制寄存器 TMOD 不能進行位尋址,只能用字節(jié)傳送指令設置定時器工作方式,低半字節(jié)定義為定時器 0,高半字節(jié)定義為定時器 1。復位時,TMOD 所有為 0。例:設定定時器 1
8、為定時工作方式,要求軟件啟動定時器 1按方式 2 工作。定時器 0 為計數(shù)方式,要求由軟件啟動定時器 0,按方式 1 工作。怎么來實現(xiàn)這個要求呢?大家先看上面 TMOD 寄存器各位的分布圖第一個問題:控制定時器 1 工作在定時方式或計數(shù)方式是哪個位?通過前面的學習,已知道,C/T 位(D6)是定時或計數(shù)功能選擇位,當 C/T=0 時定時/計數(shù)器就為定時工作方式。所以要使定時/計數(shù)器 1 工作在定時器方式就必需使 D6 為 0。第二個問題:設定定時器 1 按方式 2 工作。上表中可以看出,要使定時/計數(shù)器 1 工作在方式 2,M0(D4) M1(D5)的值必須是 10。第三個問題:設定定時器 0
9、 為計數(shù)方式。與第一個問題一樣,定時/計數(shù)器 0 的工作方式選擇位也是 C/T(D2),當 C/T=1 時,就工作在計數(shù)器方式。第四個問題:由軟件啟動定時器 0,前面已講過,當門控位GATE=0 時,定時/計數(shù)器的啟停就由軟件控制。第五個問題:設定定時/計數(shù)器工作在方式 1,使定時/計數(shù)器 0工作在方式 1,M0(D0) M1(D1)的值必須是 0 1。從上面的分析可以知道,只要將 TMOD 的各位,按規(guī)定的要求設置好后,定時器/計靈敏器就會按預定的要求工作。分析的這個例子最后各位的情況如下:D7 D6 D5 D4 D3 D2 D1 D00 0 1 0 0 1 0 1二進制數(shù) 00100101
10、=進制數(shù) 25H。所以執(zhí)行 MOV TMOD,#25H這條指令就可以實現(xiàn)上述要求。定時器/計數(shù)器控制寄存器 TCON:TCON 在特殊功能寄存器中,字節(jié)地址為 88H,位地址(由低位到)為 88H 一 8FH,由于有位地址,十分便于進行位操作。TCON 的作用是控制定時器的啟、停,標志定時器溢出和中斷情況。TCON 的格式如下圖所示。其中,TFl,TRl,TF0 和 TR0 位用于定時器計數(shù)器;IEl,IT0 和IT0 位用于中斷系統(tǒng)。各位定義如下:TF1:定時器 1 溢出標志位。當字時器 1 計滿溢出時,由硬件使TF1 置“1”,并且申請中斷。進入中斷服務程序后,由硬件自動清“0”,在查詢方
11、式下用軟件清“0”。TR1:定時器 1 運行控制位。由軟件清“0”關(guān)閉定時器 1。當GATE=1,且1 為時,TR1 置“1”啟動定時器 1;當GATE=0,TR1 置“1”啟動定時器 1。TF0:定時器 0 溢出標志。其功能及操作情況同 TF1。TR0:定時器 0 運行控制位。其功能及操作情況同 TR1。IE1:外部中斷 1 請求標志。IT1:外部中斷 1 觸發(fā)方式選擇位。IE0:外部中斷 0 請求標志。IT0:外部中斷 0 觸發(fā)方式選擇位。TCON 中低 4 位與中斷有關(guān),在下節(jié)課講中斷時再給予講解。由于 TCON 是可以位尋址的,因而如果只清溢出或啟動定時器工作,可以用位操作命令。例如:
12、執(zhí)行“CLR TF0”后則清定時器 0的溢出;執(zhí)行“SETB TR1”后可啟動定時器 1 開始工作(當然前面還要設置方式定)。定時器/計數(shù)器的初始化:由于定時器/計數(shù)器的功能是由軟件編程確定的,所以一般在使用定時/計數(shù)器前都要對其進行初始化,使其按設定的功能工作。初始貨的步驟一般如下:1、確定工作方式(即對 TMOD 賦值);2、預置定時或計數(shù)的初值(可直接將初值寫入 TH0、TL0 或TH1、TL1);3、根據(jù)需要開放定時器/計數(shù)器的中斷(直接對 IE 位賦值);4、啟動定時器/計數(shù)器(若已規(guī)定用軟件啟動,則可把 TR0 或TR1 置“1”;若已規(guī)定由外中斷引腳電平啟動,則需給外引腳步加啟動
13、電平。當實現(xiàn)了啟動要求后,定時器即按規(guī)定的工作方式和初值開始計數(shù)或定時)。下面介紹一下確定時時/計數(shù)器初值的具體方法。智學因為在不同工作方式下計數(shù)器位數(shù)不同,因而最大計數(shù)值也不同?,F(xiàn)假設最大計數(shù)值為 M,那么各方式下的最大值 M 值如下:方式 0:M=213=8 192方式 1:M=216=65 536方式 2:M=28=256方式 3:定時器 0 分成兩個 8 位計數(shù)器,所以兩個 M 均為 256。因為定時器/計數(shù)器是作“加 1”計數(shù),并在計數(shù)滿溢出時產(chǎn)生中斷,因此初值X 可以這樣計算:X=M-計數(shù)值特別提示:STC 的 51 單片機和普通的 51 單片機在設置定時器時間時略有不同,STC
14、的單片機定時器可以比普通 51 單片機定時器快上 12 倍,具體可以參考 STC 單片機技術(shù)手冊實驗代碼:/*NewWay 電子定時器控制實驗*/技術(shù)支持:官網(wǎng):#include reg51.htypedef unsigned char BYTE;typedef unsignedWORD;/* define constants */#define FOSC 22118400L /定義系統(tǒng)時鐘#define MODE1Tline is 12T mode,/Timer clock mode, comment thisment is 1T mode#ifdef MODE1T#define T1MS
15、(65536-FOSC/1000)1T mode/1ms timercalculation method in#else#define T1MS (65536-FOSC/12/1000)12T mode/1ms timercalculation method in#endif/* define SFR */sfr AUXR = 0 x8e;/Auxiliaryregistersbit TEST_LED = P20;/work LED,flash once per second/* define variables */WORD count;/1000 times counter/* Timer0errupt routine */void tm0_isr()errupt1using1TL0 = T1MS;/reload timer0low byteTH0 = T1MS 8;/reload timer0highbyteif (count- = 0)/1ms * 1000 -1scount = 1000;/reset counterTEST_LED = ! TEST_LED;/work LED flash/*main program */void main()#ifdef MODE1TAUXR = 0 x80;/timer0 work i
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年浙江建筑安全員-C證考試(專職安全員)題庫及答案
- 2025年云南省建筑安全員知識題庫
- 2025年-安徽建筑安全員-B證(項目經(jīng)理)考試題庫
- 農(nóng)村社會學 鐘漲寶課件 第十四章 社會主義新農(nóng)村建設學習資料
- 2025國家標準建筑合同
- 2025年江蘇省新高考高三聯(lián)考數(shù)學試卷試題(含答案詳解)
- 人教部編版 (五四制)九年級上冊共筑生命家園一等獎教案
- 黑龍江省大慶外國語2025屆高三11月期中考-英語試題
- 第七課 治國理政的基本方式 課件高中政治統(tǒng)編版必修三政治與法治
- 1感受生活中的法律 第3課時 教學設計-2024-2025學年道德與法治六年級上冊統(tǒng)編版
- 2024年江蘇省淮安市中考一模物理試題(含答案解析)
- 風電場檢查合同協(xié)議書
- 佛云學校多功能室、電教室、體育館設備采購項目招標文件
- 人教八年級上冊數(shù)學《從分數(shù)到分式》教學課件
- 揭陽市人民醫(yī)院檢驗科 標本采集手冊
- 烈士陵園的數(shù)字化轉(zhuǎn)型與智能服務
- 施工風險技術(shù)風險
- (高清版)JGT 225-2020 預應力混凝土用金屬波紋管
- 酸棗仁湯的臨床應用研究
- 前庭神經(jīng)炎病人的護理
- 招標代理服務 投標方案(技術(shù)方案)
評論
0/150
提交評論