畢業(yè)設計-基于單片機的密碼鎖設計_第1頁
畢業(yè)設計-基于單片機的密碼鎖設計_第2頁
畢業(yè)設計-基于單片機的密碼鎖設計_第3頁
畢業(yè)設計-基于單片機的密碼鎖設計_第4頁
畢業(yè)設計-基于單片機的密碼鎖設計_第5頁
已閱讀5頁,還剩18頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

PAGEPAGE3唐山工業(yè)職業(yè)技術學院畢業(yè)設計說明書設計題目:基于單片機的密碼鎖設計學生姓名:邸金業(yè)班級09機電12專業(yè):機電一體技術設計指導教師____于東東_____________設計輔導教師____于東東______________(完成日期)2012年3月8日

目錄201451概述 1295441.1背景 1136431.2設計要求 2199602總體設計 2239692.1方案的論證與比較 29023硬件設計 4116213.1電路的功能單元設計 4201123.1.1開鎖機構 4313383.2按鍵電路設計 5178523.2.1矩陣鍵盤電路 5164693.3顯示電路設計 880143.4AT24C02掉電存儲單元的設計 9104363.5密碼鎖的電源電路設計 1084963.6設計總框圖 1186303.7設計總體電路圖 11108034軟件設計 12236174.1模塊介紹 12262354.1.1主程序模塊 1276314.1.2鍵盤掃描及識別子程序 1241514.1.3調(diào)電存儲服務程序 12247064.2程序流程圖 1326379附錄:主程序 1525448總結 217126致謝 214522主要參考文獻 221概述1.1背景在日常的生活和工作中,住宅與部門的安全防范、單位的文件檔案、財務報表以及一些個人資料的保存多以加鎖的辦法來解決。若使用傳統(tǒng)的機械式鑰匙開鎖,人們常需攜帶多把鑰匙,使用極不方便,且鑰匙丟失后安全性即大打折扣。隨著科學技術的不斷發(fā)展,人們對日常生活中的安全保險器件的要求越來越高。為滿足人們對鎖的使用要求,增加其安全性,用密碼代替鑰匙的密碼鎖應運而生。密碼鎖具有安全性高、成本低、功耗低、易操作等優(yōu)點。

在安全技術防范領域,具有防盜報警功能的電子密碼鎖逐漸代替?zhèn)鹘y(tǒng)的機械式密碼鎖,克服了機械式密碼鎖密碼量少、安全性能差的缺點,使密碼鎖無論在技術上還是在性能上都大大提高一步。隨著大規(guī)模集成電路技術的發(fā)展,特別是單片機的問世,出現(xiàn)了帶微處理器的智能密碼鎖,它除具有電子密碼鎖的功能外,還引入了智能化管理、專家分析系統(tǒng)等功能,從而使密碼鎖具有很高的安全性、可靠性,應用日益廣泛。1.2設計要求本次密碼鎖的設計,其主要具有如下功能:

(1)設置6位密碼,密碼通過鍵盤輸入,若密碼正確,則將鎖打開。

(2)密碼可以由用戶自己修改設定(6位密碼),密碼輸入正確才能修改密碼。修改密碼之前必須再次輸入密碼,在輸入新密碼時候需要二次確認,以防止誤操作。

