定時(shí)器實(shí)驗(yàn)指導(dǎo)書_第1頁(yè)
定時(shí)器實(shí)驗(yàn)指導(dǎo)書_第2頁(yè)
定時(shí)器實(shí)驗(yàn)指導(dǎo)書_第3頁(yè)
定時(shí)器實(shí)驗(yàn)指導(dǎo)書_第4頁(yè)
定時(shí)器實(shí)驗(yàn)指導(dǎo)書_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

SKIPIF1<0《單片機(jī)原理技術(shù)》實(shí)驗(yàn)九《單片機(jī)原理技術(shù)》實(shí)驗(yàn)九SKIPIF1<0頁(yè)實(shí)驗(yàn)九定時(shí)器實(shí)驗(yàn)一、知識(shí)準(zhǔn)備單片機(jī)中的定時(shí)器和計(jì)數(shù)器其實(shí)是同一個(gè)物理的電子元件,只不過計(jì)數(shù)器記錄的是單片機(jī)外部發(fā)生的事情(接受的是外部脈沖),而定時(shí)器則是由單片機(jī)自身提供的一個(gè)非常穩(wěn)定的計(jì)數(shù)器。1.定時(shí)器的工作頻率單片機(jī)外接的是11.0592MHz,所以單片機(jī)內(nèi)部的工作頻率(時(shí)鐘脈沖頻率)是11.0592MHz/12=0.9216條指令/微秒;也就是說,晶振振蕩一次,就會(huì)給單片機(jī)提供一個(gè)時(shí)鐘脈沖,花費(fèi)的時(shí)間是0.9216微秒,此時(shí),CPU會(huì)執(zhí)行一條指令,經(jīng)歷一個(gè)機(jī)器周期;即:1個(gè)時(shí)鐘脈沖=1個(gè)機(jī)器周期=0.9216微秒=1條指令;。1.1定時(shí)器的結(jié)構(gòu)單片機(jī)的兩個(gè)定時(shí)器T0和T1分別都由兩個(gè)特殊功能寄存器組成;T0由特殊功能寄存器TH0和TL0構(gòu)成,而T1則是由TH1和TL1構(gòu)成;作為定時(shí)器使用時(shí),定時(shí)器計(jì)數(shù)8051單片機(jī)片內(nèi)振蕩器輸出經(jīng)過12分頻后的脈沖個(gè)數(shù),即:每個(gè)機(jī)器周期使定時(shí)器T0/T1的寄存器值自動(dòng)累加1,直到溢出,溢出后繼續(xù)從0開始循環(huán)計(jì)數(shù);所以,定時(shí)器的分辨率是時(shí)鐘振蕩頻率的1/12;1.2定時(shí)器的工作模式除了可選擇定時(shí)器和計(jì)數(shù)器的這兩種工作方式外,每個(gè)定時(shí)器/計(jì)數(shù)器都有4種工作模式;在模式0、1和2時(shí),T0和T1的工作模式相同;在模式3時(shí),兩個(gè)定時(shí)器/計(jì)數(shù)器的工作模式不同;(1)工作模式0:由TL0的低5位和TH0的全部8位共同構(gòu)成一個(gè)13位的定時(shí)器/計(jì)數(shù)器;定時(shí)器/計(jì)數(shù)器啟動(dòng)后,定時(shí)或計(jì)數(shù)脈沖個(gè)數(shù)加到TL0上,從預(yù)先設(shè)置的初值(時(shí)間常數(shù))開始累加,不斷遞增1;當(dāng)TL0計(jì)滿后,向TH0進(jìn)位,直到13位寄存器計(jì)滿溢出;溢出時(shí),定時(shí)器/計(jì)數(shù)器硬件會(huì)自動(dòng)地把13位的寄存器值清0,中斷標(biāo)記TF0置1;如果需要進(jìn)一步定時(shí)/計(jì)數(shù),需要使用相關(guān)指令重置時(shí)間常數(shù),并把定時(shí)器/計(jì)數(shù)器的中斷標(biāo)記TF0置0;工作模式0的結(jié)構(gòu)如下圖:(2)工作模式1:模式1與模式0幾乎完全相同,唯一的區(qū)別就是,模式1中的寄存器TH0和TL0共同構(gòu)成的是一個(gè)16位定時(shí)器/計(jì)數(shù)器來參與操作,因此比模式0中的定時(shí)/計(jì)數(shù)范圍更大;工作模式1如下圖所示:?(3)工作模式2:這種模式又稱為自動(dòng)再裝入預(yù)置數(shù)模式;當(dāng)定時(shí)器/計(jì)數(shù)器的寄存器TH0/TL0的值溢出時(shí),定時(shí)器/計(jì)數(shù)器硬件設(shè)備會(huì)自動(dòng)把寄存器TH0/TL0的值清0,以重新開始操作;但是有時(shí)候,我們的定時(shí)/計(jì)數(shù)操作是需要多次重復(fù)定時(shí)/計(jì)數(shù)的,如果溢出時(shí)不做任何處理,那么,在第二輪定時(shí)/計(jì)數(shù)時(shí)就是從0開始定時(shí)/計(jì)數(shù)了,而這并不是我們想要的;所以,要保證每次溢出之后,在重新開始定時(shí)/計(jì)數(shù)的操作是我們想要的,那就要把預(yù)置數(shù)(時(shí)間常數(shù))重新裝入某個(gè)地方;而重新裝入預(yù)置數(shù)的操作是硬件設(shè)備自動(dòng)完成的,不需要人工干預(yù)所以,這種工作模式就叫自動(dòng)再裝入預(yù)置數(shù)方式;既然需要重新裝入預(yù)置數(shù),那么預(yù)置數(shù)就必須要存放在某個(gè)地方,才能保證重裝操作成功;在工作模式2中,把自動(dòng)重裝入的預(yù)置數(shù)存放在定時(shí)器/計(jì)數(shù)器的寄存器的高8位中,也就是存放在TH0中,而只留下TL0參與定時(shí)/計(jì)數(shù)操作;顯然,定時(shí)/計(jì)數(shù)的方位小了很多;注:這個(gè)工作模式常用于波特率發(fā)生器(串口通訊),T1工作在串口模式2;用于這種方式時(shí),定時(shí)器就是為了提供一個(gè)時(shí)間基準(zhǔn);計(jì)數(shù)溢出之后,不需要做太多的事情,只做一件事就可以,就是重新裝入預(yù)置數(shù),再開始重新計(jì)數(shù),而且中間不需要任何延時(shí);工作模式2的結(jié)構(gòu)如下圖所示:?工作模式3:

