黃田 楊婷婷 姜少維 李佳康 董莉霞
摘? 要: 傳統(tǒng)的機(jī)械式鎖具,在很大的程度上,已經(jīng)不能夠去滿足現(xiàn)人類對安全性能的要求,特別是在財(cái)產(chǎn)安全,住宅安全等方面。需要研究出讓人們覺得更加可靠、更加安全、方便快捷的鎖具。本文基于AT89C51單片機(jī),對電子密碼鎖進(jìn)行了總體設(shè)計(jì)和硬件電路的設(shè)計(jì)。該密碼鎖備以下基本特點(diǎn):體積小、低價(jià)格、低功耗、操作簡便等。
關(guān)鍵詞: AT89C51;密碼鎖;安全
中圖分類號: TP3? ? 文獻(xiàn)標(biāo)識碼: A? ? DOI:10.3969/j.issn.1003-6970.2020.10.025
本文著錄格式:黃田,楊婷婷,姜少維,等. 基于單片機(jī)的電子密碼鎖設(shè)計(jì)[J]. 軟件,2020,41(10):102104
【Abstract】: Traditional mechanical locks, to a large extent, have been unable to meet the requirements of human safety, especially in the property security, housing security and other aspects. There is a need for research into locks that people feel are more reliable, safe and convenient. In this paper, based on AT89C51 single chip microcomputer, the overall design of the electronic code lock and the design of the hardware circuit. The password lock has the following basic features: small size, low price, low power consumption, easy operation, etc.
【Key words】: AT89C51; Code lock; Security
0? 引言
傳統(tǒng)的機(jī)械鎖,當(dāng)人們插入鑰匙后或其他工具的時(shí)候,會將鎖芯內(nèi)的所有彈子,頂入到最上端去。當(dāng)轉(zhuǎn)動鑰匙的時(shí)候,外部的彈子會阻于鎖芯之外,從而成功啟動鎖。而該系統(tǒng),是根據(jù)通過4×4的鍵盤輸入的數(shù)字密碼,與已經(jīng)保存在系統(tǒng)中的密碼是否相匹配來開鎖的智能電子設(shè)備。它囊括了掉電存儲模塊和報(bào)警模塊,都有利的增強(qiáng)了密碼鎖的安全可靠性。相比于傳統(tǒng)的機(jī)械鎖,電子密碼鎖受到了那些在個(gè)人生活中財(cái)產(chǎn)和住宅安全以及公司安全注重的人們的青睞。
1? 以AT89C51為核心的電子密碼鎖總體設(shè)計(jì)
應(yīng)用系統(tǒng)的開發(fā)過程應(yīng)包括四部分工作內(nèi)容,即系統(tǒng)硬件設(shè)計(jì)、系統(tǒng)軟件系統(tǒng)、系統(tǒng)仿真調(diào)制及脫機(jī)運(yùn)行調(diào)試[1]。單片機(jī)AT89C51為主要系統(tǒng)控制單元,設(shè)計(jì)相應(yīng)的電子電路和軟件。其主要功能是通過矩陣鍵盤,輸入六位密碼然后按下確認(rèn)。密碼正確自動解鎖。輸入密碼的時(shí)候,上限為30秒。也就是說,當(dāng)輸入的密碼是537489時(shí),第二個(gè)數(shù)字“3”必須在第一個(gè)數(shù)字“5”之后的30秒內(nèi)輸入。六位密碼全部輸入后,若沒有按下確認(rèn)鍵,也被視作放棄開鎖。鍵入密碼后,顯示屏上顯示的是符號“*”,用以防止密碼外泄。其結(jié)構(gòu)圖如圖1。密碼修改時(shí),首先需要通過鍵盤輸入正確原密碼,按下相應(yīng)的密碼修改按鈕。然后重新從鍵盤輸入六位密碼,然后確認(rèn)保存即可。報(bào)警模塊,是當(dāng)輸入的密碼錯(cuò)誤時(shí),系統(tǒng)揚(yáng)聲器發(fā)出報(bào)警聲。當(dāng)密碼輸入錯(cuò)誤達(dá)到三次或三次以上系統(tǒng)則會長期報(bào)警不止,需要按下復(fù)位才可停止。
2? 以AT89C51為核心的電子密碼鎖硬件設(shè)計(jì)
單片機(jī)以其高可靠性、高性價(jià)比、低電壓、低功耗等一系列優(yōu)點(diǎn),得到了迅猛的發(fā)展和大范圍的應(yīng)用[2]。該系統(tǒng)選用了AT89C51芯片為最小系統(tǒng)模塊,以及矩陣鍵盤、報(bào)警機(jī)構(gòu)、開鎖機(jī)構(gòu)、掉電儲存和LCD顯示模塊等輔助硬件[3]構(gòu)成。系統(tǒng)模擬設(shè)計(jì)圖如圖2所示。
2.1? 單片機(jī)最小系統(tǒng)
AT89C51是日常使用率最高的51芯片,因?yàn)樗邆淇刹脸?、可編程、只讀存儲器的高性能,是可靠的低電壓單片機(jī)。以AT89C51單片機(jī)為主控系統(tǒng)[4],包含晶振、上電自動復(fù)位等基本工作電路[5]。晶振電路又稱時(shí)鐘電路。
2.2? ?LCD顯示電路
為了達(dá)到用戶友好界面目的[6],選用了LCD1602液晶顯示屏,又被叫做工業(yè)字符型液晶。它是標(biāo)準(zhǔn)的16腳接口。其特點(diǎn)是體積小,重量方面輕盈??赏瑫r(shí)顯示32個(gè)字符,既可以顯示符號也可顯示漢字。LCD1602與單片機(jī)的連接是簡單可靠的,同時(shí)操作方便。單片機(jī)AT89C51上的P0.0~P0.7(第1~8管腳)接顯示屏的D0~D7接口。P2.0接LCD1602的E接口。P2.1接LCD13602的RW接口。P2.2接的是LCD1602的RS接口。由于單片機(jī)AT89C51的P0口,它的驅(qū)動能力比較弱,所以需要另外上拉電阻來驅(qū)動管子。
2.3? 鍵盤輸入電路
鍵盤選用4×4行列式的矩陣鍵盤,每一條行列線都不相通,分別由不同的按鍵控制。其包括0~9十個(gè)數(shù)字鍵,以及確認(rèn)鍵,清除鍵和復(fù)位鍵等。將其與AT89C51單片機(jī)的PI接口相連接,掃描式的按鍵可降低對AT89C51的I/O端口的占用,有利于整塊電路板的美觀度。
2.4? 報(bào)警電路
蜂鳴器報(bào)警的電路,由PNP型三極管、蜂鳴器和電阻三個(gè)部分構(gòu)成。與芯片AT89C51的P3.7口相連,三極管的基極由I/O接口控制。P3.7低電平時(shí),PNP型三極管導(dǎo)通,蜂鳴器發(fā)出警報(bào)。