(3)報警、鎖定鍵盤功能。密碼輸入錯誤會發(fā)出警告音。若密碼輸入錯誤次數(shù)超過3次,蜂鳴器報警并且鎖定鍵盤。有效按鍵提示。90秒定時中斷,輸出控制信號,防止長時間無效操作。其他擴展功能。2總體設計2.1方案的論證與比較1、方案論證與比較方案一:采用數(shù)字電路控制。其原理方框圖如圖2-1所示。圖2-1數(shù)字密碼鎖電路方案采用數(shù)字密碼鎖電路的好處就是設計簡單。用以74LS112雙JK觸發(fā)器構成的數(shù)字邏輯電路作為密碼鎖的核心控制,共設了9個用戶輸入鍵,其中只有4個是有效的密碼按鍵,其它的都是干擾按鍵,若按下干擾鍵,鍵盤輸入電路自動清零,原先輸入的密碼無效,需要重新輸入;如果用戶輸入密碼的時間超過40秒(一般情況下,用戶不會超過40秒,若用戶覺得不便,還可以修改)電路將報警80秒,若電路連續(xù)報警三次,電路將鎖定鍵盤5分鐘,防止他人的非法操作。電路由兩大部分組成:密碼鎖電路和備用電源(UPS),其中設置UPS電源是為了防止因為停電造成的密碼鎖電路失效,使用戶免遭麻煩。密碼鎖電路包含:鍵盤輸入、密碼修改、密碼檢測、開鎖電路、執(zhí)行電路、報警電路、鍵盤輸入次數(shù)鎖定電路。方案二:采用一種是用以AT89S51為核心的單片機控制方案。利用單片機靈活的編程設計和豐富的IO端口,及其控制的準確性,不但能實現(xiàn)基本的密碼鎖功能,還能添加調(diào)電存儲、聲光提示甚至添加遙控控制功能。其原理如圖2-2所示。圖2-2單片機控制方案通過比較以上兩種方案,單片機方案有較大的活動空間,不但能實現(xiàn)所要求的功能而且能在很大的程度上擴展功能,而且還可以方便的對系統(tǒng)進行升級,所以我們采用后一種方案。3硬件設計3.1電路的功能單元設計3.1.1開鎖機構通過單片機送給開鎖執(zhí)行機構,電路驅動電磁鎖吸合,從而達到開鎖的目的。其原理如圖3-1所示。單片機微控制器單片機微控制器開鎖驅動電路電磁鎖密碼正確?Y返回N 圖3-1密碼鎖開鎖機構示意圖當用戶輸入的密碼正確而且是在規(guī)定的時間(普通用戶要求在12s內(nèi)輸入正確的密碼,管理員要求在5s輸入正確的密碼)輸入的話,單片機便輸出開門信號,送到開鎖驅動電路,然后驅動電磁鎖,達到開門的目的。其實際電路如圖3-2所示。電路驅動和開鎖兩級組成。由D5、R1、T10組成驅動電路,其中T10可以選擇普通的小功率三極管如9014、9018都可以滿足要求。D5作為開鎖的提示;由D6、C24、T11組成。其中D6、C24是為了消除電磁鎖可能產(chǎn)生的反向高電壓以及可能產(chǎn)生的電磁干擾。T11可選用中功率的三極管如8050,電磁鎖的選用要視情況而定,但是吸合力要足夠且由一定的余量。在本次設計中,基于節(jié)省材料的原則,暫時用發(fā)光二極管代替電磁鎖,發(fā)光管亮,表示開鎖;滅,表示沒有開鎖。 圖3-2密碼鎖開鎖機構電路圖3.2按鍵電路設計3.2.1矩陣鍵盤電路矩陣鍵盤又稱為行列式鍵盤,它是用4條I/O線作為行線,4條I/O線作為列線組成的鍵盤。在行線和列線的每一個交叉點上,設置一個按鍵。這樣鍵盤中按鍵的個數(shù)是4×4個。這種行列式鍵盤結構能夠有效地提高單片機系統(tǒng)中I/O口的利用率。 圖3-3矩陣鍵盤原理電路圖行列式鍵盤原理 89s5189s51D0D1D2D3D4D5D6D7D8D9D105.1KX45.1KX4VCC 圖3-4行列式鍵盤原理電路圖每一條水平(行線)與垂直線(列線)的交叉處不相通,而是通過一個按鍵來連通,利用這種行列式矩陣結構只需要N條行線和M條列線,即可組成具有N×M個按鍵的鍵盤。在這種行列式矩陣鍵盤非鍵盤編碼的單片機系統(tǒng)中,鍵盤處理程序首先執(zhí)行等待按鍵并確認有無按鍵按下的程序段。當確認有按鍵按下后,下一步就要識別哪一個按鍵按下。對鍵的識別通常有兩種方法:一種是常用的逐行掃描查詢法;另一種是速度較快的線反轉法。對照圖3-3所示的4×4鍵盤,說明線反轉個工作原理。首先辨別鍵盤中有無鍵按下,有單片機I/O口向鍵盤送全掃描字,然后讀入行線狀態(tài)來判斷。方法是:向行線輸出全掃描字00H,把全部列線置為低電平,然后將列線的電平狀態(tài)讀入累加器A中。如果有按鍵按下,總會有一根行線電平被拉至低電平從而使行線不全為1。判斷鍵盤中哪一個鍵被按下使通過將列線逐列置低電平后,檢查行輸入狀態(tài)來實現(xiàn)的。方法是:依次給列線送低電平,然后查所有行線狀態(tài),如果全為1,則所按下的鍵不在此列;如果不全為1,則所按下的鍵必在此列,而且是在與零電平行線相交的交點上的那個鍵。按鍵的操作面板如圖3-5所示。共計數(shù)字鍵10個,功能鍵6個。鍵盤上還有3個指示燈和一個蜂鳴器。CLRCLR01EN59F448F337F226F1L1L2L3圖3-5按鍵操作面板示意圖10個數(shù)字鍵用來輸入密碼,另外6個功能鍵分別是:CLR、EN、F1、F2、F3、F4。其中CLR鍵的功能是當輸入密碼錯誤的時候,清除前面已經(jīng)輸入的數(shù)據(jù),重新輸入。EN鍵的功能是確認輸入的密碼。F1是管理模式切換鍵,當用戶不小心三次輸入密碼都沒有正確,鍵盤被鎖定,這個時候就可以啟動管理模式,使用管理員的密碼來開門。F2是用來進入修改密碼的狀態(tài)。F3用來關閉顯示器,一來可以節(jié)省電量,另外也可以防止不法分子偷窺密碼。F4用來作電鈴。上面的3個指示燈L1、L2、L3是用來指示操作的狀態(tài):L1鎖定及輸入指示狀態(tài)燈,正常的情況下顯示紅色,當鍵盤動作的時候,L1燈開始閃動,當鍵盤處于鎖定狀態(tài)時,指示燈也顯示紅色。L2開門指示燈,當用戶在規(guī)定的時間內(nèi)正確的輸入了密碼,此燈轉變?yōu)榫G色,表示開門,否則不顯示。L3是管理員狀態(tài)指示燈,當按下F1后,指示燈自動點亮。面板上還有一個蜂鳴器,其中一個功能是用來指示操作的按鍵是否在成功的按下;另外一個功能是當用戶輸入密碼錯誤的次數(shù)超過了3次,鳴笛以示報警。3.3顯示電路設計本系統(tǒng)設計的顯示電路是為了給使用者以提示而設置的??紤]到為了節(jié)約單片機的口資源,本系統(tǒng)的顯示采用串行顯示的方式,只使用單片機的一個串行口,就可以完成單片機的顯示功能,顯示電路的電路原理圖如圖3-6所示。電路設定:當程序檢測在5分鐘內(nèi)沒有按鍵操作的時候,就關閉顯示。這個功能使用程序來實現(xiàn)的,一旦沒有按鍵動作就啟動一個定時器,檢測在5分鐘內(nèi)沒有按鍵動作的時候,啟動一個程序,關閉顯示,這樣可以達到節(jié)省電能的目的。從單片機串口輸出的信號先送到左邊的移位寄存器(74HC164),由于移位脈沖的作用,使數(shù)據(jù)向右移,達到顯示的目的。移位寄存器74HC164還兼作數(shù)碼管的驅動,插頭1(header1)接電源,插頭2(header2)接數(shù)據(jù)和脈沖輸出端。電路中的三個整流管D1~D3的作用是降低數(shù)碼管的工作電壓,增加其使用壽命。圖3-6顯示器原理圖顯示器主顯示幾個字符,給用戶提供指示見圖3-7所示。2--OFF--2--OFF--圖3-7a關閉狀態(tài) 圖3-7b開鎖狀態(tài)圖3-7c密碼輸入錯誤后的提示圖3-7d密碼在規(guī)定的時間內(nèi)輸入錯誤次數(shù)超過3次后的鎖定狀態(tài)3.4AT24C02掉電存儲單元的設計掉電存儲單元的作用是在電源斷開的時候,存儲當前設定的單價信息。AT24C02是ATMEL公司的2KB字節(jié)的電可擦除存儲芯片,采用兩線串行的總線和單片機通訊,電壓最低可以到2.5V,額定電流為1mA,靜態(tài)電流10Ua(5.5V),芯片內(nèi)的資料可以在斷電的情況下保存40年以上,而且采用8腳的DIP封裝,使用方便。其電路如圖3-8所示。 圖3-8掉電存儲電路原理圖圖中R8、R10是上拉電阻,其作用是減少AT24C02的靜態(tài)功耗,由于AT24C02的數(shù)據(jù)線和地址線是復用的,采用串口的方式傳送數(shù)據(jù),所以只用兩根線SCL(移位脈沖)和SDA(數(shù)據(jù)/地址)與單片機傳送數(shù)據(jù)。3.5密碼鎖的電源電路設計為了防止停電情況的發(fā)生,本電路后備了UPS電源,它包括市電供電電路,停電檢測電路,電子開關切換電路,蓄電池充電電路和蓄電池組成。電源電路圖如圖3-9所示。 圖3-9市電供電電路220V市電通過變壓器降壓成12V的交流電,再經(jīng)過整流橋整流,7805穩(wěn)壓到5V送往電子切換電路,由于本電路功耗較少,所以選用10W的小型變壓器。由R8,R9,R6,R7及IC14構成電壓比較器,正常情況下,V+<V-IC14輸出高電平,繼電器的常閉觸點和市電相連;當市電斷開,V+>V-IC14輸出低電平,由T3,T4構成的達林頓管使繼電器J開啟,將其常開觸點將蓄電池和電路相連,實現(xiàn)市電和蓄電池供電的切換,保證電子密碼鎖的正常工作(視電池容量而定持續(xù)時間)。其電路圖如下圖3-10所示: 圖3-10停電檢測及電子開關切換電路T1,T2構成的蓄電池自動充電電路,它在電池充滿后自動停止充電,其中D1亮為正在充電,D2為工作指示。由R4,R5,T1構成電壓檢測電路,蓄電池電壓低,則T1,T2導通,實現(xiàn)對其充電;充滿后,T1,T2截止,停止充電,同時D1熄滅,電路中C4的作用是濾除干擾信號。其電路圖如圖3-11所示: 圖3-11蓄電池自動充電電路3.6設計總框圖矩陣鍵盤矩陣鍵盤控制89S51單片機輸入錯誤鎖定鍵盤輸入錯誤鎖定鍵盤電源電路及UPS電路延時報警控制電路電源電路及UPS電路延時報警控制電路AT24C02掉電存儲AT24C02掉電存儲開鎖控制電路指示電路串口顯示電路指示電路串口顯示電路圖3-12總體設計框圖3.7設計總體電路圖 圖3-13總體電路圖4軟件設計4.1模塊介紹該密碼鎖控制系統(tǒng)的軟件設計分為以下幾個模塊:4.1.1主程序模塊主程序主要完成初始化、設置中斷向量、檢查有無按鍵按下、以及調(diào)用顯示等等。主程序的流程圖如下所示。4.1.2鍵盤掃描及識別子程序鍵盤采用查詢的方式,放在主程序中,當沒有按鍵按下的時候,單片機循環(huán)主程序,一旦有按鍵按下,便轉向相應的子程序處理,處理結束再返回。4.1.3調(diào)電存儲服務程序當比較密碼的時候,需要讀AT24C02程序,將存儲在芯片內(nèi)的數(shù)據(jù)讀到RAM中,然后和輸入的密碼相比較。當修改密碼的時候,需要把輸入的密碼保存到AT24C02中。4.1.4顯示子程序由于是分屏顯示數(shù)據(jù),所以就要用到5個顯示子程序,分別是:關閉狀態(tài)顯示子程序(DIS_A)、開鎖狀態(tài)顯示子程序(DIS_B)、密碼輸入及修改狀態(tài)顯示子程序(DIS_C)、密碼輸入錯誤后的提示子程序(DIS_D)。密碼在規(guī)定的時間內(nèi)輸入錯誤次數(shù)超過3次后的鎖定狀態(tài)顯示子程序(DIS_E).4.2程序流程圖主程序流程圖如圖4-1所示。NY開始初始化有鍵按下?調(diào)用顯示啟動定時識別按鍵NY開始初始化有鍵按下?調(diào)用顯示啟動定時識別按鍵全部按完?超時?比較密碼開鎖結束自動清除>3次?鎖定NNYYYNYN按下F2啟動定時輸入密碼存入緩沖再輸入一次比較密碼調(diào)用24C02調(diào)用顯示按F2退出Y重新輸入N圖4-1主程序流程圖圖4-2修改密碼流程圖附錄:主程序;顯示緩沖區(qū);LED1EQU6FHBUFFEQU6EHTIMERS1EQU6DH;輸入回車的次數(shù)TIMERS2EQU6CH;報警的次數(shù)TIMERSEQU6BH;輸入數(shù)字的位數(shù);LED6EQU6AH;密碼緩沖區(qū)PS1EQU69HPS2EQU68HPS3EQU67HPS4EQU66HPS5EQU65HPS6EQU64H;;***************************;*****顯示子程序********;***************************;功能:分五屏幕顯示數(shù)據(jù),分別是XSA,XSB,XSC,XSD,XSE.代表六種狀態(tài)。;鎖定狀態(tài)顯示。XSA:PUSHACCPUSHPSWMOVA,TIMERS1MOVDPTR,#TABMOVCA,@A+DPTRMOVSBUF,A;送已經(jīng)輸入密碼的次數(shù)JNBTI,$CLRTIMOVSBUF,#0FEH;送短線JNBTI,$CLRTIMOVSBUF,#0FEH;送短線JNBTI,$CLRTI;送FMOVSBUF,#78HJNBTI,$CLRTIMOVSBUF,#78HJNBTI,$CLRTIMOVSBUF,#11HJNBTI,$CLRTIPOPPSWPOPACCRET;密碼輸入錯誤的提示XSD:PUSHACCPUSHPSWMOVSBUF,#98HJNBTI,$CLRTIMOVSBUF,#79HJNBTI,$CLRTIMOVSBUF,#11HJNBTI,$CLRTIMOVSBUF,#79HJNBTI,$CLRTIMOVSBUF,#79HJNBTI,$CLRTIMOVSBUF,#38HJNBTI,$CLRTIPOPPSWPOPACCRET;鎖定狀態(tài)顯示XSE:PUSHACCPUSHPSWMOVSBUF,#0FEHJNBTI,$CLRTIMOVSBUF,#54HJNBTI,$CLRTIMOVSBUF,#39HJNBTI,$CLRTIMOVSBUF,#11HJNBTI,$CLRTIMOVSBUF,#3DHJNBTI,$CLRTIMOVSBUF,#0FEHJNBTI,$CLRTIPOPPSWPOPACCRETXSF:PUSHACCPUSHPSWMOVSBUF,#98HJNBTI,$CLRTIMOVSBUF,#38HJNBTI,$CLRTIMOVSBUF,#39HJNBTI,$CLRTIMOVSBUF,#39HJNBTI,$CLRTIMOVSBUF,#3DH;UJNBTI,$CLRTIMOVSBUF,#98HJNBTI,$CLRTIPOPPSWPOPACCRETKILLXS:PUSHACCPUSHPSWMOVR7,#06HLOOP_XS:MOVSBUF,#0FFHJNBTI,$CLRTIDJNZR7,LOOP_XSNOPPOPPSWPOPACCRETTAB:DB11H,0D7H,32H,92H,0D4H,98H,18H,0D1H,10H,90H,0FFH24C02讀寫程序AT_RADE:PUSHPSWPUSHACCMOVR0,#AT1;CPU首地址MOVR6,#06H;8字節(jié)MOVR5,#08H;8位 MOVR7,#00H;24C02首地址 LCALLREAD;讀數(shù)據(jù)NOPNOPPOPACCPOPPSWRETAT_WR:PUSHPSWPUSHACCMOVR0,#PS1;CPURAM首地址MOVR6,#06H;8字節(jié)MOVR5,#08H;8BITMOVR7,#00H;24C02RAM首地址LCALLWRT;先寫進NOPNOPPOPA

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論