今天有個(gè)同事說讓我?guī)兔ψ鰝€(gè)倒計(jì)時(shí)器,來控制1個(gè)繼電器的開和關(guān),不過要低功耗,正好以前做過個(gè)路燈控制器,是雙繼電器的,用的是STC89C52+DS12887+1602,就稍微改造了下電路,在解決了一些小bug后,順利完工,我還是比較滿意的。 具體的方法是把以前控制另一個(gè)繼電器的管腳用來控制液晶的背光,由于他要求是鍵盤按下要求管腳感知高電平(不知道為啥),所以把鍵盤的電路也小改了下,最后改了下程序,下班前已經(jīng)基本完成。
本文引用地址:http://cafeforensic.com/article/201611/320863.htm 倒計(jì)時(shí)的思路是在DS12887非易失性RAM中寫入定時(shí)的時(shí)、分、秒,那么設(shè)定的倒計(jì)時(shí)時(shí)間久不會(huì)丟失,然后判斷時(shí)鐘的秒位有沒變化,如果變化了,將定時(shí)時(shí)間的秒位減1,減到-1將定時(shí)秒位賦59,然后分減1,小時(shí)也是同樣,最后當(dāng)定時(shí)的秒、分、時(shí)全為0時(shí),則繼電器斷開,定時(shí)結(jié)束,還有一些顯示方面的要求也滿足了下他
該倒計(jì)時(shí)器的功耗主要來自液晶的背光,因此平時(shí)背光都關(guān)閉,當(dāng)有鍵按下時(shí),背光開啟,待檢測(cè)到無鍵按下10S后背光關(guān)閉,這個(gè)是用51定時(shí)器0的中斷來做的。0.1ms產(chǎn)生一次中斷,累計(jì)到10ms檢測(cè)一次鍵盤狀態(tài),如果有鍵按下,就重新計(jì)時(shí),否則累加到10S。
評(píng)論