




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、電子工程系項B考核(報告)項目名稱:數(shù)字時鐘項目名班號課程名稱項目要求:數(shù)碼管默認(rèn)顯示 00:00。數(shù)碼管 1,2 表示小時,數(shù)碼管 3 ,4 表 示分鐘。如此,實(shí)現(xiàn)時鐘功能。要求能夠整點(diǎn)報時、鬧鐘提示;并附 帶有秒表功能。 按鍵可以調(diào)整時鐘時間、 切換顯示頁面和設(shè)定鬧鐘時 間等。二、項目原理分析在項目用的單片機(jī)開發(fā)板上單片機(jī)的 IO 口接四位數(shù)碼管的各 段。同時開發(fā)板共陰數(shù)碼管的陰極由 138 譯碼器的輸出端控制。在 該項目中我采用了數(shù)碼管的動態(tài)顯示,即每位數(shù)碼管點(diǎn)亮 2ms 時間 左右,由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng), 只要掃描的 速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),
2、不會有閃爍感, 動態(tài)顯示的效果和靜態(tài)顯示是一樣的, 能夠節(jié)省大量的 I/O 端口,而 且功耗更低。在實(shí)現(xiàn)了數(shù)碼管的動態(tài)顯示的基礎(chǔ)上在主程序中通過計 算定時器 1 的中斷次數(shù),從而得到計時時間和秒表時間的基準(zhǔn)時間。 同時在主程序中添加按鍵處理程序,實(shí)現(xiàn)時鐘的開始、中斷和校時, 同時實(shí)現(xiàn)鬧鐘定時和切換顯示等功能,還有秒表計時功能。三、硬件電路圖以及原理3.1 硬件電路圖如下:*W!Wg-sci aiiooq MUUU-1!Id牛aQ q ei .aBBQ回cQEIQBcq rHMWbUeUliKam 敗 RCTRSIDRiilFSP9 rannnHDHn mmFmpvi alQPW-1 a lD1
3、1 LEMnhnEKAD益M盂那3.2硬件原理:該項目中,主要的功能模塊有:數(shù)碼管顯示模塊;按鍵模塊;蜂鳴器模塊。數(shù)碼管顯示模塊主要是由芯片PIC16F877A內(nèi)部的定時器1的定時中斷實(shí)現(xiàn)數(shù)碼管的動態(tài)顯示。按鍵模塊主要利用矩陣式按鍵 實(shí)現(xiàn)多按鍵功能,矩陣式按鍵原理是在一端加高電平,然后檢測另一 端是否為高電平來判斷按鍵是否按下,通過不同的定義可以讓按鍵實(shí) 現(xiàn)不同的功能。蜂鳴器模塊通過三極管的開關(guān)作用和驅(qū)動作用由芯片 控鳴叫與否。四、程序說明以及程序流程圖該時鐘默認(rèn)顯示頁面為時鐘計時頁面,按鍵 SW1控制時鐘、秒 表的開始和中斷,按按鍵 SW1 一次,如果數(shù)碼管在顯示秒表,則開 始計秒功能;否則
4、,開始正常計時;再按一次 SW1則實(shí)現(xiàn)中斷功能。 按鍵SW2實(shí)現(xiàn)是數(shù)碼管的選位,從第一個數(shù)碼管開始,按一次就選 中下一位數(shù)碼管,循環(huán)選擇。SW3實(shí)現(xiàn)的是加1功能,每按一次就 在SW2選中的位上加1。SW4是實(shí)現(xiàn)數(shù)碼管切換顯示功能,按一次 就進(jìn)入鬧鐘調(diào)時的顯示頁面,再按一次就進(jìn)入秒表顯示頁面, 實(shí)現(xiàn)數(shù)碼管顯示在時鐘計時、鬧鐘定時和秒表計時這三個不同頁面的循環(huán)切換顯示。圖1是時鐘、秒表計時開始和中斷,以及鬧鐘提醒的流程圖; 圖2是顯示頁面的卻換流程圖;圖3是校時和定時流程圖。下面就是 程序的流程圖:鬧時鐘秒表鐘計時計時1 r整點(diǎn)報時, 鬧鐘提醒否時鐘計時中斷秒表計時 中斷,時 鐘正常計上電a=2W
5、3按下a=1W3按下a=4W3按a=3W3按SW2每按一次a加1(1=4)鬧鐘 小時 十位加1鬧鐘 小時 個位加1時鐘小時個位加1時鐘 分鐘 十位加1五、程序清單(要求有詳盡的注釋)ma in ()/主函數(shù)int a=1,b,z,h=1;定義一個標(biāo)志位a,bin ts1=0,s2=0,s3=0,s4=0;/時鐘小時分鐘的十位和個位int n1=0 ,n 2=0, n3=0, n4=0;/鬧鐘小時分鐘的十位和個位int m仁 0,m2=0,m3=0,m4=0;/秒表的標(biāo)志位static bit biaozhi=0;/時鐘的靜態(tài)標(biāo)志位static bit mbz=0;/秒表的靜態(tài)標(biāo)志位ADCON仁
6、0X06;/初始化TRISA=0X00;TRISB=0X01;外部中斷輸入PORTB=0X00;TRISD=0X01;/設(shè)置 RD0 輸入PORTD=0X01;/設(shè)置 RD0 輸入TRISE=0X00;timer1i nit();/定時器1初始化 INTE=1; /外部中斷使能INTEDG=1;外部中斷上升沿RA仁1;/使能138譯碼器LED1=0;LED2=0;LED3=0;LED4=0;/數(shù)碼管1顯示4 while(1)RD4=1;/按鍵SW1 一端高電平if(RD0=1)/判斷按鍵是否按下delay(10); 延時 10mS 去鍵抖if(RD0=1)/再次確認(rèn)按鍵是否按下RD2=1;de
7、lay(30);RD2=0;蜂鳴器響30mSif(h=3) 判斷是否是秒表顯示頁面mbz=!mbz;t=0;秒表標(biāo)志位取反,開始計時或中斷elsebiaozhi=!biaozhi;time=0; 時鐘標(biāo) 志位取反,開始計時或中斷while(RD0=1);/ 等待放手RD4=0;RD5=1;按鍵SW2 一端高電平if(RD0=1)/判斷按鍵SW2是否按下delay(10);延時 10mS去鍵抖if(RD0=1)再次確認(rèn)按鍵SW2是否按下RD2=1;delay(30);RD2=0; 蜂鳴器 響 30mSa+;位選標(biāo)志位加1if(a=5) a=1;if(a=1)b=LED1;先關(guān)閉數(shù)碼管300毫秒,
8、然后再點(diǎn)亮LED1=10;delay(300);延時 300 毫秒LED1=b;if(a=2)b=LED2;先關(guān)閉數(shù)碼管300毫秒,然后再點(diǎn)亮LED2=10;delay(300);延時 300 毫秒LED2=b;if(a=3)b=LED3;先關(guān)閉數(shù)碼管300毫秒,然后再點(diǎn)亮LED3=10;delay(300);延時 300 毫秒LED3=b;if(a=4)b=LED4;先關(guān)閉數(shù)碼管300毫秒,然后再點(diǎn)亮LED4=10;delay(300);延時 300 毫秒LED4=b;while(RD0=1); 等待放手RD5=0;RD6=1;按鍵SW3 一端高電平if(RD0=1) 判斷按鍵SW3是否按下
9、delay(10); 延時10mS去鍵抖if(RD0=1) 再次確認(rèn)按鍵SW3是否按下RD2=1;delay(30);RD2=0; 蜂鳴器響 30mSif(h=1)判斷顯示標(biāo)志位 LED仁s1;LED2=s2;LED3=s3;LED4=s4;數(shù)碼管顯示時鐘頁面if(a=1) s1+;如果位選標(biāo)志位a=1,則小時十位加1if(a=2) s2+;如果位選標(biāo)志位a=2,則小時個位加1if(a=3) s3+;如果位選標(biāo)志位a=3,則分鐘十位加1if(a=4) s4+;如果位選標(biāo)志位a=4,則分鐘十位加1if(s1=3)s1=0; / 使時鐘在校 時時也能按計時規(guī)則進(jìn)行if(s12)if(s2=10)s
10、2=0;if(s1=2)if(s2=4)s2=0;if(s3=6)s3=0; if(s4=10)s4=0;if(h=2)判斷顯示標(biāo)志位 LED仁n1;LED2=n2;LED3=n3;LED4=n4;數(shù)碼管顯示鬧鐘定時頁面if(a=1) n1+;/如果位選標(biāo)志位a=1,則小時十位加1if(a=2) n2+; 如果位選標(biāo)志位a=2,則小時個位加1if(a=3) n3+; 如果位選標(biāo)志位a=3,則分鐘十位加1if(a=4)n 4+;如果位選標(biāo)志位a=4,則分鐘十位加1if(s1=3)s 1=0;使鬧鐘在定時時也能按計時規(guī)則進(jìn)行if(s1=400)/time為定時器1的中斷次數(shù),利用定 時器1提供的2
11、.5mS的基準(zhǔn)時間計時time=0;z+;/1秒計算if(z=60)s4+;z=0;/時鐘計時if(s4=10) s3+;s4=0;if(s3=6)s2+;s3=0;if(s1=40)RD2=0;if(s3=0&s4=0) RD2=1; 蜂 if(time=40)RD2=0;if(mbz)/判斷秒表標(biāo)志位if(t=40)/實(shí)現(xiàn)秒表0.1秒精度 t=0;/秒表計時m4+;if(m4=10) m3+;m4=0; if(m3=10) m2+;m3=0;if(m2=6)m1+;m2=0;if(m仁=10) m仁0;六、心得體會在這次的時鐘項目中,我根據(jù)一些電子鐘的功能要求,在這個時鐘項目中集 成了較多的功能,包括常用的時鐘、鬧鐘、整點(diǎn)報時、校時和定時功能,另外我 還新增了一個秒表的功能;所以這個時鐘的功能還是比較強(qiáng)大的。但對于我的設(shè) 計來說卻是一個挑戰(zhàn),因為我還沒有編寫過多顯示頁面的程序,后來我通過定義 標(biāo)志位來實(shí)現(xiàn)數(shù)碼管顯示頁面的切換,但這種方法原理雖然簡單,但程序卻變得 復(fù)雜。標(biāo)志
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 設(shè)計責(zé)任與賠償合同(2篇)
- 2025年度旅游地產(chǎn)房產(chǎn)銷售合同
- 二零二五年度保姆聘用合同家政服務(wù)人員福利待遇及考核協(xié)議
- 2025年度生態(tài)旅游用地購買合同協(xié)議
- 二零二五年度紙勞動合同紙質(zhì)檔案銷毀與環(huán)保處理服務(wù)合同
- 二零二五年度物業(yè)服務(wù)合同延期補(bǔ)充協(xié)議(含車位管理)
- 二零二五年度建筑工地民工福利待遇與保障合同
- 2025年度電力公司運(yùn)維人員勞動合同終止及電力設(shè)施交接合同
- 二零二五年度農(nóng)村土地永久轉(zhuǎn)讓合同(附農(nóng)業(yè)休閑觀光旅游合作)
- 二零二五年度個人名義貸款代償合同
- GB/T 12265-2021機(jī)械安全防止人體部位擠壓的最小間距
- GB 8537-2018食品安全國家標(biāo)準(zhǔn)飲用天然礦泉水
- GB 31247-2014電纜及光纜燃燒性能分級
- 主要農(nóng)作物(糧食作物)課件
- 部編人教版道德與法治五年級下冊全冊課時練習(xí)講解課件
- 《潘姓源于固始,是不爭的史實(shí)》的考辨
- 園林景觀工程細(xì)節(jié)
- 焊接技師培訓(xùn)教材(釬焊)課件
- 2022年中級注冊安全工程師(安全生產(chǎn)法及相關(guān)法律知識)考試題庫???00題及答案下載(四川省專用)
- 《未成年人保護(hù)法》課件
- 原發(fā)性肝癌經(jīng)皮肝動脈化療栓塞術(shù)(TACE)臨床路徑
評論
0/150
提交評論