孫萬麟
(昌吉學院 物理系, 新疆 昌吉 831100)
因單片機具有結構簡單、運行速度快、控制系統(tǒng)穩(wěn)定以及使用壽命長等優(yōu)點,故許多學者采用單片機作為主控器,對電子密碼鎖控制系統(tǒng)進行設計及仿真,如,田曉翠等采用AT89C51單片機對最基本的鍵盤式電子密碼鎖進行了詳細設計及功能分析[1];陳丹萍采用AT89S51單片機對一類商場使用的電子數(shù)字密碼鎖進行了一些簡單功能設計及仿真[2];程院蓮等也采用AT89S51單片機作為主控制器,對具有密碼修改、成功開鎖等多功能鍵盤式電子密碼鎖進行了一系列設計及仿真[3]。鑒于此,本文也選用AT89S51單片機作為主控器,在對已有密碼鎖控制系統(tǒng)[4-7]部分功能進一步完善的基礎上,設計及仿真了一款鍵盤式多功能電子密碼鎖控制系統(tǒng)。
本文選擇具有低功耗、高性能、非易失性及閃存等特性的AT89S51單片機作為密碼鎖系統(tǒng)主控器,主要是利用AT89S51單片機的控制準確性、設計靈活性和豐富I/O接口等優(yōu)點,在減少錯誤產(chǎn)生的同時還可以實現(xiàn)密碼鎖的多種功能。一般密碼鎖系統(tǒng)都是采用LCD液晶模塊來顯示密碼位數(shù)以及各項操作的信息提示,利用矩陣式鍵盤進行密碼輸入、刪除、修改以及用戶自定義功能等操作,并配置存儲模塊對密碼記憶保存以及密碼輸入錯誤的蜂鳴器報警提示等。另外,有些密碼鎖還設計管理員萬能密碼,在用戶忘記密碼時可以通過輸入萬能密碼進行密碼重新設置。但是要有效保護管理員密碼,以防被盜。
本文所設計的密碼鎖控制系統(tǒng),其核心是AT89S51單片機主控器,外圍電路主要有顯示模塊、鍵盤輸入模塊、密碼存儲模塊以及報警電路等,其中顯示模塊采用LCD作為密碼鎖輸出顯示,鍵盤輸入模塊采用4×4矩陣式鍵盤,多鍵位按鍵可以實現(xiàn)密碼鎖多功能操作及控制。密碼存儲模塊采用AT24C02芯片,該系統(tǒng)構成框圖如圖1所示。
圖1 密碼鎖控制系統(tǒng)框圖
根據(jù)圖1密碼鎖系統(tǒng)構成,本文采用Protues軟件搭建的電子密碼鎖仿真電路如圖2所示。
圖2 密碼鎖控制系統(tǒng)電路圖
圖2所示的密碼鎖控制系統(tǒng)電路,可實現(xiàn)以下6大功能:
1)當密碼輸入正確時,蜂鳴器會發(fā)出“滴答”開鎖聲提示,且LED燈會閃亮一次,同時液晶屏會顯示開鎖信息“open”;
2)以防密碼被盜,液晶屏上輸入8位密碼顯示為“********”;
3)當密碼輸入錯誤時,蜂鳴器就會發(fā)出連續(xù)報警聲提示,同時液晶屏會顯示錯誤信息提示“error”;
4)用戶自主修改密碼,并增加確認次數(shù)為3次,且當兩次輸入新密碼一致時,新密碼才算修改成功,同時液晶屏會顯示“Reset Password OK”提示信息,防止用戶錯誤操作;
5)利用4×4矩陣鍵盤,設置0-9數(shù)字輸入以及復位、清除、確認、修改密碼、關鎖、取消以及開啟萬能密碼等功能鍵;
6)設置管理員萬能密碼,在忘記密碼時可以通過輸入萬能密碼進行密碼重置。
本文采用C語言編寫密碼鎖控制系統(tǒng)源程序代碼,主要包括系統(tǒng)初始化程序、LCD 液晶顯示子程序、鍵盤掃描子程序、鍵入功能子程序、設置密碼子程序、修改密碼子程序、報警子程序、EEPROM 讀寫子程序和延時子程序等,其中主程序設計流程如圖3所示,修改密碼設計流程如圖4所示[8-12]。
圖3 主程序設計流程圖
圖4 修改密碼設計流程圖
本文采用4×4矩陣式鍵盤實現(xiàn)密碼鎖多功能操作及控制,16個按鍵定義功能為:數(shù)字鍵“ 0 - 9”、確認鍵“#”、關鎖鍵“*”、復位鍵“A”、修改密碼鍵“B”、取消鍵“C”以及開啟萬能密碼鍵“D”。圖5為16個按鍵在圖2鍵盤模塊電路中所對應排列方式。
圖5 按鍵排列
采用Keil軟件對系統(tǒng)源程序進行調(diào)試、編譯,并將編譯生成的HEX文件添加至單片機芯片AT89S51中進行仿真。
當密碼輸入正確時,蜂鳴器會發(fā)出“滴答”開鎖聲提示,且LED燈會閃亮一次,同時液晶屏會顯示開鎖信息,即第二行顯示為“open”。
在系統(tǒng)運行仿真正確下,就可以制作實物。首先使用Protel軟件將圖2布線封裝成PCB板圖,如圖6所示。
圖6 PCB板圖
接著對PCB板進行元器件測試及焊接,然后調(diào)試運行,其中密碼輸入正確運行結果如圖7所示。
圖7 密碼正確開鎖圖
經(jīng)測試,實物運行和仿真結果一致,即各個器件均正常工作,證實本系統(tǒng)設計正確、可行。
本文利用Proteus軟件設計及仿真了一個以8位數(shù)字為密碼,具有密碼保護、密碼修改、成功開鎖、輸入錯誤報警及配設管理員萬能密碼等多功能電子密碼鎖控制系統(tǒng)。該系統(tǒng)從軟件設計、仿真到實物成功運行,可為類似其他控制系統(tǒng)設計及制作提供一些參考。