摘 要:本系統由單片機系統,矩陣鍵盤,LED顯示和報警系統組成。系統能完成開鎖,密碼輸入錯誤報警,輸入密碼顯示,輸入密碼錯誤對當前數修改和整體刪除,超次數輸入錯誤密碼時密碼鎖定和管理員密碼解鎖等功能。本系統成本低廉,功能實用。
關鍵詞:AT89C51;電子密碼鎖;矩陣鍵盤
本系統由AT89C51、矩陣式按鍵、二極管、LED數碼管、蜂鳴器等部分構成,能實現密碼輸入顯示,輸入當前位錯誤時刪除和密碼輸入完時整體刪除,輸入錯誤密碼時報警。同時也可進行超次數輸入錯誤密碼時密碼鎖自鎖和管理員密碼解鎖等功能、密碼較驗報警和LED二極管顯示。本系統主要是模擬“矩陣式開關”密碼鎖,整體設計價格低廉,功能性強,編程方便,實用。
1 電子密碼鎖的總體設計
1.1 鍵盤輸入模塊
要求本設計采用矩陣式鍵盤輸入,行線分別接P10 P11 P12 P13,列線分別接P14 P15 P16 P17。每一條水平(行線)與垂直線(列線)的交叉處不相通,通過一個按鍵來連通,利用這種行列式矩陣結構只需要N條行線和M條列線,即可組成具有N×M個按鍵的鍵盤。在這種行列式矩陣鍵盤的單片機系統中,鍵盤處理程序首先確認有無按鍵按下。
共有10個數字鍵,為0—9。有5個功能鍵,ENTER為輸入鍵,當輸入六位密碼后按下ENTER鍵,確定輸入密碼后與設定密碼比較。CLEAR鍵為刪除鍵,當輸入六位密碼錯誤時,報警系統報警,按下CLEAR鍵,解除報警,同時刪除六位密碼,可以再次重新輸入密碼(輸入密碼次數小于3次)。DELETE鍵是當前位刪除,當輸入一位密碼錯誤時,按下DELETE鍵可以刪除這一個數字。MANAGER鍵為管理員模式選擇鍵,當用戶輸入三次錯誤密碼時,密碼鎖自己鎖定,此時不能再輸入密碼。按下MANAGER鍵,進入管理員模式,輸入正確的管理員密碼后,密碼鎖解除鎖定,按下CONGIRM,用戶可以再次輸入密碼,如果管理員密碼輸入不正確,密碼鎖不能解除鎖定,同時會報警。
1.2 顯示模塊
本設計采用動態顯示驅動。通過單片機對數碼管位選通COM端電路的控制,將需要顯示的數碼管的選通控制打開,該位就顯示出字形,沒有選通的數碼管就不會亮。通過分時輪流控制各個數碼管的的COM端,使各個數碼管輪流受控顯示,可以大幅度地降低硬件成本和電源的功耗,故顯示所需要的硬件電路可分時復用,可以避免靜態顯示的問題。動態顯示采用多路復用技術的動態掃描顯示方式,因為利用動態掃描顯示使我們看到一幅穩定畫面的實質是利用了人眼的暫留效應和發光二極管發光時間的長短,發光的亮度等因素。其中P00-P07分別接LED數碼管的A B C D E F G DP,為、位選段1-6分別接P20-P25。
1.3 聲音控制模塊
采用蜂鳴器控制開鎖顯示,當輸入正確密碼時,單片機向蜂鳴器送出低電平,驅動蜂鳴器響鈴。采用蜂鳴器鬧鈴結構簡單,只需要單路信號控制,發出的鬧鈴聲音可以根據響和不響的不同的軟件延時時間來控制,若加上LM386放大電路的話,當然也能發出清脆的音樂聲音。當輸入密碼錯誤時,該模塊發出報警聲音,密碼的按鍵音是通過聲音模塊發出的。用戶輸入六位正確密碼時按再ENTEER鍵,藍燈D1亮,表示開鎖成功。按CLEAR鍵清除六位密碼。當輸入三次錯誤,密碼鎖自動鎖住,用戶不能再輸入密碼,此時進入管理員模式,只有輸入正確管理員密碼時按ERTER鍵,密碼鎖解碼成功時藍燈D1,綠燈D2燈亮。按CONFIRM鍵退出管理員模式,此時燈D1,D2滅。當管理員密碼輸入不正確時,密碼鎖自鎖不能解開,同時報警聲響紅燈D3亮。
2 程序軟件設計模塊
在開啟密碼鎖時需要先初始化,利用“矩陣法”鍵盤掃描確定鍵盤按鈕是否按下,當輸入6位密碼時判別是否正確,只有輸入的密碼與預先設置的密碼完全正確時才能開鎖。當輸入不對時可以刪除重新輸入密碼,如果輸入錯誤,不能打開密碼鎖,同時有警報聲響起。當三次輸入都不對,密碼自動鎖住,需要專業的人才能打開。總電路圖如圖1:
本設計所有的控制都是由單片機來完成的,它是整個系統的核心部分,控制和合理的分配各個部分工作。利用七段數碼管顯示輸入的密碼,在利用“矩陣法”鍵盤掃描確定按下的數字。該設計簡單,只需簡單信號控制,價格便宜。
[參考文獻]
[1]樓然苗.《單片機課程設計指導》.北京航空航天大學出版社,2007.7.
[2]李學海.《標準89C51單片機基礎教程:原理篇》.北京出版社,2007.6.
[3]蘇家健.《單片機原理及應用技術》.高等教育出版社,2004.11.