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