資源描述:
《畢業(yè)設計:基于單片機的電子日歷時鐘》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在學術論文-天天文庫。
1、一課程設計題目:電子日歷時鐘二實現(xiàn)的功能:基本功能:(1)顯示北京時間,并且能夠校準時間;(2)程序使用匯編語言;(3)顯示的時、分、秒之間以及年、月、日間以小數(shù)點分隔;(4)顯示公歷日期,并且能夠校準日期;發(fā)揮功能:(5)運動秒表;(6)鬧鐘功能;(7)自動整點報時。三課程設計的目的:課程標志性內(nèi)容的設計理解和綜合運用,對所學內(nèi)容進行一次實操,學以致用。四、設計方案說明1、硬件部分(1)采用6位LED數(shù)碼管顯示日期或者時間。(2)顯示器的驅(qū)動采用“動態(tài)掃描驅(qū)動”,且采用“一鍵多用”的設計方案,系統(tǒng)電路大為簡化。使用小數(shù)點表示鬧鐘設置狀態(tài);(3
2、)電路連接使用PCB,使電路連接簡潔美觀552、軟件部分(1)“時鐘”基準時間由單片機內(nèi)部的定時中斷提供,考慮因素:定時時間是“秒”的整除數(shù),且長短適宜。最長不能超過16位定時器的最長定時時間;最短不能少于中斷服務程序的執(zhí)行時間?;鶞蕰r間越短,越有利于提高時鐘的運行精確度?;鶞蕰r間定為0.05秒。(2)用一個計數(shù)器對定時中斷的次數(shù)進行計數(shù),由基準時間為0.05秒知計數(shù)值為20即可實現(xiàn)實現(xiàn)“秒”定時,同理進行“分”﹑“時”定時,以及“日”﹑“月”﹑“年”定時。(3)LED數(shù)碼管顯示器采用“動態(tài)掃描驅(qū)動”考慮問題:驅(qū)動信號的維持時間必須大于“起輝時
3、間”(電流大起輝時間短),而驅(qū)動信號的間歇時間必須小于“余輝時間”(電流大余輝時間長),但驅(qū)動電流大小受硬件電路能力和LED數(shù)碼管極限功耗的制約。(4)動態(tài)掃描顯示方式在更新顯示內(nèi)容時,考慮到因LED數(shù)碼管余輝的存在可能會造成顯示字符的模糊,所以新內(nèi)容寫入顯示器之前將所有的LED數(shù)碼管熄滅。(5)關于自動識別“月大﹑月小”和“平年﹑潤年”問題的考慮a)月大和月小2月另外計算;554月﹑6月﹑9月﹑11月為月小30天,其余為月大31天。a)平年和潤年(年號能被4整除的就是潤年)平年的2月為28天;潤年的2月為29天。五、使用說明實物圖請參照后面附
4、帶圖片,從左至右為按鍵K2,K1,K0,以兩個LED顯示器為一組,左中右顯示時分秒或者年月日,還有鬧鐘和秒表K2:復位K1:設置閃爍K0:切換時間/日期或者調(diào)整時間/日期初始狀態(tài):接上電源之后,日期默認為10年6月21日,時間為0時0分秒,鬧鐘2點整但默認關閉,秒表為0狀態(tài)(1)顯示狀態(tài)切換:不斷按K0鍵就會依次循環(huán)顯示下面的狀態(tài)初始狀態(tài)時間55日期鬧鐘時間鬧鐘狀態(tài)秒表狀態(tài)(2)調(diào)節(jié)時間,日期:按K0鍵切換到想要調(diào)節(jié)的顯示狀態(tài),再按K1鍵選擇要修改的位,不斷按K1鍵會按左閃爍.中閃爍.右閃爍.確定.四個狀態(tài)切換,閃爍的位可以修改,按K0鍵可以實
5、現(xiàn)增加,不能遞減,例如要調(diào)慢時間要按到循環(huán)到較慢時間。55(3)鬧鐘使用:鬧鐘默認響的時間為一分鐘,鬧鐘的時間設置同時間日期的調(diào)節(jié),只需把狀態(tài)切換到鬧鐘時間的狀態(tài),鬧鐘的開關先按K0鍵切換到屏幕顯示為OFF的狀態(tài),如下:再按K1可切換到開狀態(tài),如下圖,再按K1可關閉,不斷循環(huán)(1)秒表:K0鍵按4下就可切換到秒表狀態(tài),出示為0,此時按下K1鍵就可開始計時,再按一下K1鍵可停止,此時K1為秒表開關,按K0鍵可再切換顯示其他。55六、硬件連接圖1、原理圖2、pcb圖553、實物圖七、程序流程圖:1.主程序55主程序系統(tǒng)初始化整點?鬧鐘到?提示音鬧鈴
6、提示音NNYY1.定時器0中斷子程序55定時器0中斷子程序保護現(xiàn)場重載計數(shù)初值秒表?秒表模塊到1秒?秒加1或向前進位恢復現(xiàn)場中斷返回YYNN551.外部中斷0子程序55外部INT0中斷帶顯示延時消抖調(diào)整模式有閃爍?切換顯示模式時間調(diào)整調(diào)整時間?調(diào)整日期?調(diào)整鬧鐘?日期調(diào)整秒表模式?日期、鬧鐘、鬧鐘設置、秒表顯示循環(huán)切換鬧鐘調(diào)整進入秒表中斷退出YNNYYNNNYYYY保護Psw、A寄存器恢復psw、A寄存器初始化秒表后臺計時?YNN提示音滴Key1按下?551.外部中斷1子程序外部INT1中斷保護psw、A寄存器帶顯示延時Key0按下?秒表模式?
7、設置鬧鐘?暫停/繼續(xù)計時打開/關閉鬧鐘閃爍循環(huán)切換滴一聲提示閃爍切換模式恢復psw、A寄存器退出中斷YYYNNN八、性能測試與故障排查1、硬件部分問題:斷路。55現(xiàn)象:程序下載完之后可以工作但是6個LED顯示器有2個沒亮。分析:因為其他幾個顯示器完全正常,這兩個則完全沒亮,所以推斷是位選的線路出故障。檢測:用萬用表測試各點電壓,著重測試兩條位選線路的斷路與短路情況,最終發(fā)現(xiàn)兩處斷路。解決:焊錫接上,最終全亮2、軟件部分偶數(shù)組實現(xiàn)基礎功能的程序老師已經(jīng)提供,該程序基本沒有多大的問題,就是里面的幾個參數(shù)需要修改,同時還有一個小bug。修改一:由于提
8、供的程序所默認采取的晶振計數(shù)頻率是6MHz,但是所提供的現(xiàn)實原件則是12MHz,所以根據(jù)晶振的不同,定時器的定時時間變?yōu)?.05s。按照該程序直接跑的