文/趙若靜
基于單片機的電子密碼鎖的設計
文/趙若靜
本文設計了一款基于單片機的電子密碼鎖。采用AT89C51單片機為主控芯片,LCD1602顯示器、AT24C02芯片為儲存單元。可以實現開鎖,報警、可以反復設置密碼等多種功能。
保密性 單片機 電子密碼
本電子密碼鎖選取單片機AT89C51為主控芯片。除非密碼無誤,否則打不開電子鎖。假如密碼錯誤,則顯示屏會提示ERROR。為了增加電子鎖的保密性,如果連續輸錯三次,則會發出警報。密碼可以根據使用者的需求自由設置,并且更改密碼之前必需輸入原先的密碼。為了防止用戶誤操作,新密碼必須輸入兩次來確保一致。
本設計主要由三部分組成。分別為單片機、矩陣鍵盤和儲存單元。使用者通過按鍵在矩陣鍵盤上輸入之前設置的密碼,鍵盤將接收到的信息傳入單片機,單片機再將接收到的信息與之前使用者設置的初始密碼進行核對,看是否一致,一致則傳入開鎖電路將鎖打開。不一致則傳入報警電路響鈴。這個過程持續的時間不到一秒。
本設計由硬件和軟件兩部分組成本系統。其中硬件部分由電源輸入、鍵盤輸入、密碼存儲、復位、晶振、顯示、報警、開鎖等這些部分組成。軟件部分對應的由主程序部分、初始化程序部分、LCD顯示程序部分、鍵盤掃描程序部分、啟動程序部分、關閉程序部分、密碼設置程序部分、EEPROM讀寫程序部分和延時程序部分等組成,如圖1所示。
設計單片機硬件資源的分配:
P0.0~P0.7用于LCD液晶顯示作用。P2.6、P2.7用于蜂鳴器和報警燈的控制。P2.0用于開鎖電路的控制。
P1.0~P1.7用于鍵盤電路的控制。
P3.3~P3.5用于LCD顯示模塊的控制端口的控制。
當焊接好后,首先要進行的就是調試。以確保焊接是否正確。通電前先檢查電源與地是否短路。將萬用表調到測電阻檔,把兩支表筆分別接到單片機的電源引腳和接地引腳上,如果萬用表沒有發出聲音,并且電阻沒有近乎于零則證明沒有短路。按照以上的方法檢查所有元器件。確保無誤后便可以通電了。接通電源后,打開開關,如果顯示器沒有反應,則必須趕緊關閉電源,檢查單片機等器件是否發熱,是否有異味,防止其燒壞,并且重新檢查各個元器件是否連接正確。如果檢查無誤通電后顯示屏還沒有反應,那么就在通電的狀態下將萬用表調到電壓檔,檢查電源與地之間的電壓,如果低于輸入的電壓則有地方短路了,需要重新檢查電路。
如果單片機正常工作,液晶顯示器卻沒有,那我們應該先檢查液晶的第三引腳上的兩個電阻。第三腳與電源之間的電阻,一般為10K。檢查這兩個電阻有沒有接反或者接錯,如果接的不正確,則會影響液晶的顯示,特別是如果這兩個電阻接反,液晶會一點顯示都沒有。電阻檢查無誤后使用萬用表依次檢查液晶顯示器的數據腳即四到十四腳有無短路或者斷路。沒有問題后檢查對應的排阻是否有沒有接反。如果上述都沒問題,則液晶部分的焊接是正確的。特別要注意電源與地千萬不能接反,否則液晶會燒掉。
繼電器都是由三極管驅動的。三極管的基極有一個1K的電阻。在單片機正常工作后,給系統通電。將三極管基極的電阻的一端用一根導線接到單片機的接地引腳上,繼電器會吸合。如果不吸合,那么這部分電路就有問題了。蜂鳴器原理也和繼電器一樣,將與蜂鳴器所連的三極管基極的電阻的一端用一根導線接到單片機的地引腳上,蜂鳴器會發出聲音。如果蜂鳴器不發出聲音,可以將蜂鳴器拆下來,直接與電源相連,如還沒聲音,則是蜂鳴器壞了。
獨立按鍵中每個按鍵的下端都接地,將萬用表表筆分別接到單片機的接地端引腳與其中一個按鍵下端,如果萬用表發出聲響則表示按鍵已接地,依次測試。然后將萬用表測試每一個按鍵與其對應的單片機引腳,當按鍵按下去的時候,萬用表發出聲響則表示按鍵焊接無誤。如果發現沒有接通那就是電路斷路或者錯接了。矩陣按鍵中,分別檢測每一行、每一列有沒有接到一起。如果沒錯誤就依次檢查八個引腳有沒有短路。如果有的話在輸入密碼時可能會沒有反應,也可能輸入正確的密碼卻顯示錯誤。
本設計將單片機AT89C51作為主控芯片,AT24C02作為數存儲芯片,通過矩陣鍵盤的輸入,液晶顯示器的顯示以及開鎖電路的控制,這是一款將開鎖、報警、多次修改密碼集于一身的電子密碼鎖,本設計還有密碼錯誤提示、錯誤報警、重復設置密碼等功能,可以在意外泄露密碼的時候隨時修改,這一設計大大提高了安全保障。之所以選用單片機作為本設計的核心控制,其原因主要是因為它具有成本較低、實用性強、保密性高以及容易操作等一系列優點。
[1]張苗,孫斌.住宅小區安全防范存在的問題與對策[J].安防科技,2003(12):47-49.
[2]劉雪,張海江.基于單片機的電動車智能防盜鎖的設計[J].電腦知識與技術,2012(01):88-90.
[3]趙玉冰.一種家庭防盜密碼鎖電路設計[J].消費電子,2013(08):16-16.
作者單位 山西農業大學信息學院 山西省太谷縣030800
趙若靜(1985-),女,山西省臨汾市人。現為山西農業大學信息學院教師。研究方向為信息處理。