PIC單片機C語言程序設計(6)
4.可預置起始時刻的倒計時程序
在2010 年第2 期《PIC 單片機C 語言程序(5)》一文中,我們介紹了可預置起始時刻的時鐘的硬件電路并給出了C 語言程序。下面要介紹的可預置起始時刻的倒計時程序,是作為日常生活中對某事件的定時之用:只要某事件由人工設置的計時時間到,倒計時電路便會發(fā)出報警聲。倒計時的特點是,計時一旦達到預定值,其值就歸零。利用歸零條件,即可實現(xiàn)任意倒計時達到時的報警功能,提示人們定時已到。
本倒計時器可在0~99 分鐘內任意設置計時值。
例如在廚房中,蒸大米飯(8 兩米),定時33 分鐘,燒開水(一壺)為20 分鐘,煮胡羅卜(紅色)為30 分鐘等,只要設定時間一到,倒計時器即報警,使用十分方便。當然,上述倒計時值,均是事先用普通時鐘確定每個事件所要花費的時間,列出相應定時標準,才能用倒記時器進行定時。
(1)硬件電路。
圖6 是0~99 分鐘可預置的倒計時電路。
PIC16F84A 單片機④腳為手動復位端,外接R1、D0、C6、K0(微動開關)組成復位電路;③腳RA4 外接上電阻R2 和倒計時人工預置開關K1 ;⒄腳RAO 外接R0、V3 和蜂鳴器,組成倒計時值達到(歸零)時的自動報警信號。電路中的兩位LED 數(shù)碼管和V1、V2 組成0~99 分鐘可預置LED 數(shù)碼顯示電路,其電路原理與2009 年第12 期《PIC 單片機C 語言程序(3)》一文中圖3 的起始兩位計數(shù)電路相似。
?。?2) 程序流程圖。
圖7、圖8、圖9 分別為0~99 分鐘可預置的倒計時程序的主程序、顯示函數(shù)和鍵值掃描程序流程圖。通過流程圖,讀者可以加深對于倒計時程序設計原理和對2010 年第2 期《PIC 單片機C 語言程序(5)》一文中可預置時鐘電路程序的理解。
圖7 倒計定時主程序流程圖
圖8 倒計時顯示函數(shù)流程圖
圖9 倒計時鍵值掃描流程圖
評論