單片機(jī)原理定時(shí)器計(jì)數(shù)器~單片機(jī)原理~實(shí)驗(yàn)報(bào)告_第1頁(yè)
單片機(jī)原理定時(shí)器計(jì)數(shù)器~單片機(jī)原理~實(shí)驗(yàn)報(bào)告_第2頁(yè)
單片機(jī)原理定時(shí)器計(jì)數(shù)器~單片機(jī)原理~實(shí)驗(yàn)報(bào)告_第3頁(yè)
已閱讀5頁(yè),還剩5頁(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、師學(xué)院計(jì)算機(jī)系實(shí)驗(yàn)報(bào)告2014 2015學(xué)年第2學(xué)期課程名稱(chēng)單片機(jī)原理實(shí)驗(yàn)名稱(chēng)定時(shí)器與計(jì)數(shù)器專(zhuān) 業(yè) 計(jì)算機(jī)科學(xué)與技術(shù)非師年 級(jí)12級(jí)學(xué)號(hào) B2012102147 王 秋指導(dǎo)教師烈君實(shí)驗(yàn)日期實(shí)驗(yàn)?zāi)康模?. 通過(guò)實(shí)驗(yàn)學(xué)習(xí)單片機(jī)的定時(shí)器計(jì)數(shù)器功能,學(xué)會(huì)編程實(shí)現(xiàn)單片機(jī)的定時(shí)與計(jì)數(shù)功能;2. 掌握中斷處理程序的編程方法;3. 掌握查表的編程方法。實(shí)驗(yàn)要求:1. 在Proteus軟件中畫(huà)好51單片機(jī)最小核心電路,包括復(fù)位電路和晶振電路2. 在電路中增加按鍵、Led燈、八位7段數(shù)碼管(共陽(yáng)/共陰自選),將P2 口作數(shù)據(jù)輸出口與 7段數(shù)碼管數(shù)據(jù)引腳相連,P3引腳輸出位選控制信號(hào)。3. 實(shí)現(xiàn)單按鍵控制Led燈閃

2、爍 用定時(shí)器實(shí)現(xiàn)1s變化一次4. 實(shí)現(xiàn)0-99碼表按一次開(kāi)場(chǎng)計(jì)時(shí)1S加一,第二次停頓,第三次清零實(shí)驗(yàn)設(shè)備環(huán)境:計(jì)算機(jī)、Proteus ISIS 7 Professional應(yīng)用程序、Keil應(yīng)用程序?qū)嶒?yàn)容:使用部定時(shí)器與外部中斷實(shí)現(xiàn):1. 實(shí)現(xiàn)單按鍵控制Led燈閃爍 1s變化一次)P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7RP1RESPACK-82122232425262. 實(shí)現(xiàn)0-99碼表按一次開(kāi)場(chǎng)計(jì)時(shí)1S加一,第二次停頓,第三次清零P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A1

3、2P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXD3.2/INT03.3/INT1P3.4/T0P3.5/T1 P3.6/WRP3.7/RD參考原理圖實(shí)驗(yàn)步驟、實(shí)驗(yàn)結(jié)果及分析:1、使用 Proteus ISIS 7 Professional應(yīng)用程序,建立一個(gè) .DSN文件2、 在“庫(kù)"下拉菜單中,選中“拾取元件'快捷鍵P,分別選擇以下元件:AT89C51、LED-YELLOW BUTTON 7SEG-MPX8-CA-BLUE RESPACK。3、構(gòu)建仿真電路ifit“a4、 創(chuàng)立一個(gè)Keil應(yīng)用程序:新建一個(gè)工程工程文件;為工程選擇目標(biāo)器件AT

4、89C52為工 程工程創(chuàng)立源程序文件并輸入程序代碼;保存創(chuàng)立的源程序工程文件;把源程序文件添加到工程中。5、 把用戶(hù)程序經(jīng)過(guò)編譯后生成的HEX文件添加到仿真電路中的處理器中編輯元件t文件路 徑程序代碼:1. 實(shí)現(xiàn)單按鍵控制Led燈閃爍1s變化一次)#i nclude"reg51.h"#defi ne uchar un sig ned charuchar Time_50ms;sbit Led 仁PUO;uchar Mode;void delay(i nt x)/定義時(shí)間間隔while(x-);void LedFlash() in terrupt 1/溢出中斷的中斷效勞程序if

