(1)硬件電路
利用4位LED數碼管顯示電路,可以制成24小時或12小時循環(huán)顯示的時鐘電路,且該時鐘可以由人工預置起始時刻,即電路插上電源后,可根據當時的實時時刻,如手機或電視屏上顯示的時刻,進行人工校時,之后即可作時鐘用;若不進行人工預置(校時),該電路就自動從00、00開始,以分為單位起始計時,此時,該電路可作人工守侯定時器。該時鐘電路不顯示秒,而是以分鐘開始的顯示。
該電路仍采用PIC16F84A芯片,當寫入下面給出的程序后,即可作24小時時鐘用。其使用方法如下:
插上電源,LED數碼管顯示00.00,按下K1鍵,數碼管全滅,松開K1鍵,再按下K1鍵,數碼管從0(分位)開始計數,到達指定的分鐘顯示時,放開K1鍵,又按K1鍵,時位顯示,到達指定的時顯示時,放開K1,時鐘即按人工預置起始時刻工作,操作十分簡單。
注意:如果預置時間的時位是從00開始而僅有分鐘的有效值時,當預置分鐘指定值后,仍要再按下K1鍵,使時位從00遞增又回到00,時鐘即可工作,否則時鐘電路不會工作。
(2)24小時的時鐘C程序
根據24小時時鐘電路的功能,可繪出相關流程圖,再由流程圖編寫出24小時的時鐘C程序。該程序命名為pic0.5.c,其清單如下:
說明:
1)上述C程序,經piCC編譯器編譯,生成目標碼.hex,即可用編程器將.hex程序燒寫到pic16F84A芯片中,再制成24小時的時鐘。該時鐘與標準時間相比,僅慢1秒/周。略增、減本程序中的d值,可再校時。
2)初學者仔細查看程序中的注釋,即可理解本C程序的編寫原理。