基于單片機控制的電子密碼鎖
由R8,R9,R6,R7及IC14構成電壓比較器,正常情況下,V+V- IC14輸出高電平,繼電器的常閉觸點(diǎn)和市電相連;當市電斷開(kāi),V+>V- IC14輸出高電平,由T3,T4構成的達林頓管使繼電器J開(kāi)啟,將其常開(kāi)觸電將蓄電池和電路相連,實(shí)現市電和蓄電池供電的切換,保證電子密碼鎖的正常工作(視電池容量而定持續時(shí)間)。其電路圖如下圖6所示:
T1,T2構成的蓄電池自動(dòng)充電電路,它在電池充滿(mǎn)后自動(dòng)停止充電,其中D1亮為正在充電,D2為工作指示。由R4,R5,T1構成電壓檢測電路,蓄電池電壓低,則T1,T2導通,實(shí)現對其充電;充滿(mǎn)后,T1,T2截止,停止充電,同時(shí)D1熄滅,電路中C4的作用是濾除干擾信號。其電路圖如圖7所示:
圖3-10 蓄電池自動(dòng)充電電路
6.設計總框圖
四、程序設計
1.模塊介紹
該計程計價(jià)系統的軟件設計分為以下幾個(gè)模塊:
(1)主程序模塊
主程序主要完成初始化、設置中斷向量、檢查有無(wú)按鍵按下、以及調用顯示等等。主程序的流程圖如下所示。
(2)鍵盤(pán)掃描及識別子程序
鍵盤(pán)采用查詢(xún)的方式,放在主程序中,當沒(méi)有按鍵按下的時(shí)候,單片機循環(huán)主程序,一旦有按鍵按下,便轉向相應的子程序處理,處理結束再返回。其程序流程如圖 所示.
(3)調電存儲服務(wù)程序
當比較密碼的時(shí)候,需要讀AT24C02程序,將存儲在芯片內的數據讀到RAM中,然后和輸入的密碼相比較。當修改密碼的時(shí)候,需要把輸入的密碼保存到AT24C02中,其程序流程如圖 所示.
(4)顯示子程序
由于是分屏顯示數據,所以就要用到5個(gè)顯示子程序,分別是:關(guān)閉狀態(tài)顯示子程序(DIS_A)、開(kāi)鎖狀態(tài)顯示子程序(DIS_B)、密碼輸入及修改狀態(tài)顯示子程序(DIS_C)、密碼輸入錯誤后的提示子程序(DIS_D)。密碼在規定的時(shí)間內輸入錯誤次數超過(guò)3次后的鎖定狀態(tài)顯示子程序(DIS_E).
五、總結
由于使用的是單片機作為核心的控制元件,以及靈敏的霍爾開(kāi)關(guān)型器件,是本出租車(chē)計價(jià)器具有功能強、性能可靠、電路簡(jiǎn)單、成本低的特點(diǎn),加上經(jīng)過(guò)優(yōu)化的程序,使其有很高的智能化水平。
但是在我們設計和調試的過(guò)程中,也發(fā)現了一些問(wèn)題,譬如計價(jià)的金額位數有限,實(shí)際的里程可能會(huì )很遠,會(huì )超出我們的顯示范圍。
計價(jià)器的設計還不夠人性化,比如加上語(yǔ)音的提示功能,可能會(huì )更有生命力。
評論