摘 要:基于單片機(jī)AT89C51電子密碼鎖的設(shè)計(jì),使得開鎖系統(tǒng)、顯示系統(tǒng)、報(bào)警系統(tǒng)越來越完善。電子密碼鎖依托單片機(jī)AT89C5的支持,實(shí)現(xiàn)了鍵盤輸入模塊、顯示模塊、聲音控制模塊實(shí)用功能的提高,使得程序軟件設(shè)計(jì)更富有邏輯性、科學(xué)性、系統(tǒng)性。如此,基于單片機(jī)AT89C51電子密碼鎖便具有功能性強(qiáng)、價(jià)格低、安全性高等優(yōu)勢,從而獲得了市場消費(fèi)者的普遍認(rèn)可與應(yīng)用。在此,本文將詳細(xì)分析基于單片機(jī)AT89C5電子密碼鎖的設(shè)計(jì)與實(shí)現(xiàn)。
關(guān)鍵詞:單片機(jī)AT89C5;電子密碼鎖;設(shè)計(jì)
基于單片機(jī)AT89C51電子密碼鎖的設(shè)計(jì),其系統(tǒng)成分主要包括矩陣式鍵盤、LED數(shù)碼管、二級管、蜂鳴器等。這種系統(tǒng)設(shè)計(jì)的電子密碼鎖其功能性更加多樣化,主要具備LED二極管密碼輸入顯示、密碼前位錯(cuò)位輸入或整體刪除、密碼鎖自鎖、管理員密碼解鎖、密碼校驗(yàn)報(bào)警等功能。此外,基于單片機(jī)AT89C51設(shè)計(jì)的電子密碼還擁有編程方便、實(shí)用性強(qiáng)、價(jià)格低等優(yōu)勢,因而受到市場消費(fèi)者的普遍認(rèn)可,其應(yīng)用范圍越來越廣闊。
1 基于單片機(jī)AT89C51電子密碼鎖的總體設(shè)計(jì)
1.1 鍵盤輸入模塊
鍵盤輸入模塊是基于單片機(jī)AT89C51電子密碼鎖設(shè)計(jì)中的基本條件,其以矩陣式鍵盤輸入形式為主,主要由10個(gè)數(shù)字鍵(0-9)、ENTER鍵(輸入鍵)、CLEAR鍵(刪除鍵)、DELETE鍵(當(dāng)前位刪除鍵)、MANAGER鍵(管理員模式選擇)、CONGIRM鍵(確定鍵)組成。在這種行列式矩陣鍵盤的單片機(jī)系統(tǒng)中,建構(gòu)N條行線(連接P10、P11、P12、P13)與M條列線(連接P14、P15、P16、P17)的結(jié)構(gòu),每一條行線、列線需通過一個(gè)按鍵來實(shí)現(xiàn)交叉連通,從而組成具有N×M個(gè)按鍵的鍵盤。其中,5個(gè)功能鍵的設(shè)計(jì)非常重要的作用,按下ENTER鍵就可輸入6位的數(shù)字密碼,用戶再按下CONGIRM鍵時(shí)系統(tǒng)自動(dòng)將設(shè)定密碼與輸入密碼進(jìn)行對比,當(dāng)6位密碼輸入錯(cuò)誤時(shí)報(bào)警系統(tǒng)發(fā)出警報(bào),解除警報(bào)需按下CLEAR鍵并實(shí)現(xiàn)對錯(cuò)誤密碼的自動(dòng)刪除,而后用戶可再次重新輸入密碼,但密碼輸入的次數(shù)僅限3次。若用戶在輸入密碼過程中,發(fā)現(xiàn)當(dāng)前一位密碼輸入錯(cuò)誤時(shí),通過及時(shí)按下DELETE鍵可刪除當(dāng)前數(shù)字。而當(dāng)用戶超過3次密碼輸入機(jī)會(huì)時(shí),密碼鎖自動(dòng)鎖定,此時(shí)需要按下MANAGER鍵再輸入正確的管理員密碼,以實(shí)現(xiàn)密碼鎖解除鎖定,再按下CONGIRM鍵后用戶才可再次輸入密碼。
1.2 顯示模塊
顯示模塊可實(shí)現(xiàn)電子密碼鎖輸入操作的顯示,在系統(tǒng)設(shè)計(jì)中需進(jìn)行動(dòng)態(tài)顯示驅(qū)動(dòng),運(yùn)用單片機(jī)打開選通數(shù)碼管所對應(yīng)的COM端電路,以在顯示屏上亮燈顯示相應(yīng)數(shù)碼管中的字形。在電子鎖顯示模塊設(shè)計(jì)中,需要注意分時(shí)輪流控制各個(gè)數(shù)碼管的COM端,如此可避免產(chǎn)生靜態(tài)顯示的問題,從而實(shí)現(xiàn)各個(gè)數(shù)碼管輪流受控的顯示,可分時(shí)復(fù)用顯示所需的硬件電路,并大幅度降低硬件成本及電源功耗。一般,鑒于人眼的暫留效應(yīng)、發(fā)光二極管的發(fā)光時(shí)間與亮度的影響,顯示模塊設(shè)計(jì)采用多路復(fù)用技術(shù)的動(dòng)態(tài)掃描顯示方式,以利于顯示一幅穩(wěn)定的畫面。
1.3 聲音控制模塊
聲音控制模塊設(shè)計(jì)利于實(shí)現(xiàn)電子密碼鎖的開鎖與自動(dòng)報(bào)警。電子密碼鎖的開鎖原理是采用簡單的單路信號控制的蜂鳴器鬧鈴結(jié)構(gòu),利用單片機(jī)AT89C5向蜂鳴器發(fā)送低電平,當(dāng)用戶輸入正確密碼并按下ENTEER鍵時(shí),可驅(qū)動(dòng)蜂鳴器響鈴,通過LM386放大電路發(fā)出清脆的音樂鈴聲,藍(lán)燈D1亮,成功開鎖。若密碼輸入錯(cuò)誤時(shí),則通過聲音模塊發(fā)出報(bào)警聲,需按下CLEAR鍵消除報(bào)警聲及錯(cuò)誤密碼。在用戶因三次密碼輸入錯(cuò)誤電子密碼鎖自動(dòng)鎖定時(shí),用戶需要進(jìn)入管理員模式并輸入正確的管理員密碼按下ERTER鍵,若管理員密碼輸入正確,則藍(lán)燈D1、綠燈D2亮以表示密碼鎖解碼成功,再按下CONFIRM鍵后燈滅,退出管理員模式,反之解鎖不成功,且紅燈D3亮,報(bào)警聲響起。
2 基于單片機(jī)AT89C51電子密碼鎖的程序軟件設(shè)計(jì)
基于單片機(jī)AT89C51電子鎖的程序軟件設(shè)計(jì),首先需要進(jìn)行初始化,而后開啟密碼鎖功能,通過“矩陣法”鍵盤掃描檢查是否按下鍵盤按鈕,并利用七段數(shù)碼管以顯示輸入密碼。如圖1所示,這是電子密碼鎖的總電路圖,其代表整個(gè)系統(tǒng)的核心,通過單片機(jī)來實(shí)現(xiàn)系統(tǒng)中的所有控制,并合理分配各個(gè)部分的工作,該系統(tǒng)程序控制簡單,只需信號即可實(shí)現(xiàn)有效控制。當(dāng)用戶輸入正確的6位密碼時(shí),利用“矩陣法”鍵盤掃描確定用戶按下的數(shù)字,將輸入密碼與預(yù)先設(shè)置密碼進(jìn)行對比,正確則密碼鎖成功打開,當(dāng)密碼輸入錯(cuò)誤時(shí)警報(bào)響起,需用處重新輸入密碼。當(dāng)用戶三次密碼輸入都不正確時(shí),密碼鎖自動(dòng)鎖住,此時(shí)需要專業(yè)管理員輸入密碼以解除系統(tǒng)鎖住功能,之后用戶才能再次重新輸入密碼開鎖。
綜上,基于單片機(jī)AT89C51電子密碼鎖的設(shè)計(jì)使其功能性得以提高,開鎖系統(tǒng)、顯示系統(tǒng)、報(bào)警系統(tǒng)越來越完善,實(shí)現(xiàn)了電子密碼鎖的低成本、高實(shí)用、安全性的設(shè)計(jì)目標(biāo)。
[參考文獻(xiàn)]
[1]樓然苗.《單片機(jī)課程設(shè)計(jì)指導(dǎo)》.北京航空航天大學(xué)出版社,2007.7.
[2]李學(xué)海.《標(biāo)準(zhǔn)89C51單片機(jī)基礎(chǔ)教程:原理篇》.北京出版社,2007.6.