摘 要:本系統以AT89LS52單片機為核心,輔以必要的模擬、數字電路,組成了一個多功能的智能密碼鎖控制系統。該系統能控制開、關鎖的操作,管理員可通過管理員密碼解鎖,還可設置兩個用戶密碼進行開鎖。在密碼正確,開鎖成功的狀態下播放愉快的音樂,三次密碼輸入錯誤以聲光報警提示。除上述基本的密碼鎖功能外,還具有密碼掉電存儲、聲光提示、防盜報警等功能。
關鍵詞:AT89LS52單片機 密碼鎖 液晶顯示 掉電存儲
一、引言
隨著人們生活水平的提高,如何實現家庭防盜這一問題也變得尤其突出,傳統鎖具都存在致命的弱點:第一,鎖芯采用常見的銅、鋁、鋅等材料,抵抗不了強力破壞;第二,鎖具制作工藝,技術落后,無法阻止技術手段的開啟。而目前市場上很多國內外的鎖具,實際上都不具備真正的防盜功能。在盜竊者面前,兩根鋼絲或幾件簡單的工具就可以把這些鎖打開,有的盜竊者甚至公開揚言:“沒有我打不開的鎖。”其實,不是他們有多高明,而是一般鎖具技術原理太過簡單。面對這一現狀,新時代提出了鎖具必須革命的迫切的要求。
筆者從經濟實用、操作簡單、安全可靠等角度出發,采用AT89LS52單片機,設計具有防盜報警、掉電存儲、聲光提示等功能的智能密碼鎖控制系統,它符合住宅、辦公室用鎖要求,具有較高的推廣價值。
二、系統總體結構框圖
智能密碼鎖控制系統主要由單片機控制電路、液晶顯示控制電路、電源電路、提示燈控制電路、音樂控制電路、掉電保存控制電路、矩陣鍵盤控制電路等七部分組成。控制系統框圖如圖1所示。
三、硬件電路設計
1.音樂及報警電路
(1)要產生音頻脈沖,只要算出某一音頻的周期(1/頻率),然后將此周期除以2,即為半周期的時間。利用定時器計時這個半周期時間,每當計時到時后就將輸出脈沖的I/O反相,然后重復計時此半周期時間再對I/O反相,就可在I/O腳上得到此頻率的脈沖。
(2)利用AT89LS52的內部定時器,使其工作在計數器模式MODE1下,改變計數值THO及TL0以產生不同頻率,再將該頻率信號自單片機系統的外部中斷0(INT0)輸出至功率放大器(本電路采用LM386)驅動喇叭,用這種方法即可產生各種音樂,其電路如圖2所示。
2.矩陣鍵盤的設計
由于設計要求使用矩陣鍵盤中的行列式鍵盤,該設計能減少鍵盤與單片機接口時所占用的I/O線的數目,在按鍵比較多的時候,通常采用這樣方法。其具體電路如圖3所示。
在行列式鍵盤中,每一條水平(行線)與垂直線(列線)的交叉處不相通,而是通過一個按鍵來連通,利用這種行列式矩陣結構只需要N條行線和M條列線,即可組成具有N×M個按鍵的鍵盤。
在鍵盤處理程序首先執行等待按鍵并確認有無按鍵按下的程序段。當確認有按鍵按下后,下一步就要識別哪一個按鍵按下。對鍵的識別通常有兩種方法:一種是常用的逐行掃描查詢法;另一種是速度較快的線反轉法。
3.液晶顯示電路的設計
該模塊的顯示電路是為了給使用者以提示而設置的。考慮到現代密碼鎖的顯示需求,另一方面為了節約單片機的接口資源,本系統采用液晶顯示的方式,只使用單片機的10個管腳就可以完成單片機的顯示功能,顯示電路的電路原理圖如圖4所示。
4.掉電存儲電路的設計
掉電存儲電路的作用是在電源斷開的時候,存儲當前設定的開鎖信息。本系統采用AT28C16芯片達到掉電存儲的功能,AT28C16芯片可執行電擦除、可編程、有記憶的并行EEPROM存儲芯片,它采用兩線并行的總線和單片機通訊,芯片內的資料可以在斷電的情況下保存。在利用+5V電壓清除EEPROM時,通常不需要設置單獨的清除操作,而是在寫入的過程中自動清除即可。其具體電路如圖5所示,AT28C16芯片的8位數據端口、控制端口(接地)分別與單片機的P0口、讀寫數據控制信號、相連,從而構成掉電保護存儲電路。
每當設定一次開鎖信息時,系統就自動調用存儲程序,將開鎖信息保存在芯片內;當系統重新上電的時候,自動調用讀存儲器程序,將存儲器內的開鎖信息,讀到緩存單元中,供主程序使用。
5.密碼鎖的電源電路設計
本系統使用了兩種供電方式,一種是使用9V的電池供電;還有一種是使用9V穩壓電源供電。第一種方法是把9V的電壓經過半波整流,7805穩壓到5V送往電子切換電路。第二種方法是把220V市電通過變壓器降壓成9V的直流電,再經過半波整流,7805穩壓到5V送往電子切換電路,其具體電路圖如圖6所示。
四、軟件系統設計
智能密碼鎖控制系統的軟件設計主要分為以下幾個模塊。
1.主程序模塊
主程序主要完成初始化、設置中斷向量、檢查有無按鍵按下、以及調用顯示等等。
2.鍵盤掃描及識別子程序
鍵盤采用查詢的方式,放在主程序中,當沒有按鍵按下的時候,單片機循環主程序,一旦有按鍵按下,便轉向相應的子程序處理,處理結束再返回。
3.掉電存儲服務程序
在程序一開始就把存儲在AT28C16中的數據讀到RAM中,然后與輸入的密碼相比較。當修改密碼的時候,需要把修改后的密碼先保存到AT28C16中,在需要時,再從中提取。
4.顯示子程序
由于是液晶顯示數據,所以先對液晶進行初始化,然后再將相應的數據通過數據線傳送給液晶,使其顯示相應的數據和字符。在每執行一個功能,都有相應的字符顯示在液晶上,密碼在規定的時間內輸入錯誤次數超過3次,則鎖定顯示子程序的狀態。
五、系統調試
系統調試過程分為三大部分:硬件調試,軟件調試,軟件和硬件聯調。電路先按模塊逐個調試,各模塊調試成功后再進行聯調。軟件程序則先在最小系統板調試,通過后再進行軟、硬件聯調。
1.硬件調試
(1)在簡單的復位電路中,干擾易串入復位端,在大多數情況下不會造成單片機的錯誤復位,但會引起內部某些寄存器的錯誤復位,所以我們采用在RESET引腳上接上一個去耦電容。為了操作上的方便,我們采用了開機復位和按鈕復位兩種復位方式。
(2)為了節省89C52的引腳,我們把74LS373和28C16的片選端都直接接地了,還在提示燈控制電路部分采用了74HC393(二--四譯碼器)。
(3)為了使音樂更和諧、悅耳,我們采用兩個喇叭和其他一些輔助元件構成。
2.軟件調試
本系統的軟件系統采用匯編語言編寫,調試也是分模塊進行,各個模塊程序調試好后,通過調用子程序的方法,進行整體程序的合并,這樣程序結構明了,出錯概率較小。
3.軟、硬件聯調
將軟件與硬件電路連接好,然后把程序寫入單片機,先調試控制系統的各個模塊電路,確認成功后,再進行整體調試,按照智能密碼鎖使用時的具體操作步驟執行。正常運行時,智能密碼鎖控制系統效果圖如圖7所示。
六、結論
隨著科技的進步,鎖具已經發展到了磁性鎖、電子鎖、激光鎖、聲控鎖等等。在傳統鑰匙的基礎上,加了不同磁場,不同聲音,不同聲波,不同光束光波,不同圖像(如指紋、眼底視網膜等)來控制鎖的開啟。從而大大提高了鎖的安全性。但盜賊的偷盜手段同樣也變得高明,在今后我們仍需要利用新技術、新方法研制更加安全可靠的鎖具,才能讓不法之徒無從下手,人民的財產安全才能有更大的保障。
參考文獻:
[1]何樂年等.模擬集成電路設計與仿真[M],北京:科學出版社,2008.
[2]張建軍等.單片機應用基礎[M],北京:機械工業出版社,2008.
[3]吳金戌等.8051單片機實踐與應用[M].北京:清華大學出版社,2002.
(作者單位:珠海市高級技工學校)