




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、目 錄目 錄I基于單片機密碼鎖的設(shè)計II摘 要IIAbstractII前 言I第1章 緒 論11.1 課題背景11.2 課題設(shè)計目標(biāo)1第2章 系統(tǒng)方案論證22.1 主控部分的選擇22.2 密碼輸入方式的選擇2第3章 系統(tǒng)總體設(shè)計和主要芯片介紹33.1 系統(tǒng)總體設(shè)計33.2 主要芯片介紹43.2.1 AT89S5243.2.2 存儲芯片AT24C0253.2.3 LCD1602顯示器6第4章 硬件設(shè)計84.1 鍵盤輸入模塊84.2 密碼存儲模塊94.3 復(fù)位部分104.4 晶振部分114.5 顯示模塊124.6 報警部分124.7 開鎖部分13第5章 系統(tǒng)軟件設(shè)計145.1 系統(tǒng)程序流程圖145
2、.1.1 主程序流程圖145.1.2 鍵功能程序流程圖155.1.3 開鎖程序流程圖165.2 子程序舉例175.2.1 開鎖子程序175.2.2 按鍵掃描子程序195.2.3 密修改碼子程序21結(jié) 論24致 謝25參考文獻26附錄A27TEST SOFTWARE27附錄B29附錄C30附錄D31I基于單片機密碼鎖的設(shè)計摘 要隨著人們生活水平的提高,如何實現(xiàn)家庭防盜這一問題也變得尤為突出,傳統(tǒng)的機械鎖,由于其構(gòu)造的簡單,安全性能低,無法滿足人們的需要。在科學(xué)技術(shù)不斷發(fā)展的今天,電子密碼防盜鎖作為防盜衛(wèi)士的作用顯得日趨重要1。本次設(shè)計的題目是基于單片機的電子密碼鎖的設(shè)計,系統(tǒng)由AT89S52與低
3、功耗CMOS型E²PROM AT24C02作為主控芯片與數(shù)據(jù)存儲器單元,結(jié)合外圍的鍵盤輸入、LCD顯示、報警、開鎖等電路模塊。它能完成以下功能:正確輸入密碼前提下,開鎖;錯誤輸入密碼情況下,報警;密碼可以根據(jù)用戶需要更改。本密碼鎖具有設(shè)計方法合理,簡單易行,成本低,安全實用等特點,具有一定的推廣價值。關(guān)鍵詞 電子密碼鎖 報警 液晶顯示AT89S52THE DESIGN ELECTRONIC CODE LOCK BASED ON THE MCUAbstractWith the development of the people's living standard, how to
4、 achieve the family security is becoming important in particular. The traditional mechanical lock is unable to meet the people's needs because of its simple structure, low security. Nowadays, with the continuous development of the science and technology,Electronic password anti-theft lock plays
5、a more important role as the security guards.The main paper is about the design electronic code lock based on the MCU. The system is composed with AT89S52, E²PROM AT24C02, data memory element and the peripheral circuits such as LCD display, alarming circuit. It can accomplish the following func
6、tion: open the lock with a correctly password, give an alarm with the mistake password, change the password if the host want.The lock has some features like a reasonable design methods, simple to work, low cost and security. It also has some promotion value.Keywords Electronic code lock Alarm LCD di
7、splay AT89S52前 言隨著科學(xué)技術(shù)的不斷發(fā)展,人們對日常生活的安全保險器件的要就越來越高,電子安全密碼鎖是基于這一要求的保險器件,其設(shè)計概念及應(yīng)用與常見的保安密碼鎖有所不同。從系統(tǒng)設(shè)計觀點看,電子安全密碼鎖是一個實體域定義的概念,比較機械安全密碼鎖,具有設(shè)計/實現(xiàn)簡便,密碼裝定靈活制造成本低廉等優(yōu)點,每一位解鎖意圖碼在安全密碼鎖內(nèi)部引發(fā)的試圖解鎖動作,可稱為安全密碼的“解鎖事件”一個解鎖事件序列包含一系列有序的解鎖事件。電子安全密碼鎖完全匹配時方可逐步開啟密碼鎖。當(dāng)今智能電子密碼鎖發(fā)展已經(jīng)到了非常高的境界,由于電子元件特別是單片機應(yīng)用在這幾年得到空前發(fā)展,無論功能性,穩(wěn)定性都比較全面
8、,在保密方面已做到人眼識別,指紋識別,人聲識別基本上電影上有的現(xiàn)實也有。在國外發(fā)展比較早,所以應(yīng)用也比較廣泛,主要在家庭裝較貴重地方,銀行,保險柜等應(yīng)用較多,在國內(nèi)這方面發(fā)展也較快,不管自己開發(fā)或是引進都有,在重要地方應(yīng)用也較多,由于價錢比普通彈子鎖較貴,早幾年應(yīng)用較少,現(xiàn)在越來越普及到平?;?,未來的發(fā)展也會越來越被大眾采用,由于它的功能、安全是彈子鎖無法相比的。發(fā)展前境是非常大的。第1章 緒 論1.1 課題背景隨著人們生活水平的提高和安全意識的加強,對安全的要求也就越來越高。鎖自古以來就是把守護門的鐵將軍,人們對它要求甚高,既要安全可靠的防盜,又要使用方便,這也是制鎖者長期以來研制的主題2。
9、隨著電子技術(shù)的發(fā)展,各類電子產(chǎn)品應(yīng)運而生,電子密碼鎖就是其中之一。據(jù)有關(guān)資料介紹,電子密碼鎖的研究從20世紀30年代就開始了,在一些特殊場所早就有所應(yīng)用。這種鎖是通過鍵盤輸入一組密碼完成開鎖過程。研究這種鎖的初衷,就是為提高鎖的安全性。由于電子鎖的密鑰量(密碼量)極大,可以與機械鎖配合使用,并且可以避免因鑰匙被仿制而留下安全隱患。電子鎖只需記住一組密碼,無需攜帶金屬鑰匙,免除了人們攜帶金屬鑰匙的煩惱,而被越來越多的人所欣賞。電子鎖的種類繁多,例如數(shù)碼鎖,指紋鎖,磁卡鎖,IC卡鎖,生物鎖等。但較實用的還是按鍵式電子密碼鎖3。 20世紀80年代后,隨著電子鎖專用集成電路的出現(xiàn),電子鎖的體積縮小,可
10、靠性提高,成本較高,是適合使用在安全性要求較高的場合,且需要有電源提供能量,使用還局限在一定范圍,難以普及,所以對它的研究一直沒有明顯進展。 目前,在西方發(fā)達國家,密碼鎖技術(shù)相對先進,種類齊全,電子密碼鎖已被廣泛應(yīng)用于智能門禁系統(tǒng)中,通過多種更加安全,更加可靠的技術(shù)實現(xiàn)大門的管理。在我國密碼鎖整體水平尚處于國際上70年代左右,電子密碼鎖的成本還很高,市場上仍以按鍵電子鎖為主,按鍵式和卡片鑰匙式電子鎖已引進國際先進水平,現(xiàn)國內(nèi)有幾個廠生產(chǎn)供應(yīng)市場。但國內(nèi)自行研制開發(fā)的電子鎖,其市場結(jié)構(gòu)尚未形成,應(yīng)用還不廣泛。國內(nèi)的不少企業(yè)也引進了世界上先進的技術(shù),發(fā)展前景非??捎^。希望通過不斷的努力,使電子密碼
11、鎖在我國也能得到廣泛應(yīng)用。1.2 課題設(shè)計目標(biāo)本設(shè)計采用AT89C51單片機為主控芯片,結(jié)合外圍電路,通過軟件程序組成電子密碼鎖系統(tǒng),能夠?qū)崿F(xiàn):1 正確輸入密碼前提下,開鎖并有正確提示;2 錯誤輸入密碼情況下,蜂鳴器報警并短暫鎖定鍵盤;3 密碼可以根據(jù)用戶需要更改。4 為防止誤操作,更改密碼需有兩次確認。5 輸出密碼錯誤三次鎖死鍵盤。6 密碼掉電保存功能。第2章 系統(tǒng)方案論證2.1 主控部分的選擇方案一:采用數(shù)字電路控制用以74LS112雙JK觸發(fā)器構(gòu)成的數(shù)字邏輯電路作為密碼鎖的核心控制,將密碼保存在JK觸發(fā)器中,與輸入密碼通過比較器比較,判斷結(jié)果是否相符合4。采用數(shù)字電路設(shè)計的方案好處就是設(shè)
12、計簡單,但控制的準(zhǔn)確性和靈活性差,故不采用。 方案二:采用以單片機為核心的控制方案選用單片機作為系統(tǒng)的核心部件,實現(xiàn)控制與處理的功能。單片機具有資源豐富、速度快、編程容易等優(yōu)點。利用單片機內(nèi)部的隨機存儲器(RAM)和只讀存儲器(ROM)及其引腳資源,外接液晶顯示(LCD),鍵盤輸入等實現(xiàn)數(shù)據(jù)的處理傳輸和顯示功能,基本上能實現(xiàn)設(shè)計指標(biāo),因此綜合考慮,本系統(tǒng)采用方案二。2.2 密碼輸入方式的選擇方案一:指紋輸入識別 指紋識別技術(shù)主要涉及四個功能:讀取指紋圖像、提取特征、保存數(shù)據(jù)和比對。通過指紋讀取設(shè)備讀取到人體指紋的圖像,然后要對原始圖像進行初步的處理,使之更清晰,再通過指紋辨識軟件建立指紋的特征
13、數(shù)據(jù)。軟件從指紋上找到被稱為“節(jié)點”(minutiae)的數(shù)據(jù)點,即指紋紋路的分叉、終止或打圈處的坐標(biāo)位置,這些點同時具有七種以上的唯一性特征。通常手指上平均具有70個節(jié)點,所以這種方法會產(chǎn)生大約490個數(shù)據(jù)。這些數(shù)據(jù),通常稱為模板。通過計算機模糊比較的方法,把兩個指紋的模板進行比較,計算出它們的相似程度,最終得到兩個指紋的匹配結(jié)果,從而判斷輸入結(jié)果的正確與否5??紤]到本方案軟硬件太過復(fù)雜,而且成本也高,故不采用。方案二:矩陣鍵盤輸入識別 由各按鍵組成的矩陣鍵盤每條行線和列線都對應(yīng)一條I/O口線,鍵位設(shè)在行線和列線的交叉點,當(dāng)一個鍵按下就會有某一條行線與某一條列線接觸,只要確定接觸的是哪兩條線
14、,即哪兩個I/O口線,就可以確定哪一個鍵被觸動。 行線設(shè)計成上拉口線,初始時被置高電位,列線懸空,初始置低。通過不斷讀行線口線,或者中斷方式觸發(fā)鍵位掃描。當(dāng)發(fā)現(xiàn)有鍵按下,將列線逐一置低,其他列線置高,讀行線口線。當(dāng)某條列線置低時,某條行線也被拉低,則確定這兩條線的交點處的按鈕被按下。每個按鍵都可通過程序賦予功能,從而完成密碼識別6。本方案簡單易行,故采用。第3章 系統(tǒng)總體設(shè)計和主要芯片介紹3.1 系統(tǒng)總體設(shè)計本設(shè)計主要由單片機、矩陣鍵盤、液晶顯示器和密碼存儲等部分組成。其中矩陣鍵盤用于輸入數(shù)字密碼和進行各種功能的實現(xiàn)。由用戶通過連接單片機的矩陣鍵盤輸入密碼,后經(jīng)過單片機對用戶輸入的密碼與自己保
15、存的密碼進行對比,從而判斷密碼是否正確,然后控制引腳的高低電平傳到開鎖電路或者報警電路控制開鎖還是報警,實際使用時只要將單片機的負載由繼電器換成電子密碼鎖的電磁鐵吸合線圈即可。系統(tǒng)整體框圖如圖3-1所示。顯示模塊鍵盤輸入模塊 AT89S52報警電路復(fù)位電路開鎖電路密碼存儲模塊 圖3-1 系統(tǒng)結(jié)構(gòu)框圖各模塊功能如下:1鍵盤輸入模塊:分為密碼輸入按鍵與幾個功能按鍵,用于完成密碼鎖輸入功能。2顯示模塊:用于完成對系統(tǒng)狀態(tài)顯示及操作提示功能。3復(fù)位電路:完成系統(tǒng)的復(fù)位。4報警電路:用于完成輸錯密碼時候的警報功能。5密碼存儲模塊:用于完成掉電存儲功能,使修改的密碼斷電后仍能保存。6開鎖電路:應(yīng)用繼電器及
16、發(fā)光二極管模擬開鎖,完成開鎖及開鎖提示。3.2 主要芯片介紹3.2.1 AT89S52AT89S52單片機是一個低功耗,高性能CMOS 8位單片機,片內(nèi)含8K Bytes ISP(In-system programmable)的可反復(fù)擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)制造,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲單元,功能強大的微型計算機的AT89C51可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價比的解決方案7。AT89C51具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)Flash,256字節(jié)RAM,
17、32 位I/O 口線,看門狗定時器,2個數(shù)據(jù)指針,三個16位定時器/計數(shù)器,一個6向量2級中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時鐘電路。另外,AT89C51可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機一切工作停止,直到下一個中斷或硬件復(fù)位為止。AT89S52的管腳分布如圖3-2所示。圖3-2 AT89S52芯片管腳P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可
18、以被定義為數(shù)據(jù)/地址的第八位。P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當(dāng)P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)
19、存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P3口作為AT89S52的一些特殊功能管腳備選功能,P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 /INT0(外部中斷0)P3.3 /INT1(外部中斷1)P3.4 T0(記時器0外部輸入)P3.5 T1(記時器1外部輸入)P3.6 /WR(外部數(shù)據(jù)存儲器寫選通)P3.7 /RD(外部數(shù)據(jù)存儲器讀選通)AT89S52主要特性如表3-1所示。表3-1 AT89S52主要特性兼容MCS-51指令系統(tǒng)8k可反復(fù)擦寫(>1000次)ISP Flash ROM32個雙向I/O口4.5-5.5V工作電壓3個16位可編程定時/
20、計數(shù)器時鐘頻率0-33MHz全雙工UART串行中斷口線256x8bit內(nèi)部RAM2個外部中斷源低功耗空閑和省電模式中斷喚醒省電模式3級加密位看門狗(WDT)電路軟件設(shè)置空閑和省電功能靈活的ISP字節(jié)和分頁編程雙數(shù)據(jù)寄存器指針3.2.2 存儲芯片AT24C02 AT24C02是美國Atmel公司的低功耗CMOS型E²PROM,內(nèi)含256×8位存儲空間,具有工作電壓寬(2.55.5 V)、擦寫次數(shù)多(大于10000次)、寫入速度快(小于10 ms)、抗干擾能力強、數(shù)據(jù)不易丟失、體積小等特點。而且他是采用了I²C總線式進行數(shù)據(jù)讀寫的串行器件,占用很少的資源和I/O線,并
21、且支持在線編程,進行數(shù)據(jù)實時的存取十分方便。AT24C02中帶有的片內(nèi)地址寄存器。每寫入或讀出一個數(shù)據(jù)字節(jié)后,該地址寄存器自動加1,以實現(xiàn)對下一個存儲單元的讀寫。所有字節(jié)均以單一操作方式讀取。為降低總的寫入時間,一次操作可寫入多達8個字節(jié)的數(shù)據(jù)。I2C總線是一種用于IC器件之間連接的二線制總線。他通過SDA(串行數(shù)據(jù)線)及SCL(串行時鐘線)兩根線在連到總線上的器件之間傳送信息,并根據(jù)地址識別每個器件。 AT24C02正是運用了I²C規(guī)程,使用主/從機雙向通信,主機(通常為單片機)和從機(AT24C02)均可工作于接收器和發(fā)送器狀態(tài)。主機產(chǎn)生串行時鐘信號(通過SCL引腳)并發(fā)出控制字
22、,控制總線的傳送方向,并產(chǎn)生開始和停止的條件。無論是主機還是從機,接收到一個字節(jié)后必須發(fā)出一個確認信號ACK。AT24C02的控制字由8位二進制數(shù)構(gòu)成,在開始信號發(fā)出以后,主機便會發(fā)出控制字,以選擇從機并控制總線傳送的方向。管腳描述:SCL 為串行時鐘:串行時鐘輸入管腳用于產(chǎn)生器件所有數(shù)據(jù)發(fā)送或接收的時鐘這是一個輸入管腳。SDL 為串行數(shù)據(jù)/地址:雙向串行數(shù)據(jù)/地址管腳用于器件所有數(shù)據(jù)的發(fā)送或接收SDL,是一個開漏輸出管腳可與其它開漏輸出或集電極開路輸出進行線或。A0、A1、A2 為器件地址輸入端:當(dāng)使用24C02 時最大可級聯(lián)8個器件,如果只有一個24C02被總線尋址,這三個地址輸入腳A0、
23、A1、A2可懸空或連接到Vss。WP為寫保護:如果WP 管腳連接到Vcc 所有的內(nèi)容都被寫保護只能讀當(dāng)WP,管腳連接到Vss 或懸空,允許器件進行正常的讀/寫操作8。管腳圖如圖3-3所示。圖3-3 AT24C02引腳圖3.2.3 LCD1602顯示器 現(xiàn)在的字符型液晶模塊已經(jīng)是單片機應(yīng)用設(shè)計中最常用的信息顯示器件了。1602型LCD顯示模塊具有體積小,功耗低,顯示內(nèi)容豐富等特點。1602型LCD可以顯示2行16個字符,有8位數(shù)據(jù)總線D0D7和RS,R/W,EN三個控制端口,工作電壓為5V,并且具有字符對比度調(diào)節(jié)和背光功能。接口信號說明:1602型LCD的接口信號說明如表3-2所示。表3-2 1
24、602型LCD的接口信號說明第1腳VSS 電源地第9腳D2雙向數(shù)據(jù)線第2腳VDD +5V電源第10腳D3雙向數(shù)據(jù)線第3腳VEE 液晶顯示偏壓信號第11腳D4雙向數(shù)據(jù)線第4腳RS 數(shù)據(jù)/命令選擇端第12腳D5雙向數(shù)據(jù)線第5腳R/ W 讀/寫 選擇端第13腳D6雙向數(shù)據(jù)線第6腳E 使能端第14腳D7雙向數(shù)據(jù)線第7腳D0雙向數(shù)據(jù)線第15腳BLA 背光源正極第8腳D1 雙向數(shù)據(jù)線第16腳BLK 背光源負極主要技術(shù)參數(shù):1602型LCD的主要技術(shù)參數(shù)如表3-3所示。表3-3 1602型LCD的主要技術(shù)參數(shù)顯示容量16×2個字符芯片工作電壓4.55.5V工作電流2.0mA(5.0V)模塊最佳工作
25、電壓5.0V字符尺寸2.95×4.35(WXH)mm基本操作程序:讀狀態(tài):令RS=L,RW=L, E=H 輸出:D0D7=狀態(tài)字讀數(shù)據(jù):令RS=H,RW=H, E=H 輸出:無寫指令:令RS=L,RW=L,D0D7=指令碼,E=高脈沖 輸出:D0D7=數(shù)據(jù)寫數(shù)據(jù):令RS=H,RW=L, D0D7=數(shù)據(jù), E=高脈沖 輸出:無 第4章 硬件設(shè)計本系統(tǒng)外圍電路包括鍵盤輸入部分、密碼存儲部分、復(fù)位部分、顯示部分、報警部分、開鎖部分組成,根據(jù)實際情況鍵盤輸入部分選擇4×4矩陣鍵盤,顯示部分選擇字符型液晶顯示LCD1602,密碼存儲部分選用AT24C02芯片來完成。其原理圖如圖4-1
26、所示。圖4-1 電路原理圖4.1 鍵盤輸入模塊由于本設(shè)計所用到的按鍵數(shù)量較多而不適合用獨立按鍵式鍵盤。采用的是矩陣式按鍵鍵盤,它由行和列組成,也稱行列式鍵盤,按鍵位于行列的交叉點上,密碼鎖的密碼由鍵盤輸入完成,與獨立式按鍵鍵盤相比,要節(jié)省很多I/O口。本設(shè)計中使用的這個4×4鍵盤不但能完成密碼的輸入還能作特別功能鍵使用。鍵盤的每個按鍵功能在程序設(shè)計中設(shè)置。它與單片機的連接如圖4-2所示。圖4-2 鍵盤輸入模塊4.2 密碼存儲模塊圖4-3所示AT24C02的1、2、3腳是三條地址線,用于確定芯片的硬件地址。在AT89S52試驗開發(fā)板上它們都接地,第5腳和第8腳分別為正、負電源。第8腳S
27、DL為串行數(shù)據(jù)輸入/輸出,數(shù)據(jù)通過這條雙向I²C總線串行傳送,在AT89S52試驗開發(fā)板上和單片機的P3.6連接。第6腳SCL為串行時鐘輸入線,在AT89S52試驗開發(fā)板上和單片機的P3.7連接。SDL和SCL都需要和正電源間各接一個5.1K的電阻上拉。第6腳接P3.5。AT24C02中帶有片內(nèi)地址寄存器。每寫入或讀出一個數(shù)據(jù)字節(jié)后,該地址寄存器自動加1,以實現(xiàn)對下一個存儲單元的讀寫。所有字節(jié)均以單一操作方式讀取。為降低總的寫入時間,一次操作可寫入多達8個字節(jié)的數(shù)據(jù)。圖4-3 密碼存儲電路4.3 復(fù)位部分單片機復(fù)位是使CPU和系統(tǒng)中的其他功能部件都處在一個確定的初始狀態(tài),并從這個狀態(tài)
28、開始工作。在接通電源瞬間,電容C2上的電壓很小,復(fù)位下拉電阻上的電壓接近電源電壓,即RST為高電平,在電容充電的過程中RST端電壓逐漸下降,當(dāng)RST端的電壓小于某一數(shù)值后,CPU脫離復(fù)位狀態(tài),由于電容C2足夠大,可以保證RST高電平有效時間大于24個振蕩周期,CPU能夠可靠復(fù)位。其電路如圖4-4所示。圖4-4 復(fù)位電路4.4 晶振部分AT89S52引腳XTAL1和XTAL2與晶體振蕩器及電容C2、C3按圖4-5所示方式連接。晶振、電容C2C3及片內(nèi)與非門(作為反饋、放大元件)構(gòu)成了電容三點式振蕩器,振蕩信號頻率與晶振頻率及電容C2、C3的容量有關(guān),但主要由晶振頻率決定,范圍在033MHz之間,
29、電容C2、C3取值范圍在530pF之間。根據(jù)實際情況,本設(shè)計中采用12MHZ作為系統(tǒng)的外部晶振。電容取值為30pF。其電路圖如圖4-5所示。 圖4-5 晶振電路4.5 顯示模塊顯示部分由液晶顯示器LCD1602取代普通的數(shù)碼管完成。開鎖時,按下鍵盤上的開鎖按鍵后,利用鍵盤上的數(shù)字鍵09輸入密碼,每按下一個數(shù)字鍵后在顯示器上顯示一個*,輸入多少位就顯示多少個*。當(dāng)密碼輸入完成時,按下確認鍵,如果輸入的密碼正確的話, LCD顯示“DOOR OPEN”,單片機其中P2.0引腳會輸出低電平,使三極管T2導(dǎo)通,電磁鐵吸合,繼電器開關(guān)跳轉(zhuǎn),電子密碼鎖被打開,如果密碼不正確,LCD顯示屏?xí)@示“CODE W
30、RONG”,P2.0輸出的是高電平,電子密碼鎖不能打開。通過LCD顯示屏,可以清楚地判斷出密碼鎖所處的狀態(tài)。電路圖如圖4-6所示。圖4-6 顯示電路4.6 報警部分 報警部分由陶瓷壓電發(fā)聲裝置及外圍電路組成,加電后不發(fā)聲,當(dāng)有鍵按下時,“?!甭?,每按一下,發(fā)聲一次,密碼正確時,響兩聲并開鎖,當(dāng)密碼輸入錯誤時,單片機的P2.1引腳為低電平,三極管T3導(dǎo)通蜂鳴器發(fā)出噪聲報警。如圖4-7所示。圖4-7 報警電路4.7 開鎖部分開鎖控制電路的功能是當(dāng)輸入正確的密碼后將鎖打開。系統(tǒng)使用單片機其中一引腳線發(fā)出信號,經(jīng)三極管放大后,由繼電器驅(qū)動電磁閥動作將鎖打開。用戶通過鍵盤任意設(shè)置密碼,并儲存在E2PRO
31、M中作為鎖碼指令。只有用戶操作鍵盤時,單片機的電源端才能得到3V電源,否則,單片機處于節(jié)電工作方式。開鎖步驟如下:首先按下鍵盤上的開鎖按鍵,然后利用鍵盤上的數(shù)字鍵09輸入密碼,最后按下確認鍵。當(dāng)用戶輸入密碼后,單片機自動識別密碼,如果密碼不符,則報警。只有當(dāng)密碼正確,單片機才能使繼電器處于開鎖狀態(tài)。具體電路如圖4-8所示。圖4-8 開鎖電路第5章 系統(tǒng)軟件設(shè)計5.1 系統(tǒng)程序流程圖5.1.1 主程序流程圖主程序設(shè)計流程圖如圖5-1所示。 開始 初始化 修改開鎖密碼正確 輸入舊密碼N原密碼相同 Y開鎖出錯報警 N N Y設(shè)新密碼 返回 圖5-1主程序流程圖5.1.2 鍵功能程序流程圖鍵功能程序流
32、程圖如圖5-2所示。 鍵功能程序鍵值=09?鍵值=開鎖?鍵值=確認?鍵值=設(shè)置? 返回密碼輸入程序確認程序設(shè)置程序開鎖程序YNYNYN YN 圖5-2 鍵功能流程圖5.1.3 開鎖程序流程圖開鎖程序流程圖如圖5-3所示。LCD初始化按開鎖鍵輸入密碼確認程序開鎖N輸入密碼正確?報警程序開鎖成功返回Y 圖5-3 開鎖流程圖5.2 子程序舉例5.2.1 開鎖子程序 if(N=6) if(ReInputEn=0)/重置密碼功能未開啟for(i=0;i<6;) if(CurrentPasswordi=InputDatai)i+;else ErrorCont+;if(ErrorCont=3)/錯誤輸
33、入計數(shù)達三次時,報警并鎖定鍵盤write_1602com(er);for(i=0;i<16;i+)write_1602dat(Errori);doAlam_KeyUnable();while(1);elseTR0=1;/開啟定時key_disable=1;/鎖定鍵盤pass=0;break;if(i=6)CorrectCont+;if(CorrectCont=1)/正確輸入計數(shù),當(dāng)只有一次正確輸入時,開鎖,/DisplayListChar(0,1,LockOpen);write_1602com(er);for(j=0;j<16;j+)write_1602dat(LockOpenj)
34、;TwoAlam();/操作成功提示音KEY=0;/開鎖pass=1;/置正確標(biāo)志位TR0=1;/開啟定時open_led=0;/開鎖指示燈亮for(j=0;j<6;j+)/將輸入清除InputDatai=0;else/當(dāng)兩次正確輸入時,開啟重置密碼功能/DisplayListChar(0,1,SetNew);write_1602com(er);for(j=0;j<16;j+)write_1602dat(SetNewj);TwoAlam(); /操作成功提示ReInputEn=1; /允許重置密碼輸入CorrectCont=0;/正確計數(shù)器清零 5.2.2 按鍵掃描子程序 /=將按
35、鍵值編碼為數(shù)值=unsigned char coding(unsigned char m) unsigned char k;switch(m)case (0x18): k=1;break;case (0x28): k=2;break;case (0x48): k=3;break;case (0x88): k='A'break;case (0x14): k=4;break;case (0x24): k=5;break;case (0x44): k=6;break;case (0x84): k='B'break;case (0x12): k=7;break;case
36、 (0x22): k=8;break;case (0x42): k=9;break;case (0x82): k='C'break;case (0x11): k='*'break;case (0x21): k=0;break;case (0x41): k='#'break;case (0x81): k='D'break;return(k);/=按鍵檢測并返回按鍵值=unsigned char keynum(void) unsigned char row,col,i; P1=0xf0; if(P1&0xf0)!=0xf0)
37、Delay5Ms(); Delay5Ms(); if(P1&0xf0)!=0xf0) row=P10xf0; /確定行線i=0;P1=ai; /精確定位while(i<4) if(P1&0xf0)!=0xf0) col=(P1&0xff); /確定列線 break; /已定位后提前退出 else i+; P1=ai; else return 0;while(P1&0xf0)!=0xf0);return (row|col); /行線與列線組合后返回 else return 0; /無鍵按下時返回05.2.3 密修改碼子程序/=重置密碼=void ResetP
38、assword(void)unsigned char i;unsigned char j;if(pass=0)pass=0;DisplayChar();ThreeAlam();else if(ReInputEn=1)if(N=6)ReInputCont+;if(ReInputCont=2)for(i=0;i<6;)if(TempPasswordi=InputDatai)/將兩次輸入的新密碼作對比i+;else/DisplayListChar(0,1,Error);write_1602com(er);for(j=0;j<16;j+)write_1602dat(Errorj);Thre
39、eAlam();/錯誤提示pass=0;ReInputEn=0;/關(guān)閉重置功能,ReInputCont=0;DisplayChar();break; if(i=6)/DisplayListChar(0,1,ResetOK);write_1602com(er);for(j=0;j<16;j+)write_1602dat(ResetOKj);TwoAlam();/操作成功提示 WrToROM(TempPassword,0,6);/將新密碼寫入24C02存儲ReInputEn=0;ReInputCont=0;CorrectCont=0;elseOneAlam();/DisplayListCha
40、r(0, 1, again); /顯示再次輸入一次write_1602com(er);for(j=0;j<16;j+)write_1602dat(againj);for(i=0;i<6;i+)TempPasswordi=InputDatai;/將第一次輸入的數(shù)據(jù)暫存起來N=0;/輸入數(shù)據(jù)位數(shù)計數(shù)器清零 結(jié) 論 在著手本次畢業(yè)設(shè)計時,通過查閱網(wǎng)絡(luò)與圖書館搜集到的資料,再加上指導(dǎo)老師指點,結(jié)合生活中對密碼鎖的功能特性要求,設(shè)計出了這一套電子密碼鎖系統(tǒng)的主要硬件結(jié)構(gòu)和軟件結(jié)構(gòu),基本完成了課題的要求。不過由于了解的專業(yè)知識尚淺,對課題的研究經(jīng)驗的不足,使得在技術(shù)的解決與運用上顯得粗糙了一些
41、,特別是功能按鍵的設(shè)定。所幸該系統(tǒng)能基本上完成一個電子密碼鎖應(yīng)有的功能特性:開鎖提示,輸錯報警,密碼修改,掉電存儲。本系統(tǒng)用的是6位密碼輸入,有106種密碼輸入方案,相較于機械鎖具,防盜能力已經(jīng)相當(dāng)不俗。這個系統(tǒng)軟硬件設(shè)計簡單,易于開發(fā),成本較低,安全可靠,操作方便。本次設(shè)計的電子密碼鎖是以手動鍵盤輸入密碼的,通過這幾個月對電子密碼鎖的研究學(xué)習(xí),發(fā)覺這種密碼輸入方式可以進行改革。在越來越高科技化的今天,遙控控制顯的愈發(fā)重要,今后的電子密碼鎖應(yīng)該具有以紅外技術(shù)或無線電技術(shù)為輔助的密碼按鍵輸入遠程交互技術(shù),這樣就能遠程輸入密碼完成操作。也可以放棄傳統(tǒng)的按鍵輸入密碼模式,借助傳感器技術(shù)運用聲控來實現(xiàn)
42、密碼輸入,又或者人臉識別技術(shù),還有一種就是用戶指紋輸入方式,這些都可以使開鎖的時間更短更方便。電子密碼鎖產(chǎn)業(yè)將向靜態(tài)功耗更低,外圍電路更簡化,可提供的功能或控制口更多,更人性化高科技化的方向發(fā)展。通過本次畢業(yè)設(shè)計的鍛煉,我學(xué)到了很多有關(guān)電子密碼鎖的設(shè)計方法與工作原理,鞏固了單片機知識。期間也碰到不少問題,比如如何去模擬實現(xiàn)開鎖這一功能,解決辦法是找了個微型電磁繼電器作為鎖具,其內(nèi)部電磁開關(guān)特性符合開鎖的現(xiàn)象。再到后來的焊接工作,由于粗心大意,焊接出錯的情況不在少數(shù),往往在調(diào)試的時候才得以發(fā)現(xiàn),特別是4×4矩陣鍵盤的焊接,改了不下10次。系統(tǒng)調(diào)試時碰到過按鍵不靈敏的問題。后來增加了鍵盤
43、列位置上的電阻,增加了電平,效果得到改善。慢工出細活,過程是很重要的,只有耐心細心努力地去把握過程,才能得到可喜的結(jié)果。致 謝 在這大學(xué)的最后一頁里,我要感謝的人很多,首先要感謝我的指導(dǎo)老師*老師,在整個畢業(yè)設(shè)計過程中,王老師多次詢問研究進程,并為我指點迷津,幫助我開拓研究思路,心點撥、熱忱鼓勵。王老師一絲不茍的作風(fēng),嚴謹求實的態(tài)度,踏踏實實的精神,深深地感動了我,當(dāng)我遇到難題無從下手時,王老師總能給予我中肯的意見,我從心底里感謝他。還要感謝的是我們各課任課老師,沒有你們的諄諄教誨,就沒有我們學(xué)有所長的今天。當(dāng)然,還要感謝寢室的兄弟們在我完成論文的過程中給予我的幫助和鼓勵,也是他們陪我度過這四
44、年的生活。最后要感謝的就是我的父母,謝謝你們對我的支持?,F(xiàn)在即將揮別我的學(xué)校、老師、同學(xué),還有我四年的大學(xué)生活,雖然依依不舍,但是對未來的路,我充滿了信心。最后,感謝在大學(xué)期間認識我和我認識的所有人,有你們伴隨,才有我大學(xué)生活的豐富多彩,絢麗多姿!參考文獻1 葉啟明.單片機制作的新第型安全密碼鎖J.家庭電子.2000,六期2 郭海英.基于單片機的電子安全密碼鎖的設(shè)計J.現(xiàn)代電子技術(shù).2005,第三期3 李明喜.新型電子密碼鎖的設(shè)計J.機電產(chǎn)品開發(fā)與創(chuàng)新.2004,第八期4 董繼成.一種新型安全的單片機密碼鎖J.電子技術(shù).2004,第三期5 祖龍起.劉仁杰.孫乃凌.一種新穎的電子密碼鎖J.電子世
45、界.2001,第六期6 李明喜.新型電子密碼鎖的設(shè)計J.機電產(chǎn)品開發(fā)與創(chuàng)新.2004,第五期7 瞿貴榮.實用電子密碼鎖J.家庭電子.2000,第三期8 楊茂濤.一種電子密碼鎖的實現(xiàn)J.福建電腦.2004,第九期9 張俊謨.單片機中級教程原理與應(yīng)用M.北京:北京航空航天大學(xué)出版社10 肖洪兵.跟我學(xué)用單片機M.北京:北京航空航天大學(xué)出版社11 Richard:“Park.Electronic Password-lock Design”DB/OL.P.June 2006附錄ATEST SOFTWAREThe 8051 test software concept is straightforward
46、. It was designed to be a modular series of small test programs each exercising a specific part of the DUT. Since each test was stand alone, they were loaded independently of each other for execution on the DUT. This ensured that only the desired portion of the 8051 DUT was exercised during the test
47、 and helped pinpoint location of errors that occur during testing. All test programs resided on the controller PC until loaded via the serial interface to the DUT computer. In this way, individual tests could have been modified at any time without the necessity of burning PROMs. Additional tests cou
48、ld have also been developed and added without impacting the overall test design. The only permanent code, which was resident on the DUT, was the boot code and serial code loader routines that established communications between the controller PC and the DUT.All test programs implemented: An external
49、Universal Asynchronous Receive and Transmit device (UART) for transmission of error information and communication to controller computer. An external real-time clock for data error tag. A watchdog routine designed to provide visual verification of 8051 health and restart test code if necessary. A &q
50、uot;foul-up" routine to reset program counter if it wanders out of code space. An external telemetry data storage memory to provide backup of data in the event of an interruption in data transmission.The brief description of each of the software tests used is given below. It should be noted that for each test, the returned telemetry (including time tag) was sent to both the test controller
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025屆上海市曹楊二中高三第二次調(diào)研統(tǒng)一測試歷史試題含解析
- 山西省大同市第三中學(xué)2024-2025學(xué)年高三七校聯(lián)合體考前沖刺交流考試數(shù)學(xué)試題含解析
- 江蘇省常州市新北區(qū)奔牛初級中學(xué)2025年初三十月月考化學(xué)試題試卷含解析
- 機械公司管理與問題
- 下腔靜脈濾器植入術(shù)后護理
- 先天斜頸手術(shù)的護理配合
- 子宮內(nèi)膜癌手術(shù)個案護理
- 慢性阻塞性肺疾病病人護理
- 妙幣生花班本課程
- 化工行業(yè)研究報告
- 物理-北京市朝陽區(qū)2025年高三年級第二學(xué)期質(zhì)量檢測一(朝陽一模)試題和答案
- 電力安全生產(chǎn)管理試題及答案
- 專題02 概括文章中心思想(講義)(原卷+答案解釋)2024-2025學(xué)年小升初語文講練測 統(tǒng)編版
- 【課件】高二下學(xué)期《清明祭英烈 共筑中華魂》主題班會課件
- 門診口腔科消防演習(xí)方案及劇本2024.3.20
- (二模)溫州市2025屆高三第二次適應(yīng)性考試政治試卷(含答案)
- 2024年中國冶金地質(zhì)總局總部招聘筆試真題
- 飛利浦超聲基礎(chǔ)培訓(xùn)
- 電梯安全管理人員測試習(xí)題和答案
- 2024年陜煤集團榆林化學(xué)有限責(zé)任公司招聘考試真題
- (高清版)DB11∕T780-2024大型群眾性活動安全檢查規(guī)范
評論
0/150
提交評論