基于C語言51單片機(jī)電子密碼鎖的設(shè)計(jì)與仿真
0、引言
電子密碼鎖是現(xiàn)代生活中常用的加密工具。它克服了機(jī)械式密碼鎖密碼量少、安全性能差的缺點(diǎn),尤其是的智能電子密碼鎖;不僅具有電子密碼鎖的功能”還可引人智能化管理功能,從而使密碼鎖具有更離的安全性和可靠性。
電子密碼鎖通常使用ARM和單片機(jī)控制,單片機(jī)相對ARM實(shí)現(xiàn)較為簡單,功能較為完善,因此使用單片機(jī)控制較多。用單片機(jī)控制的窖碼鎖常使用匯編語言編寫程序,顯示器多數(shù)用。而本文所介紹的電子密犸鎖使用移植性及可讀性強(qiáng)的高級(jí)語言C語言編寫,便于修改和增減功能蚤同時(shí)采用顯示清楚數(shù)碼管,功率消耗小而且壽命長的 液晶顯示器,顯示更加直觀,使用更加方便。從經(jīng)濟(jì)實(shí)用的角度出發(fā),采用STC89C52單片機(jī)設(shè)計(jì)出一種具有密碼設(shè)置、報(bào)警和防止多次試探密碼功能的電子密碼鎖,通過Protues軟件成功地進(jìn)行了仿真。
1、系統(tǒng)工作原理
本系統(tǒng)以STC89C52單片機(jī)為核心,使用4X4矩陣鍵盤作為數(shù)據(jù)輸人方式,驅(qū)動(dòng)1602顯示器提示程序運(yùn)行過程和*的步驟。本系統(tǒng)的密碼判斷過程如下:
當(dāng)使用者輸人6位密碼后按下BESURE鍵,單片機(jī)通過密碼逐個(gè)比較,如果輸入的6位蜜碼和設(shè)定的密碼完全相同,那么能成功驅(qū)動(dòng)*模擬燈將鎖打開。若輸入6位密碼與設(shè)定的密碼不相同,按下BESURE鍵后,模擬燈不亮,可以按BACK鍵重新輸入。由于輸入密碼過程中難免輸入失誤,如果密碼輸錯(cuò),可直接攢下BACK鍵重新輸入,但是系統(tǒng)不允許無限次地按BACK 鍵,以免密碼被套用,當(dāng)3次密碼輸入都錯(cuò)誤,單片機(jī)將驅(qū)動(dòng)蜂鳴器報(bào)警。并且本系統(tǒng)輸入密碼還有囈間限制,在規(guī)定的時(shí)閽內(nèi)沒有將正確密碼輸入也會(huì)報(bào)警。
修改密碼功能如下:當(dāng)密碼輸人正確后,按下SET鍵可新設(shè)置密碼。每設(shè)定一位新密碼,單片機(jī)將其送給EPROM,當(dāng)6位新密碼都輸入完畢,系統(tǒng)將自動(dòng)回到程序開始,重新讀取密碼并保存,使用者需輸人新的密碼才能將鎖打開。
2、系統(tǒng)設(shè)計(jì)
使用的元器件有:核心芯片STC89C52、存儲(chǔ)芯片AT24C02、液晶顯示1602、矩陣鍵盤、報(bào)警蜂鳴器、獨(dú)立按鍵(摸擬門的開關(guān))、發(fā)光二極管(模擬鎖的開關(guān))和三極管(放大電流)。
2.1 硬件支持
2.2 軟件設(shè)計(jì)
本系統(tǒng)軟件包插主程序模塊、甯碼比較判斷模塊、修改密碼模塊、鍵盤掃描模塊、液晶顯示模塊及定時(shí)程序等模塊。系統(tǒng)程序流程如圖1所示。
圖1 系統(tǒng)程序流程圖
手機(jī)電池相關(guān)文章:手機(jī)電池修復(fù)
51單片機(jī)相關(guān)文章:51單片機(jī)教程
c語言相關(guān)文章:c語言教程
單片機(jī)相關(guān)文章:單片機(jī)教程
單片機(jī)相關(guān)文章:單片機(jī)視頻教程
單片機(jī)相關(guān)文章:單片機(jī)工作原理
蜂鳴器相關(guān)文章:蜂鳴器原理
評論