


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、簡易秒表制作1子情境容:制作簡易秒表,利用按鍵構(gòu)成鍵盤實現(xiàn)秒表的啟動、 停止與復(fù) 位,利用LED數(shù)碼管顯示時間。2子情境目標(biāo):1 通過簡易秒表的制作,進一步熟悉LED數(shù)碼管與單片機的接 口電路2學(xué)習(xí)定時/計數(shù)器、中斷技術(shù)的綜合運用并會使用簡易鍵盤3知識點獨立式按鍵的使用:圖5 - 49為按鍵與單片機的連接圖。機械式按鍵再按下或釋放時,由于機械彈性作用的影響,通常伴隨有一定時間的觸點機械抖動,然后其觸點才穩(wěn)定下來。其抖動過程如 圖5-50所示,抖動時間的長短與開關(guān)的機械特性有關(guān),一般為510ms。在觸點抖動期間檢測按鍵的通與斷狀態(tài),可能導(dǎo)致判斷出錯。即按鍵一次按下或釋放被錯誤地認(rèn)為是屢次操作,這
2、種情況是不允許出現(xiàn) 的。為了克服按鍵觸點機械抖動所致的檢測誤判,必須采取去抖動措圖按鍵與單片機連圖按崔被按下時電汗的變化施,可從硬 件、軟件兩方面予以考慮。本子情境中采用軟件去抖4任務(wù)步驟4 . 1步驟一:PROTEUS電路設(shè)計,簡易秒表的原理圖如圖5 51所示。1、選取元器件 單片機:AT89C51 兩位共陰極藍色數(shù)碼管:7SEG-MPX2-CC-BLUE 排阻:RESPACK-8 按鈕:BUTTONISIS 平2、放置元器件、放置電源和地、連線、元器件屬性設(shè)置 簡易秒表的原理圖如圖 551 所示,整個電路設(shè)計操作都在 臺中進行。與子情景3相似,故不詳述 U1 VJ=L. 3Ct 0圖簡易秒
3、表的原理圖42步驟二:源程序設(shè)計與目標(biāo)代碼文件生 成1程序流程圖nonono秒加no停止健足否按、K? “是否到20次啟動健是否按、 下?丿V6S否到60秒? >主程序按彳建防抖開足時器按鍵防抖秒表淸零按詭防H數(shù)和管顯示位,變量數(shù)組子程序聲明圖 5 52 秒表流程圖2)源程序設(shè)計 #include<reg52.h> #define uint unsigned intsbit key1=P3A0;/定義"啟動"按sbit key2=P3A1;定義"停止"按sbit key3=P3A2;#define uchar unsigned char
4、/定義"復(fù)位"按uchar temp,aa,shi,ge; uchar code table= 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;/共陰極數(shù)碼管void display(uchar shi,uchar ge); / 聲明顯示子函數(shù) void delay(uint z);void init();/聲明延時子函/聲明初始化函void main()init();while(1)if(key1=0)/調(diào)用初始化子/檢測"啟動"按鈕是否de
5、lay(10);/延時去抖if(key1=0)/再次檢測 "啟動 "按鈕是否/ 松手檢測,假設(shè)按鍵沒有釋放, key1 始 終為while(!key1);0,那么 !key1 始終為 1 ,程序就一直停在此語句TR0=1;/啟動定時器開始if(key2=0)/檢測 "停止 "按鈕是否按下delay(10);/ 延時去抖動if(key2=0)/再次檢測 "停止 "按鈕是否按下while(!key2); / 松手檢測TR0=0;/關(guān)閉定時器if(key3=0)/檢測 "復(fù)位 "按鈕是否按下delay(10);/延時去抖
6、動if(key3=0)/再次檢測 "復(fù)位 "按鈕是否按下while(!key3); / 松手檢測 temp=0;/將變量 temp 的值清零shi=0;/將十位清零ge=0;/將個位清零TR0=0;/關(guān)閉定時器display(shi,ge); / 調(diào)用顯示子函數(shù)void delay(uint z) / 延時子函數(shù)uint x,y; for(x=z;x>0;x-)for(y=110;y>0;y-);void display(uchar shi,uchar ge) / 顯示子程序P2=0xbf;PO=tableshi;delay(10);P2=0x7f;PO=tab
7、lege;delay(10);/使用動態(tài)掃描的方法實現(xiàn)數(shù)碼管顯示void ini t()/初始化子程序temp=0;TMOD=0x01;/使用定時器 T0的方式1TH0=(65536-50000)/256;TL0=(65536-50000)%256;/ 定時 50ms 中斷一次EA=1; /中斷總允許ET0=1;/允許定時器T0中斷void timer0() in terrupt 1TH0=(65536-50000)/256; 重新賦初值 TL0=(65536-50000)%256;aa+;中斷一次變量aa的值加1if(aa=20)中斷20次后,定時時間為20*50ms=1000ms=1s ,aa=0;將變量 的值加temp+;if(temp=60) /秒表到達 60s后回零temp=0;shi=temp%100/10;ge=temp%10;/別離個位和十位4 3 步驟三: PROTEUS 仿真 加載目標(biāo)代碼文件,雙擊編輯窗口的 AT89C51 器件,在彈出屬性編 輯對話 框 Program File 一欄中單擊翻開按鈕,出現(xiàn)文件瀏覽對話框,找 到 miaobiao.hex 文件,單擊“翻開按鈕,完成添加文件。單擊按鈕, 啟動仿真,仿真運行片段 如下圖。按下“啟動按鈕后,秒表開始計時,如下圖。 按下“停止 按鈕,秒表停止計時。 按下“復(fù)位按鈕,秒表回到最初始的狀 態(tài),如
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 倉儲物流信息化管理與運輸服務(wù)合同
- 跨國公司境內(nèi)股權(quán)轉(zhuǎn)讓及稅務(wù)籌劃協(xié)議
- 生態(tài)柴油購銷合同范本與規(guī)范
- 成都租賃合同(含租客租后押金退還)
- 民宿民宿風(fēng)格改造裝修合同
- 互聯(lián)網(wǎng)保險保本投資協(xié)議
- 北京二手房交易稅費減免咨詢與代理合同
- 餐飲店拆伙協(xié)議及員工安置合同
- 時尚購物廣場門面房租賃與品牌合作合同
- 腫瘤的影像學(xué)診斷
- 2024-2025年上海中考英語真題及答案解析
- 《網(wǎng)架結(jié)構(gòu)》課件
- 黑惡線索核查線上培訓(xùn)課件
- 虛擬貨幣與數(shù)字資產(chǎn)交易培訓(xùn)資料
- 火電廠危險化學(xué)品安全管理課件
- JB-T 4149-2022 臂式斗輪堆取料機
- 電梯維保服務(wù)投標(biāo)方案
- 2023年資產(chǎn)負(fù)債表模板
- 01SS105給排水常用儀表及特種閥門安裝圖集
- 【VCGE06】昌平區(qū)2020-2021學(xué)年第二學(xué)期高二年級期末質(zhì)量抽測
- 小學(xué)四年級英語答題卡(Word版可以編輯修改)
評論
0/150
提交評論