5、(Mode=1)Time_50ms+; / 每 50ms 累加 1 次TH0=15526/0xff;/計(jì)數(shù)重新賦初值TL0=15526%0xff;if(Time_50ms>=20) /當(dāng)為 1s 時(shí)Led1=Led1;Time_50ms=0;void int0() interrupt 0/外部中斷0的中斷效勞程序Mode=(Mode+1)%2;/更改按鍵標(biāo)志值if(Mode=0)Led 1=0;Time_50ms=0;void mai n()IE=0x83; /允許定時(shí)器0中斷和外部中斷0TMOD=0x01; /定時(shí)方式,設(shè)定工作方式1TCON=0x11; /翻開(kāi)定時(shí)器0和設(shè)置外部中斷為

6、邊沿觸發(fā)TH0=(65536-50000)/256;/定時(shí)器T0的高8位賦初值TL0=(65536-50000)%256;/定時(shí)器T0的低8位賦初值Led1=0;while(1);圖1單按鍵控制Led燈閃爍,1s變化一次2. 實(shí)現(xiàn)0-99碼表 按一次開(kāi)場(chǎng)計(jì)時(shí)1S加一,第二次停頓,第三次清零#in clude"reg51.h"#defi ne uchar un sig ned char#define disp_ null 10uchar code tab11=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff;/共陽(yáng)數(shù)

7、碼管顯示 09的段碼表uchar DispBuf8;uchar sec=0;uchar Time_50ms;uchar Mode=2;void delay(i nt x) /定義時(shí)間間隔while(x-);void PutTime()DispBuf7=sec%10;DispBuf6=sec/10;DispBuf5=disp null;DispBuf4=disp_ null;DispBuf3=disp_ null;DispBuf2=disp_ null;DispBuf1=disp_ nu II;DispBuf0=disp_ null;void display。uchar i;for(i=0;i&

8、lt;8;i+)P2=0;P2=1<<i;PO=tabDispBufi; delay(100);void LedFlash() in terrupt 1/溢出中斷的中斷效勞程序if(Mode=0)Time_50ms+; / 每 50ms 累加 1 次TH0=15526/0xff;/計(jì)數(shù)重新賦初值TL0=15526%0xff;if(Time_50ms>=20) /當(dāng)為 1s 時(shí)Time_50ms=0;sec+;if(sec>99)sec=0;PutTime();void int0() interrupt 0/外部中斷0的中斷效勞程序Mode=(Mode+1)%3;/更改按

9、鍵標(biāo)志值if(Mode=1);if(Mode=2)Time_50ms=0;sec=0;PutTime();void mai n()P仁0x00;IE=0x83; /允許定時(shí)器0中斷和外部中斷0TMOD=0x01; /定時(shí)方式,設(shè)定工作方式1TCON=0x11; /翻開(kāi)定時(shí)器0和設(shè)置外部中斷為邊沿觸發(fā)TH0=(65536-50000)/256;/定時(shí)器T0的高8位賦初值TL0=(65536-50000)%256;/定時(shí)器T0的低8位賦初值while(1)display。;圖2 0-99碼表,按一次,開(kāi)場(chǎng)計(jì)時(shí)1S加1,第二次停頓圖30-99碼表,按第三次清零實(shí)驗(yàn)總結(jié)包括過(guò)程總結(jié)、心得體會(huì)及實(shí)驗(yàn)改良

10、意見(jiàn)等: 過(guò)程總結(jié):1. 在實(shí)現(xiàn)單按鍵控制 Led燈閃爍 用定時(shí)器實(shí)現(xiàn)1s變化一次時(shí),由單片機(jī)部定時(shí)器1,按方式1工作,即作為16位定時(shí)器使用每0.05秒鐘T1溢出中斷一次,按鍵采用中斷實(shí)現(xiàn)。2. 51單片機(jī)的外部中斷INTx(INTO和INT1)可以用程序控制為電平觸發(fā)或負(fù)邊沿觸發(fā),通過(guò)編程對(duì)定時(shí)器/計(jì)數(shù)器控制存放器 TCON中的IT0和IT1位進(jìn)展清“ 0"或置“ 1"。假設(shè)ITxX=0, 1丨為 0,那么外部中斷INTx程控為電平觸發(fā),由INTx引腳上所檢測(cè)到的低電平觸發(fā);假設(shè) ITX=1那么外 部中斷INTx由負(fù)邊沿觸發(fā)。心得體會(huì):1. 實(shí)現(xiàn)0-99碼表 按一次開(kāi)場(chǎng)計(jì)時(shí)1S加一,第二次停頓,第三次清零丨在Proteus軟件中畫(huà)好51單片機(jī)最小核心電路,包括復(fù)位電路和晶振電路,在電路中增加按鍵、Led燈、八位7段數(shù)碼管(共陽(yáng)/共陰自選),將P2 口作數(shù)據(jù)輸出口與 7段數(shù)

溫馨提示

  • 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)論