




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、天 津 大 學 網(wǎng) 絡 教 育 學 院??飘厴I(yè)論文題目:智能電子密碼鎖設計 完成期限:2016年1月8日 至 2016年4月20日學習中心:嘉興專業(yè)名稱:電氣自動化技術學生姓名:姚建林學生學號:指導教師:劉伯穎智能電子密碼鎖設計 1 引言隨著人們生活水平的提高和安全意識的加強,對安全的要求也就越來越高。鎖自古以來就是把守護門的鐵將軍,人們對它要求甚高,既要安全可靠的防盜,又使用方便,這也是制鎖者長期以來研制的主題。隨著電子技術的發(fā)展,各類電子產(chǎn)品應運而生,電子密碼鎖就是其中之一。據(jù)有關資料介紹,電子密碼鎖的研究從20世紀30年代就開始了,在一些特殊場所早就有所應用。這種鎖是通過鍵盤輸入一組密碼
2、完成開鎖過程。研究這種鎖的初衷,就是為提高鎖的安全性。電子鎖的密鑰量(密碼量)極大,可以與機械鎖配合使用,并且可以避免因鑰匙被仿制而留下安全隱患。電子鎖只需記住一組密碼,無需攜帶金屬鑰匙,免除了人們攜帶金屬鑰匙的煩惱,因而被越來越多的人所欣賞。電子鎖的種類繁多,例如數(shù)碼鎖,指紋鎖,磁卡鎖,IC卡鎖,生物鎖等,但較實用的還是按鍵式電子密碼鎖。20世紀80年代后,隨著電子鎖專用集成電路的出現(xiàn),電子鎖的體積縮小,可靠性提高,成本較高,是適合使用在安全性要求較高的場合,且需要有電源提供能量,使用還局限在一定范圍,難以普及,所以對它的研究一直沒有明顯進展。目前,在西方發(fā)達國家,密碼鎖技術相對先進,種類齊
3、全,電子密碼鎖已被廣泛應用于智能門禁系統(tǒng)中,通過多種更加安全、可靠的技術實現(xiàn)大門的管理。在我國密碼鎖整體水平尚處于國際上70年代左右,電子密碼鎖的成本還很高,市場上仍以按鍵電子鎖為主,按鍵式和卡片鑰匙式電子鎖已引進國際先進水平,現(xiàn)國內(nèi)有幾個廠生產(chǎn)供應市場。但國內(nèi)自行研制開發(fā)的電子鎖,其市場結構尚未形成,應用還不廣泛。國內(nèi)的不少企業(yè)也引進了世界上先進的技術,發(fā)展前景非常可觀。希望通過不斷的努力,使電子密碼鎖在我國也能得到廣泛應用。2 系統(tǒng)方案論證2.1 主控部分的選擇方案一:采用數(shù)字電路控制用以74LS112雙JK觸發(fā)器構成的數(shù)字邏輯電路作為密碼鎖的核心控制,將密碼保存在JK觸發(fā)器中,與輸入密碼
4、通過比較器比較,判斷結果是否相符合。采用數(shù)字電路設計的方案好處就是設計簡單,但控制的準確性和靈活性差,故不采用。方案二:采用以單片機為核心的控制方案選用單片機作為系統(tǒng)的核心部件,實現(xiàn)控制與處理的功能。單片機具有資源豐富、速度快、編程容易等優(yōu)點。利用單片機內(nèi)部的隨機存儲器(RAM)和只讀存儲器(ROM)及其引腳資源,外接數(shù)碼管顯示(LED),鍵盤輸入等實現(xiàn)數(shù)據(jù)的處理傳輸和顯示功能,基本上能實現(xiàn)設計指標,因此綜合考慮,本系統(tǒng)采用方案二。2.2 密碼輸入方式的選擇方案一:指紋輸入識別指紋識別技術主要涉及四個功能:讀取指紋圖像、提取特征、保存數(shù)據(jù)和比對。通過指紋讀取設備讀取到人體指紋的圖像,然后要對原
5、始圖像進行初步的處理,使之更清晰再通過指紋辨識軟件建立指紋的特征數(shù)據(jù)。軟件從指紋上找到被稱為“節(jié)點”(minutiae)的數(shù)據(jù)點,即指紋紋路的分叉、終止或打圈處的坐標位置,這些點同時具有七種以上的唯一性特征。通常手指上平均具有70個節(jié)點,所以這種方法會產(chǎn)生大約490個數(shù)據(jù)。這些數(shù)據(jù),通常稱為模板。通過計算機模糊比較的方法,把兩個指紋的模板進行比較,計算出它們的相似程度,最終得到兩個指紋的匹配結果,從而判斷輸入結果的正確與否??紤]到本方案軟硬件太過復雜,而且成本也高,故不采用。方案二:矩陣鍵盤輸入識別由各按鍵組成的矩陣鍵盤每條行線和列線都對應一條I/O口線,鍵位設在行線和列線的交叉點,當一個鍵按
6、下就會有某一條行線與某一條列線接觸,只要確定接觸的是哪兩條線,即哪兩個I/O口線,就可以確定哪一個鍵被觸動。行線設計成上拉口線,初始時被置高電位,列線懸空,初始置低。通過不斷讀行線口線,或者中斷方式觸發(fā)鍵位掃描。當發(fā)現(xiàn)有鍵按下,將列線逐一置低,其他列線置高,讀行線口線。當某條列線置低時,某條行線也被拉低,則確定這兩條線的交點處的按鈕被按下。每個按鍵都可通過程序賦予功能,從而完成密碼識別。本方案簡單易行,故采用。3 系統(tǒng)總體設計和主要芯片介紹3.1 系統(tǒng)總體設計本設計主要由單片機、矩陣鍵盤、數(shù)碼管顯示以及開鎖報警等部分組成。其中矩陣鍵盤用于輸入數(shù)字密碼和進行各種功能的實現(xiàn),由用戶通過連接單片機的
7、矩陣鍵盤輸入所設定的密碼,驅動芯片驅動數(shù)碼管顯示輸入的數(shù)字,后經(jīng)過單片機對用戶輸入的密碼與自己保存的密碼進行對比,從而判斷密碼是否正確,然后控制引腳的高低電平傳到開鎖電路或者報警電路控制開鎖(黃燈亮)還是報警(紅燈亮)。系統(tǒng)整體框圖如圖3-1AT89S52晶振電路鍵盤輸入模塊復位電路密碼存儲模塊驅動模塊開鎖報警模塊顯示模塊所示。圖3-1 系統(tǒng)結構框圖各模塊具體功能如下:1鍵盤輸入模塊:分為密碼輸入的數(shù)字按鍵與幾個功能按鍵,用于完成密碼的輸入功能。2復位電路:完成系統(tǒng)的復位。3密碼存儲模塊:用于完成掉電存儲功能,使密碼斷電后仍能保存。4驅動電路:用于驅動數(shù)碼管對鍵盤所輸入的數(shù)字進行實時顯示。5顯
8、示模塊:用于完成對系統(tǒng)狀態(tài)的顯示及操作提示功能。6報警電路:應用發(fā)光二極管模擬報警,用于完成密碼輸入錯誤時候的指示。7開鎖電路:應用發(fā)光二極管模擬開鎖,完成開鎖及開鎖提示。3.2 主要芯片介紹 主控芯片AT89S52AT89S52單片機是一個低功耗,高性能CMOS8位單片機,片內(nèi)含8KBytesISP(In-system programmable)的可反復擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術制造,兼容標準MCS-51指令系統(tǒng)及80C51引腳結構,芯片內(nèi)集成了通用8位中央處理器和ISPFlash存儲單元,功能強大的微型計算機的AT89S52可
9、為許多嵌入式控制應用系統(tǒng)提供高性價比的解決方案。AT89S52具有以下標準功能:8k字節(jié)Flash,256字節(jié)RAM,32位I/O口線,看門狗定時器,2個數(shù)據(jù)指針,三個16位定時器/計數(shù)器,一個6向量2級中斷結構,全雙工串行口,片內(nèi)晶振及時鐘電路。另外,AT89S52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM內(nèi)容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。AT89S52的管腳分布如圖3-2。 圖3-2 AT89S52芯片管腳其各引腳功能如下:(29引腳):程
10、序儲存允許(PSEN)輸出是外部程序存儲器的讀選通信號,當AT89S52由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周期兩次PSEN有效,即輸出兩個脈沖,在此期間,當訪問外部數(shù)據(jù)存儲器,將跳過兩次PSEN信號。/VPP(31引腳):外部訪問允許,欲使CPU僅訪問外部程序存儲器(地址為0000H-FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復位時內(nèi)部會鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲器的指令。FLASH存儲器編程時,該引腳加上+12V的編程允許電源Vpp,當然這必須是該器件是使用12V編程電壓Vpp。XTAL1(19引腳
11、):振蕩器反相放大器和內(nèi)部時鐘發(fā)生電路的輸入端。XTAL2(18引腳):振蕩器反相放大器的輸出端。ALE/PROG(30引腳):當訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時鐘振蕩頻率的1/6輸出固定的脈沖信號,因此它可對外輸出時鐘或用于定時目的。要注意的是:每當訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖。對FLASH存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。RST(9腳):當振蕩器運行時,在此引腳上出現(xiàn)兩個機器周期的高電平,使得單片機復位。P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當P1口的
12、管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。P1.0 T2(定時器/計數(shù)器T2的外部計數(shù)輸入),時鐘輸出 P1.1 T2EX(定時器/計數(shù)器T2的捕捉/重載觸發(fā)信號和方向控制) P1.5 MOSI(在系統(tǒng)編程用)下載線P1.6 MISO(在系統(tǒng)編程用)下載線P1.7 SCK(在系統(tǒng)編程用)下載線P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2
13、口緩沖器可接收,輸出4個TTL門電流,當P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P3口作為AT89S52的一些特殊功能管腳備選功能:P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 (外部中斷0)P3.3 (外部中斷1)P3.4 T0(記時器0外部輸入)P3.5 T1(記時器1外部輸
14、入)P3.6 (外部數(shù)據(jù)存儲器寫選通)P3.7 (外部數(shù)據(jù)存儲器讀選通)AT89S52主要特性如表1所示。表1 AT89S52主要特性兼容MCS-51指令系統(tǒng)8k可反復擦寫(>1000次)ISP Flash ROM32個雙向I/O口4.5-5.5V工作電壓3個16位可編程定時/計數(shù)器時鐘頻率0-33MHz全雙工UART串行中斷口線256x8bit內(nèi)部RAM2個外部中斷源低功耗空閑和省電模式中斷喚醒省電模式3級加密位看門狗(WDT)電路軟件設置空閑和省電功能靈活的ISP字節(jié)和分頁編程雙數(shù)據(jù)寄存器指針 存儲芯片AT24C1024AT24C1024是美國Atmel公司的低功耗CMOS型E
15、78;PROM,內(nèi)含256×8位存儲空間,具有工作電壓寬(2.55.5V)、擦寫次數(shù)多(大于10000次)、寫入速度快(小于10ms)、抗干擾能力強、數(shù)據(jù)不易丟失、體積小等特點。而且他是采用了I²C總線式進行數(shù)據(jù)讀寫的串行器件,占用很少的資源和I/O線,并且支持在線編程,進行數(shù)據(jù)實時的存取十分方便。AT24C1024中帶有的片內(nèi)地址寄存器。每寫入或讀出一個數(shù)據(jù)字節(jié)后,該地址寄存器自動加1,以實現(xiàn)對下一個存儲單元的讀寫。所有字節(jié)均以單一操作方式讀取。為降低總的寫入時間,一次操作可寫入多達8個字節(jié)的數(shù)據(jù)。I²C總線是一種用于IC器件之間連接的二線制總線。它通過SDA(
16、串行數(shù)據(jù)線)及SCL(串行時鐘線)兩根線在連到總線上的器件之間傳送信息,并根據(jù)地址識別每個器件。AT24C1024正是運用了I²C規(guī)程,使用主/從機雙向通信,主機(通常為單片機)和從機(AT24C1024)均可工作于接收器和發(fā)送器狀態(tài)。主機產(chǎn)生串行時鐘信號(通過SCL引腳)并發(fā)出控制字,控制總線的傳送方向,并產(chǎn)生開始和停止的條件。無論是主機還是從機,接收到一個字節(jié)后必須發(fā)出一個確認信號ACK(確認應答)。AT24C1024的控制字由8位二進制數(shù)構成,在開始信號發(fā)出以后,主機便會發(fā)出控制字,以選擇從機并控制總線傳送的方向。具體管腳描述如下:SCL為串行時鐘(Serial Clock I
17、nput):串行時鐘輸入管腳用于產(chǎn)生器件所有數(shù)據(jù)發(fā)送或接收的時鐘這是一個輸入管腳。串行時鐘上升沿時,數(shù)據(jù)輸入芯片(寫入);串行時鐘下降沿時,數(shù)據(jù)從芯片輸出(讀出)。SDA為串行數(shù)據(jù)/地址(Serial DAta):雙向串行數(shù)據(jù)/地址管腳用于器件所有數(shù)據(jù)的發(fā)送或接收SDL,該端為漏極開路驅動,可與任意數(shù)量的其他漏極開路或集電極開路器件“線或”。A1為器件/頁面地址輸入端(DevicPage Addresses):當使用24C1024時最大可級聯(lián)8個器件,如果只有一個24C1024被總線尋址,地址輸入腳A1可懸空或連接到Vss。WP為寫保護:如果WP管腳連接到Vcc所有的內(nèi)容都被寫保護只能讀當WP
18、,管腳連接到Vss或懸空,允許器件進行正常的讀/寫操作。管腳圖如圖3-3所示。圖3-3 AT24C1024芯片管腳 驅動芯片74LS13874LS138用于高性能的存貯譯碼或要求傳輸延遲時間短的數(shù)據(jù)傳輸系統(tǒng),在高性能存貯器系統(tǒng)中,用這種譯碼器可以提高譯碼系統(tǒng)的效率。將快速賦能電路用于高速存貯器時,譯碼器的延遲時間和存貯器的賦能時間通常小于存貯器的典型存取時間,這就是說由肖特基鉗位的系統(tǒng)譯碼器所引起的有效系統(tǒng)延遲可以忽略不計。74LS138基本功能:74LS138為3線8線譯碼器,共有54/74S138和54/74LS138兩種線路結構型式,其工作原理如下:當一個選通端(E1)為高電平,另兩個選
19、通端(/(E2)和/(E3))為低電平時,可將地址端(A、B、C)的二進制編碼在一個對應的輸出端以低電平譯出。74LS138的作用:利用E1、/(E2)和/(E3)可級聯(lián)擴展成24線譯碼器;若外接一個反相器還可級聯(lián)擴展成32線譯碼器。若將選通端中的一個作為數(shù)據(jù)輸入端時,74LS138還可作數(shù)據(jù)分配器以及與非門組成的3線-8線譯碼器74LS138等。其引腳功能如下:A、B、C譯碼地址輸入端E1選通端/(E2)和/(E3)選通端(低電平有效)Y0Y7譯碼輸出端(低電平有效)其功能表如表2所示。表2 3線-8線譯碼器74LS138的功能表74LS138的八個輸出管腳,任何時刻要么全為高電平1芯片處于
20、不工作狀態(tài),要么只有一個為低電平0,其余7個輸出管腳全為高電平1。如果出現(xiàn)兩個輸出管腳在同一個時間為0的情況,說明該芯片已經(jīng)損壞。74LS138有三個附加的控制端,當輸出為高電平(S1),譯碼器處于工作狀態(tài)。否則,譯碼器被禁止,所有的輸出端被封鎖在高電平,如功能表所示。這三個控制端也叫做“片選”輸入端,利用片選的作用可以將多篇連接起來以擴展譯碼器的功能。帶控制輸入端的譯碼器又是一個完整的數(shù)據(jù)分配器。在電路中如果把作為“數(shù)據(jù)”輸入端(同時),而將作為“地址”輸入端,那么從送來的數(shù)據(jù)只能通過所指定的一根輸出線送出去。圖3-4是74LS138譯碼器芯片引腳圖,圖中小圓圈表示低電平有效。圖3-4 74
21、LS138芯片管腳4 系統(tǒng)硬件設計本系統(tǒng)外圍電路包括鍵盤輸入部分、密碼存儲部分、復位部分、晶振部分、顯示部分、驅動部分,開鎖以及報警等部分組成。根據(jù)實際情況鍵盤輸入部分選擇4×4矩陣鍵盤,顯示部分選擇字符型8位七段數(shù)碼管顯示,密碼存儲部分選用芯片AT24C1024,驅動部分選用74LS138芯片來完成,報警及開鎖部分由LED燈模擬來控制。4.1 鍵盤輸入模塊由于本設計所用到的按鍵數(shù)量較多而不適合用獨立按鍵式鍵盤。采用的是矩陣式按鍵鍵盤,它由行和列組成,也稱行列式鍵盤,按鍵位于行列的交叉點上,密碼鎖的密碼由鍵盤輸入完成,與獨立式按鍵鍵盤相比,能減少鍵盤與單片機連接時所占用的I/O線的數(shù)
22、目。本設計中使用的這個4×4鍵盤不但能完成密碼的輸入還能作特別功能鍵使用。其行線和單片機P1.0P1.3相連,列線與單片機P1.4P1.7相連,共有16個按鍵。本設計用到了其中的12個,如圖4-1所示,包括09十個數(shù)字鍵,確認和清除兩個控制鍵(作為密碼輸入時的確定和清除鍵),本設計中的鍵盤掃描采用行掃描法,即依次置行線中的每一行為低電平,其余均為高電平,掃描列線電平狀態(tài),為低電平即表示該鍵按下。圖4-1 鍵盤輸入模塊具體的按鍵功能設置如下按鍵鍵名功能說明0-9鍵數(shù)字鍵輸入密碼清除鍵功能鍵清除數(shù)字確認鍵功能鍵確認密碼的輸入+ 鍵功能鍵使顯示器清零4.2 密碼存儲模塊密碼存儲采用AT24
23、C1024傳輸方式I2C總線式,占用的單片機端口少,它能掉電存儲數(shù)據(jù)。掉電存儲單元的作用是在系統(tǒng)電源斷開的時候,存儲當前設定的密碼數(shù)據(jù)。密碼讀寫存儲模塊當比較密碼的時候,需要將存儲在AT24C1024的數(shù)據(jù)讀到RAM中,然后和輸入的密碼相比較。圖4-2所示AT24C1024的2腳是地址線,用于確定芯片的硬件地址。在AT89S52試驗開發(fā)板上接地,第5腳SDA為串行數(shù)據(jù)輸入/輸出,數(shù)據(jù)通過這條雙向I²C總線串行傳送,在AT89S52試驗開發(fā)板上和單片機的P2.6連接。第6腳SCL為串行時鐘輸入線,在AT89S52試驗開發(fā)板上和單片機的P2.5連接。SDA和SCL都需要和正電源間各接一個
24、5.1K的電阻上拉。第7腳接地。AT24C1024中帶有片內(nèi)地址寄存器。每寫入或讀出一個數(shù)據(jù)字節(jié)后,該地址寄存器自動加1,以實現(xiàn)對下一個存儲單元的讀寫。所有字節(jié)均以單一操作方式讀取。為降低總的寫入時間,一次操作可寫入多達8個字節(jié)的數(shù)據(jù)。圖4-2 密碼存儲電路4.3 復位和晶振模塊單片機復位是使CPU和系統(tǒng)中的其他功能部件都處在一個確定的初始狀態(tài),并從這個狀態(tài)開始工作。該電路在最簡單的復位電路下增加了手動復位按鍵,在接通電源瞬間,電容C1上的電壓很小,復位下拉電阻上的電壓接近電源電壓,即RST為高電平,在電容充電的過程中RST端電壓逐漸下降,當RST端的電壓小于某一數(shù)值后,CPU脫離復位狀態(tài),由
25、于電容C1足夠大,可以保證RST高電平有效時間大于24個振蕩周期,CPU能夠可靠復位。增加手動復位按鍵是為了避免死機時無法可靠復位。當復位按鍵按下后電容C3通過R10放電。R10的作用在于限制按鍵按下瞬間電容C3的放電電流,避免產(chǎn)生火花,以保護按鍵觸電。AT89S52引腳XTAL1和XTAL2與晶體振蕩器及電容C1、C2按圖4-3所示方式連接。晶振、電容C1/C2及片內(nèi)與非門(作為反饋、放大元件)構成了電容三點式振蕩器,振蕩信號頻率與晶振頻率及電容C1、C2的容量有關,但主要由晶振頻率決定,范圍在033MHz之間,電容C1、C2取值范圍在530pF之間。根據(jù)實際情況,本設計中采用12MHZ作為
26、系統(tǒng)的外部晶振。電容取值為10pF。復位和晶振電路圖如圖4-3所示。圖4-3 復位和晶振電路4.4 顯示模塊顯示部分由一組八個LED數(shù)碼管來完成。當單片機上電后,從左到右第八位數(shù)碼管會閃亮,說明顯示屏已經(jīng)接通電源正等待密碼的輸入。開鎖時,利用鍵盤上的數(shù)字鍵09輸入密碼,每按下一個數(shù)字鍵后在顯示器上顯示一個數(shù)字,輸入多少位就顯示多少個數(shù)字。當密碼輸入完成時,按下確認鍵,如果輸入的密碼正確的話,LED顯示屏第八位數(shù)碼管閃亮且不再顯示以后輸入的數(shù)字,單片機其中P2.0引腳會輸出高電平,電子密碼鎖被打開(黃燈亮);若輸入密碼錯誤,顯示屏無任何顯示,單片機其中P2.1引腳會輸出高電平,電子密碼鎖不能打開
27、且報警(紅燈亮),錯誤確認密碼不能超過三次,超過三次,顯示屏將不再顯示輸入的任何數(shù)字,鍵盤自動鎖定。通過LED顯示屏,可以清楚地判斷出密碼鎖所處的狀態(tài)。顯示電路如圖4-4所示。圖4-4 顯示電路4.5 開鎖和報警模塊開鎖和報警部分各由一個LED燈來完成,當單片機上電后可自動識別密碼。若輸入密碼與設定的密碼相同時,即可開鎖(黃燈亮);當輸入密碼與設定的密碼不相同時,即可報警(紅燈亮);該密碼鎖有三次輸入密碼的機會:若一次就確認密碼輸入正確,則開鎖(黃燈亮)且顯示器不再顯示以后任何輸入的數(shù)字;若三次都確認輸入錯誤密碼,則報警(紅燈亮)三次且顯示器不再顯示任何輸入的數(shù)字,即鍵盤自動鎖定。單片機斷電后
28、即可清除原有記錄,上電后可再次輸入密碼進行有關操作。開鎖和報警部分電路如圖4-5所示。圖4-5 開鎖和報警電路5 系統(tǒng)軟件設計系統(tǒng)軟件設計與硬件電路相關聯(lián),本電子密碼鎖系統(tǒng)的軟件設計分為以下幾個模塊:主程序模塊,鍵盤掃描模塊,密碼讀寫存儲模塊,LED顯示模塊,報警模塊等等。軟件設計思路:電子密碼鎖工作的主要過程是LED數(shù)碼管提示開始輸入密碼,通過鍵盤輸入密碼,同時LED顯示密碼輸入情況,按下確認鍵后判斷密碼的正確性,作出開鎖或報警處理。當輸入密碼連續(xù)輸入錯誤3次時,鎖定鍵盤10s。A. 主程序模塊在主程序模塊中要完成系統(tǒng)初始化,檢測按鍵,調(diào)用存儲模塊以及調(diào)用顯示模塊等功能。B. 鍵盤掃描子程序
29、模塊該模塊在主程序中調(diào)用,具備判斷鍵盤上有無鍵按下、逐列掃描鍵盤以確定被按鍵的位置即行列號、形成鍵值并將鍵值存入指定的數(shù)據(jù)緩沖區(qū)等功能。鍵盤掃描子程序中采用行掃描法,掃描方式為查詢方式,當鍵盤無鍵按下時,程序一直在該模塊中循環(huán),當有鍵按下時,程序立即計算鍵值并在LED顯示相應的值。C. 密碼讀寫存儲模塊當比較密碼的時候,需要將存儲在AT24C1024芯片內(nèi)的數(shù)據(jù)讀到RAM中,然后和輸入的密碼相比較。D. 顯示子程序模塊實現(xiàn)顯示子程序的關鍵是編寫LED的串口驅動程序。在想要顯示數(shù)值的時候,只要在程序中寫好要顯示的數(shù)字,然后直接調(diào)用LED的串口驅動程序就可以實現(xiàn)在數(shù)碼管上顯示的數(shù)字。有多位需要同時
30、顯示時,可以采用動態(tài)刷新的方法,就可以得到穩(wěn)定的輸出。5.1 系統(tǒng)總程序流程圖初始化開始調(diào)用顯示全部輸完?比較密碼?開門YNNY密碼輸入識別按鍵確定輸入輸入密碼結束返回調(diào)用顯示存入緩沖調(diào)用24c1024手動清除重新輸入NNYY比較密碼主程序主要完成初始化,有無按鍵按下以及調(diào)用顯示等等。主程序的流程圖如圖5-1所示。圖5-1 主程序流程圖5.2 密碼比較及開鎖流程圖開始比較第一位八位比較完比較下一位清零清屏顯示報警記錄錯誤次數(shù)三次鎖定鍵盤返回NNNYYY正確開鎖圖5-2 密碼比較及開鎖流程圖6 軟件調(diào)試及性能分析6.1 軟件介紹 KeilC51簡介隨著單片機開發(fā)技術的不斷發(fā)展,從普遍使用匯編語言
31、到逐漸使用高級語言開發(fā),單片機的開發(fā)軟件也在不斷發(fā)展。Keil是目前最流行的51單片機開發(fā)軟件,它提供了一個集成開發(fā)環(huán)境uVision,它包括C編譯器,宏匯編,連接器,庫管理和一個功能強大的仿真調(diào)試器。這樣在開發(fā)應用軟件的過程中,編輯、編譯、匯編、連接、調(diào)試等各階段都集成在一個環(huán)境中,先用編輯其編寫程序,接著調(diào)用編譯器進行編譯,連接后即可直接運行,可以縮短開發(fā)周期。6.1.2 Proteus介紹Proteus軟件是一塊功能強大的電路設計分析軟件。它組合了高級原理布圖、混合模式SPICE仿真,PCB設計以及自動布線來實現(xiàn)一個完整的電子設計系統(tǒng),它和KeilC51結合起來就可以實現(xiàn)軟硬件的聯(lián)調(diào)仿真
32、。ISIS是Proteus系統(tǒng)的中心,它遠不僅是一個表庫。Proteus的ISIS是一款Lab-center出品的電路分析實物仿真系統(tǒng),可仿真各種電路和IC,并支持單片機。元件庫齊全,使用方便,是不可多得的專業(yè)單片機軟件仿真系統(tǒng),它具有控制原理圖設計外觀的超強制作環(huán)境。無論用戶的要求是快速實現(xiàn)復雜設計的仿真以及PCB設計,還是設計精美的原理圖以供出版,ISIS是您的最好工具。6.2 軟件調(diào)試通過編寫出系統(tǒng)的主程序、密碼比較判斷程序、顯示程序的測試,結合外圍電路及輸出驅動控制等器件來檢測系統(tǒng)是否能夠正常工作。通過Keil uVision2軟件來編譯調(diào)試程序,看程序中是否有死循環(huán)錯誤、機器碼錯誤及
33、轉移地址錯誤,若程序正確并執(zhí)行跟蹤或單步運行,確保了程序的正確性后結合Proteus仿真軟件的使用來判斷程序和原理圖的結合是否能實現(xiàn)所要求的功能,即能夠順利的實現(xiàn)開鎖及報警的功能。其調(diào)試的結果如圖6-1所示;仿真結果如圖6-2及圖6-3所示。圖6-1 Keil uVision2編譯結果圖6-2 Proteus仿真結果(1)圖6-3 Proteus仿真結果(2)6.3 系統(tǒng)功能簡述系統(tǒng)設定初始密碼為12345678,共8位。系統(tǒng)上電后,系統(tǒng)內(nèi)各部分都處于初始狀態(tài),LED上閃爍顯示8。用戶通過鍵盤輸入8位密碼,按下“確認”鍵后,系統(tǒng)將輸入密碼與設定密碼進行比較。若密碼正確,則發(fā)出開鎖信號,將鎖打開
34、(黃燈亮)且LED屏上清除所輸入的密碼顯示數(shù)字8;若密碼不正確,則報警(紅燈亮)。用戶可以重新輸入密碼,重新輸入密碼的次數(shù)不能超過3次,若3次輸入的密碼都不正確,則鍵盤被鎖定并且系統(tǒng)發(fā)出報警信號(紅燈亮),此次開鎖可意為失敗,對單片機重新上電,可重新進行有關操作。結 論在著手本次畢業(yè)設計時,通過查閱網(wǎng)絡與圖書館搜集到的資料,再加上指導老師指點,結合生活中對密碼鎖的功能特性要求,以單片機AT89S52芯片為控制核心部件,結合顯示部分、以及輸出控制這三部分的主要驅動,通過按鍵及LED燈的亮滅控制密碼輸入的正確與否設計出了這一套電子密碼鎖系統(tǒng)的主要硬件結構和軟件結構,基本完成了課題的要求:密碼正確開
35、鎖,密碼錯誤報警,密碼輸入錯誤超過三次鍵盤自動鎖定。其電路結構簡單、易推廣、維護方便、從各個方面體現(xiàn)出它具有較高的實用價值。參考文獻1李智輝,周靈彬,白宇龍.基于51單片機電子密碼鎖與proteus仿真的設計J.電腦知識與技術,2009,5(24)2任艷艷.基于AT89C51單片機多功能密碼鎖的研究J.重慶職業(yè)技術學院學報,2008.53楊將新,李華軍,劉到駿等.單片機程序設計及應用(從基礎到實踐)J電子工業(yè)出版社,20064王為青,程國鋼.單片機Keil Cx51應用開發(fā)技術J.人民郵電出版社,2007.25于勇,戴佳,常江.51單片機C語言常用模塊與綜合系統(tǒng)設計實例精講M.北京:電子工業(yè)出
36、版社,2007.46楊居義,楊堯,楊曉琴,王益斌.單片機課程設計指導M.北京:清華大學出版社,2009.97徐愛均.單片機原理使用教程基于Proteus虛擬仿真M.電子工業(yè)出版社,20098常敏,王涵,范江波.單片機應用程序開發(fā)與實踐M.北京:電子工業(yè)出版社,2009.39張俊謨.單片機中級教程原理與應用第二版M.北京:北京航空航天大學出版社,2006.1010柳兆軍,李同山,王善斌.Proteus軟件在單片機教學中的應用J.山東理工大學,2007,9(149).11黃智偉,王彥,朱衛(wèi)華.全國大學生電子設計競賽訓練教程M.北京:電子工業(yè)出版社,2005.112Richard:“Park.Ele
37、ctronic Password-lock Design”DB/OL. 200613周海鵬.電子密碼鎖設計-中國期刊全文數(shù)據(jù)庫EB.ZJWL201005017致 謝在這大學的最后一頁里,我要感謝的人很多,首先要感謝我的指導老師李娣娜老師,在整個畢業(yè)設計過程中,李老師多次詢問研究進程,并為我指點迷津,幫助我開拓研究思路,心點撥、熱忱鼓勵。李老師一絲不茍的作風,嚴謹求實的態(tài)度,踏踏實實的精神,深深地感動了我,當我遇到難題無從下手時,李老師總能給予我中肯的意見,我從心底里感謝他。還要感謝的是我們各課任課老師,沒有你們的諄諄教誨,就沒有我們學有所長的今天。當然,還要感謝寢室的姐妹們在我完成論文的過程中
38、給予我的幫助和鼓勵,也是她們陪我度過這四年的生活。最后要感謝的就是我的父母,謝謝你們對我的支持。所有的都匯聚成一句話:感謝你們都一直陪伴著我!現(xiàn)在即將揮別我的學校、老師、同學,還有我四年的大學生活,雖然依依不舍,但是對未來的路,我充滿了信心。最后,感謝在大學期間認識我和我認識的所有人,有你們伴隨,才有我大學生活的豐富多彩,絢麗多姿?。ㄈ墓?0999字)附錄一 原器件清單一覽表序號元件名稱型號與規(guī)格單位數(shù)量1電阻220個75.1K個210K個12發(fā)光二極管紅、黃個23晶振12MHz個14電容30pf個210pf個15按鈕開關個176芯片AT89S52塊1AT24C1024塊174LS138塊1
39、7顯示器8位七段數(shù)碼管塊18萬能實驗板塊1附錄二 總系統(tǒng)原理圖附錄三 硬件實物圖附錄四 程序清單系統(tǒng)總程序:#include <reg51.h>#include <string.h>#include <intrins.h>#define uchar unsigned char#define uint unsigned int#define KEY P1#define DISP P0#define null1 '0'sbit LED=P20; /密碼正確點亮sbit LED1=P21; /密碼錯誤點亮sbit P14=P14;sbit P15=
40、P15;sbit P16=P16;sbit P17=P17;sbit P22=P22;sbit P23=P23;sbit P24=P24;uchar key;uchar shuzi;uchar statet;uchar input_mima9;uchar mima9=0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F;uchar k;uchar kk;uchar tab13=0x00,0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x39,0x5e;void delay(uint i);void delay_ri
41、ght(void);void delay_wrong(void);void init_main(void);void main(void);void get_key(void);void calc_disp(uchar array9,uchar n);void clear_arry(uchar *p,uchar n);void delay(uin i)while(-i);void init_main(void) /初始化子程序DISP=0;LED=0;LED1=0; k=0; clear_arry(input_mima,9);void main(void)uchar lock=0; init_
42、main(); statet=0; while(1) get_key();while(kk=1)kk=0;if(statet=0) if(key!=0x00 && key!=0x39 && key!=0x5e) input_mimak=key; if(k<8) k+; else k=0; if(key=0x5e) if(strcmp(input_mima,mima)=0) statet=1; delay_right(); init_main(); else delay_wrong(); lock+; if(lock<3) statet=0; else statet=2; init_main(); continue; if(statet=1) if(key=0x39) delay_right(); continue; calc_disp(input_mima,8); voiddelay_right(void)uchar m; for(m=5;m>0;m-
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高校專業(yè)預警機制的風險評估與管理
- 智慧城市Wi-Fi網(wǎng)絡部署的挑戰(zhàn)與解決方案
- 發(fā)揮本地餐飲業(yè)對特色農(nóng)產(chǎn)品消費的帶動作用
- 2025至2030禮品產(chǎn)業(yè)園區(qū)定位規(guī)劃及招商策略咨詢報告
- 云南省紅河州開遠市2024年八上物理期末考試模擬試題含解析
- 黑龍江省重點中學2024-2025學年化學九年級第一學期期末質量跟蹤監(jiān)視模擬試題含解析
- 木質素基柴油行業(yè)深度解析
- 綠色有機農(nóng)產(chǎn)品認證標準
- 全球氫能滑雪場建設趨勢與冰雪設備市場分析
- 冷卻劑循環(huán)系統(tǒng)在能源領域的創(chuàng)新實踐
- 2025-2030年中國ETC(電子收費)行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- T/CECS 10355-2024鐵路工程混凝土用火成巖石粉
- 包過培訓班合同協(xié)議書
- 供應鏈風險管理研究現(xiàn)狀與未來趨勢綜述
- 工業(yè)廢水處理技術的綜合評價和研究進展
- 意外險銷售團隊培訓策略-洞察闡釋
- 小學一至六年級《體育與健康》健康課教案
- 2025中國臨床腫瘤學會CSCO非小細胞肺癌診療指南要點解讀課件
- 2025年全國工業(yè)鍋爐G1證理論考試筆試試題(400題)含答案
- 泛微實施面試題及答案
- 試驗檢測管理制度
評論
0/150
提交評論