由于定時(shí)器/計(jì)數(shù)器T1沒有工作模式3,如果把定時(shí)器/計(jì)數(shù)器T0設(shè)置為工作模式3,那么TL0和TH0將被分割成兩個(gè)相互獨(dú)立的8位定時(shí)器/計(jì)數(shù)器;工作模式3的結(jié)構(gòu)如下圖:

1.3定時(shí)器/計(jì)數(shù)器的定時(shí)/計(jì)數(shù)范圍工作方式0——13位定時(shí)器/計(jì)數(shù)器工作模式,最多可計(jì)數(shù)2的13次方次,即:8192次,[0,8191];工作方式1——16位定時(shí)器/計(jì)數(shù)器工作模式,最多可計(jì)數(shù)2的16次方次,即:65536次,[0,65535];工作方式2——8位定時(shí)器/計(jì)數(shù)器工作模式,計(jì)算次數(shù)最多為2^8,即256,,[0,255];工作方式3——8位定時(shí)器/計(jì)數(shù)器工作模式,計(jì)算次數(shù)最多為2^8,即256,,[0,255];預(yù)置數(shù)的計(jì)算公式:預(yù)置數(shù)=最大值-需要計(jì)數(shù)的次數(shù);1.4定時(shí)器/計(jì)數(shù)器的寄存器2.接口芯片74HC595具有8位移位寄存器和一個(gè)存儲(chǔ)器,三態(tài)輸出功能。移位寄存器和存儲(chǔ)器有相互獨(dú)立的時(shí)鐘。數(shù)據(jù)在SH_CP(移位寄存器時(shí)鐘輸入)的上升沿輸入到移位寄存器中,在ST_cp(存儲(chǔ)器時(shí)鐘輸入)的上升沿輸入到存儲(chǔ)寄存器中去。如果兩個(gè)時(shí)鐘連在一起,則移位寄存器總是比存儲(chǔ)寄存器早一個(gè)脈沖。移位寄存器有一個(gè)串行移位輸入(Ds),和一個(gè)串行輸出(Q7’),和一個(gè)異步的低電平復(fù)位,存儲(chǔ)寄存器有一個(gè)并行8位的,具備三態(tài)的總線輸出,當(dāng)使能OE時(shí)(為低電平),存儲(chǔ)寄存器的數(shù)據(jù)輸出到總線。8位串行輸入/輸出或者并行輸出移位寄存器,具有高阻關(guān)斷狀態(tài)。三態(tài)。將串行輸入的8位數(shù)字,轉(zhuǎn)變?yōu)椴⑿休敵龅?位數(shù)字,例如控制一個(gè)8位數(shù)碼管,將不會(huì)有閃爍。下表說明了74HC595芯片的引腳功能。Q0--Q78位并行數(shù)據(jù)輸出,GND地Q7串行數(shù)據(jù)輸出MR主復(fù)位(低電平)SHCP移位寄存器時(shí)鐘輸入STCP存儲(chǔ)寄存器時(shí)鐘輸入OE輸出有效(低電平)DS串行數(shù)據(jù)輸入VCC電源接口電路圖如下,可以看到74HC595接了8個(gè)LED,定時(shí)器。DS(SDI)為引腳P4.0,STCP(RCLK)為引腳P4.1,SHCP(SRCLK)為引腳P4.2,圖1-1圖1-2二、實(shí)驗(yàn)?zāi)康恼莆?4HC595的實(shí)驗(yàn)以及定時(shí)器的運(yùn)用。三、實(shí)驗(yàn)內(nèi)容編寫程序控制74HC595,讓接在上面的LED0進(jìn)行間隔為1S的閃爍。四、實(shí)驗(yàn)設(shè)備硬件設(shè)備:51單片機(jī)開發(fā)版、USB線一根,12v電源適配器一個(gè)。圖1-3軟件工具:STC-ISP-15XX-V6.82,keil。五、核心代碼分析//寫數(shù)據(jù)到74HC595voidWR_595(uchartemp){ucharj;for(j=0;j<8;j++){temp=temp<<1;/*數(shù)據(jù)左移一位,使數(shù)據(jù)逐個(gè)移到CY上*/SDATA_595=CY;/*將進(jìn)位輸出到IO*/SCLK_595=1;/*從0到1產(chǎn)生一個(gè)上升沿,讓595保存數(shù)據(jù)*/_nop_();_nop_();SCLK_595=0;}}//讓74HC595的數(shù)據(jù)輸出到Q0~Q7voidOUT_595(void){RCK_595=0;_nop_();_nop_();RCK_595=1;/*從0到1產(chǎn)生一個(gè)上升沿,讓595輸出數(shù)據(jù)*/_nop_();_nop_();_nop_();RCK_595=0;}voidTime0_Init(void){ TMOD=0x11; /*定時(shí)器工作在方式1*/ ET0=1; /*開啟定時(shí)器0中斷*/ TH0=0x4c; /*對(duì)TH0TL0賦值50MS中斷一次*/ TL0=0x00; TR0=1; /*開啟計(jì)數(shù)*/ EA=1;/*開啟總中斷*/}//定時(shí)器中斷服務(wù)函數(shù)voidtime0(void)interrupt1using3{ TH0=0x4c;/*對(duì)TH0TL0賦值*/ TL0=0x00;/*重裝計(jì)數(shù)初值*/ count++;}六、實(shí)驗(yàn)步驟連接設(shè)備,將USB線一端接PC,一端接單片機(jī)開發(fā)板,開發(fā)板接12V電源,打開電源開關(guān)圖1-4打開STC-ISP下載工具圖1-4

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論