邵陽學(xué)院信息工程系 林 歡 許建明 陳炯明
?
基于單片機(jī)的電子密碼鎖設(shè)計(jì)
邵陽學(xué)院信息工程系 林 歡 許建明 陳炯明
【摘要】本文采用PIC16F877A單片機(jī)作為控制核心,實(shí)現(xiàn)了智能的電子密碼鎖電路系統(tǒng)。對(duì)硬件工作原理進(jìn)行詳細(xì)的闡述,在軟件和硬件的結(jié)合下,經(jīng)過實(shí)驗(yàn)的測(cè)試和驗(yàn)證,本系統(tǒng)具有軟硬件系統(tǒng)設(shè)計(jì)簡(jiǎn)單、成本低、可靠性高、容易操作、開發(fā)簡(jiǎn)單等特點(diǎn)。在家庭、公司或重要場(chǎng)合的保險(xiǎn)箱或檔案箱等產(chǎn)品進(jìn)行研制具有廣泛的應(yīng)用價(jià)值,因此電子密碼鎖具有重要的研究意義。
【關(guān)鍵詞】密碼鎖;單片機(jī);LCD顯示
本電子密碼鎖用4×4鍵盤作為輸入設(shè)備, 微控制器PIC16F877A作為主控制芯片,利用單片機(jī)程序來實(shí)現(xiàn)輸入密碼的正確與否進(jìn)行判斷是否需要開鎖。采用ML016L型液晶顯示器來顯示系統(tǒng)的狀態(tài)。為了操作方面采用蜂鳴器發(fā)聲提示作為鍵盤按鍵是否按下提醒,達(dá)到人性化的設(shè)計(jì)效果。密碼設(shè)置后保存在存儲(chǔ)器中,當(dāng)輸入密碼正確開鎖電路自動(dòng)進(jìn)行鎖具開啟,如果輸入密碼不正確會(huì)提示報(bào)警音;當(dāng)三次輸入都不正確,鍵盤就會(huì)被鎖死,不能再輸入密碼,這樣就能夠起到安全保護(hù)財(cái)產(chǎn)的措施。
圖1 系統(tǒng)方框圖
2.1 主控單片機(jī)
本設(shè)計(jì)采用PIC16F877A單片機(jī)為主控芯片,它是一種集性能優(yōu)良、功耗較低等諸多優(yōu)點(diǎn)的8位CMOS工藝微控制器,內(nèi)部具有可在系統(tǒng)編程的Flash。由于內(nèi)部具有CPU 和Flash部件,使得PIC16F877A微控制器能夠在各種智能控制系統(tǒng)或電路中得到廣泛的應(yīng)用。
2.2鍵盤電路
在生活中,有很多具有密碼鎖的產(chǎn)品,一般設(shè)置密碼的按鍵比較少,所以安全性和保密性不是很高。而本設(shè)計(jì)的電子密碼鎖,為了提高密碼的復(fù)雜度及設(shè)置密碼的方便,采用了行列式鍵盤。單片機(jī)系統(tǒng)中的鍵盤經(jīng)常要考慮鍵盤抖動(dòng)問題,通常采用延時(shí)的方法實(shí)現(xiàn)軟件去抖,經(jīng)兩次判斷鍵盤確實(shí)有按鍵按下才確定有按鍵按下。按鍵一旦被確認(rèn)按下的話,下一步的任務(wù)就是要通過程序判斷確定是哪一個(gè)鍵被按下,判定按鍵按下常用的方法主要是:逐行掃描法、速度較快的線反轉(zhuǎn)法。本設(shè)計(jì)采用逐行掃描法,判定鍵盤中有沒有按鍵被按下,先是向鍵盤的行線輸出信號(hào)為全高電平,列線全部給低電平,無鍵按下時(shí)行線應(yīng)該全為高電平。假設(shè)某一個(gè)鍵被按下,就會(huì)相應(yīng)的一根行線被拉成低電位,這樣行線上就不是輸出全1。下一步就是判別鍵盤中哪個(gè)按鍵被按下,采用的方法是:按秩序一位一位給列信號(hào)送低電平,如果這列線對(duì)應(yīng)的行線全部都為高電平,說明被按下的鍵不在這列中;如果不是全部高電平,說明這一列有一個(gè)鍵是被按下了,相應(yīng)哪一行有低電平就是對(duì)應(yīng)相交叉的那個(gè)按鍵按下,再通過程序計(jì)算鍵值就可以進(jìn)行下一步工作。
2.3 開鎖電路
在實(shí)驗(yàn)中采用LED發(fā)光二極管來表示電磁鎖。LED發(fā)光二極管點(diǎn)亮表示電磁鎖處于開鎖狀態(tài)。開鎖裝置用繼電器模擬,繼電器的驅(qū)動(dòng)受到微控制器的控制,當(dāng)鍵盤輸入密碼正確時(shí)繼電器動(dòng)作,LED發(fā)光二極管點(diǎn)亮表示處于開鎖狀態(tài),否則LED不發(fā)光,繼電器也不動(dòng)作,表示密碼不正確,鎖沒有被打開。具體電路如圖2所示。
圖2 開鎖電路
本系統(tǒng)包含主程序和子程序模塊兩部分。主程序模塊進(jìn)行一些初始化,子程序主要完成顯示、鍵盤掃描、鍵值計(jì)算、開鎖、顯示等功能。電子密碼鎖實(shí)現(xiàn)的步驟是從LCD顯示器的提示“開始輸入密碼”開始,通過行列式鍵盤輸入密碼,按下密碼確認(rèn)鍵,系統(tǒng)進(jìn)行處理判斷密碼是否正確,并分析與作出是否開鎖的處理。
本設(shè)計(jì)是采用單片機(jī)控制器實(shí)現(xiàn)了電子密碼鎖的功能,可以完成密碼的設(shè)置、開鎖、狀態(tài)顯示、報(bào)警等功能,具有智能化控制,操作方便,成本低廉,具有較好的應(yīng)用價(jià)值。
參考文獻(xiàn)
[1]江世明,許建明,朱群峰,申壽云.單片機(jī)原理及應(yīng)用[M].上海:上海交通大學(xué)出版社,2013.
[2]郁有文,常健等.傳感器原理及工程應(yīng)用(第三版)[M].西安:西安電子科技大學(xué)出版社,2009.
[3]沙占友,王彥朋,孟志永.單片機(jī)外圍電路設(shè)計(jì)[M].電子工業(yè)出版社,2003.
作者簡(jiǎn)介:
林歡(1994—),男,四川三臺(tái)人,大學(xué)本科,現(xiàn)就讀于邵陽學(xué)院信息工程系電子科學(xué)與技術(shù)專業(yè)。
通信作者:
許建明(1977—),男,湖南武岡人,碩士,副教授,主要從事電子技術(shù)研究。