邵陽學院信息工程系 呂友懿 許建明 陳炯明
?
基于單片機的電子時鐘設計
邵陽學院信息工程系 呂友懿 許建明 陳炯明
【摘要】本設計以STC8952RC單片機控制器為主控芯片。STC89C52是STC公司生產的一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統可編程Flash存儲器。STC89C52使用經典的MCS-51內核,但做了很多的改進使得芯片具有傳統51單片機不具備的功能。在單芯片上,擁有靈巧的8 位CPU 和在系統可編程Flash,使得STC89C52為眾多嵌入式控制應用系統提供高靈活、超有效的解決方案。經實際測試時鐘的準確度達到了預定指標要求,實現了電子時鐘的基本功能,效果良好。
【關鍵詞】單片機;電子時鐘;控制器
本系統采用STC單片機為控制器的計數器來模擬計時,實現了時鐘的基本功能。用戶能夠通過按鍵設置時間和鬧鐘。顯示器件采用8段數碼管為顯示器件,通過單片機動態掃描的方式來顯示時間。按鍵由功能鍵、加鍵、減鍵三個按鍵組成,采用三個獨立按鍵。通過單片機循環對按鍵進行掃描來實現按鍵檢測。電源模塊則采用7805穩壓芯片,7805三端穩壓IC內部電路具有過壓保護、過流保護、過熱保護功能,這使它的性能很穩定,能夠實現1A以上的輸出電流,器件具有良好的溫度系數,因此產品的應用范圍很廣泛,輸出電壓誤差精度分為±3%和±5%。鬧鐘功能的實現則采用一個無源蜂鳴器作為發聲器件。該系統的系統框圖如圖1所示。

圖1 系統框圖
2.1 數碼管顯示電路設計
8段數碼管內部為8個獨立的LED,內部通過連線把所有二極管的陽極或者陰極接在一起,因此數碼管又分為共陰極和共陽極兩種型號,本設計采用共陽極的數碼管。由于單片機的I/O最大只能提供100~200uA的電流,這是無法驅動數碼管的,設計中采用三極管間接驅動的方式,把單片機的I/O接到三極管的基極然后,通過三極管就可以實現驅動數碼管的目的。
2.2 按鍵電路設計
該電路采用三個獨立按鍵,三個按鍵的一端短接到地,另外一端接到單片機的I/O。單片機按鍵檢測的原理為:首先把單片機的I/O設置為高電平,當有按鍵按下時通過按鍵把I/O拉為低電平,因此只要通過程序檢測I/O口是否變為低電平就可以檢測按鍵是否按下。
2.3 電源電路設計
本系統采用5V電源供電,耗電電流小于1A,因此可以采用7805穩壓芯片供電。7805穩壓芯片只有三條引腳輸出,分別是輸入端、接地端和輸出端,只需要把相應的引腳接到輸入、輸出和地就可以正常工作。
2.4 整體電路原理圖設計
該系統主要由單片機最小系統、按鍵電路、電源模塊、蜂鳴器、顯示電路構成。整體系統電路原理圖如圖2所示。

圖2 系統電路原理圖
該系統采用模塊化程序設計的思路,以中斷的方式實現計時的功能。該程序可分為顯示子程序、按鍵掃描子程序、中斷服務子函數、按鍵功能實現子程序、蜂鳴器驅動函數構成。主函數通過調用各個子程序達到電子時鐘的功能。整個程序以計數中斷函數為主體,子函數輔助完成計時和顯示的功能。整個程序的工作流程為:初始化外設和計數器、讀取上次掉電保存的時間和鬧鐘、循環數碼管動態掃描和按鍵檢測。經過實際測試程序整體的可讀性好,方便于維護和移植。
本系統采用了STC89C52RC單片機為主控制器完成了電子時鐘的基本功能。經實際測量該電子時鐘準確性高,系統長時間工作穩定,而且可以掉電保存時間和鬧鐘,是一款成本低、使用簡單、制作簡單的電子時鐘,有很好的實用價值。
參考文獻
[1]江世明,許建明,朱群峰,申壽云.單片機原理及應用[M].上海﹕上海交通大學出版社,2013.
[2]王東鋒,王會良等.單片機C語言應用100例[M].西安﹕電子工業出版社,2009.
[3]韓克,薛迎霄.單片機應用技術[M].北京﹕電子工業出版社,2013.
作者簡介:
呂友懿(1994—),男,湖南衡陽人,電子科學與技術專業本科在讀。
通信作者:
許建明(1977—),男,湖南武岡人,碩士,副教授,主要從事電子技術研究。