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