




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 . . . 畢業(yè)設(shè)計論文題目 基于單片機的數(shù)字密碼鎖設(shè)計 基于單片機的數(shù)字密碼鎖摘要伴隨我們生活水平的提高,電子數(shù)字密碼鎖慢慢取代了普通的鎖具,電子密碼鎖在安全性能上比普通鎖具更好,普通的機械鎖其機構(gòu)非常的簡單,從而在安全性能方面得不到保障,電子密碼鎖使得我們在安全保障方面更有自信,并且電子密碼鎖還有不用鑰匙、無鎖孔、無機械傳動、不易損壞、不磨損等優(yōu)點,很多用戶都想簡單出門,電子密碼鎖就能滿足他們。本次設(shè)計的系統(tǒng)由單片機系統(tǒng)、矩陣鍵盤、顯示電路和報警提示系統(tǒng)組成,系統(tǒng)能完成開鎖、密碼保護、密碼正確與否的提示。單片機是采用的美國Atmel公司的單片機AT89C52;矩陣鍵盤采用4×4
2、矩陣鍵盤;顯示電路主要是采用液晶顯示,具有設(shè)計簡單、工作電壓低、響應速度快、價格低廉等特點;報警系統(tǒng)采用的是LED指示燈。設(shè)計采用C語言作為主片控制程序,因其具有方法合理、簡單易行、成本低、實用等特點。關(guān)鍵詞AT89S51單片機;LCD1602;電子密碼鎖;4×4矩陣鍵盤The No. three soft landing trajectory design and control strategyLi Suxi(Grade11, Class1102, Electronic Information Science and Technology,School of Physics an
3、d Telecommunication Engineering,Shaanxi University of Technology, Hanzhong 723000, Shaanxi)Tutor:Zhou PingheAbstract:With the improvement of our living standards, the electronic digital lock slowly replaces the ordinary mechanical lock, the electronic password lock is better than the ordinary mechan
4、ical lock on the safety factor, the institution of ordinary mechanical lock is very simple, so that it can not guarantee the safety, and electronic lock makes us more confidence on safety, and the electronic lock has an advantage that without a key, keyhole, mechanical transmission, which is difficu
5、lt to damage, wearing, and can not easily be deciphered, Many users want to go out simple, the electronic lock can meet their needs. The system consists of MCU system, matrix keyboard, the showing of circuit and alarm system components. password-protected and the showing of password whether it is co
6、rrect or not. The design uses the C language as the main chips control procedures, which is proved that the design of rational design method is simple, safe and practical.Keywords:MCU AT89S51; LCD1602; Electronic lock; 4x4Matrix keyboard目錄引言11數(shù)字密碼鎖功能要求12總體方案12.1方案選擇22.2方案實現(xiàn)22.3方案結(jié)構(gòu)框圖23硬件電路的設(shè)計33.1單片機
7、與單片機最小系統(tǒng)33.2鍵盤電路53.2.1鍵盤接口53.2.2鍵盤的識別方式63.2.3按鍵去抖動63.2.44×4行列式鍵盤電路63.3LCD1602顯示電路63.3.1LCD1602的介紹63.3.2LCD1602顯示的外圍電路83.4報警提示電路83.5電源輸入與電源指示電路94軟件設(shè)計104.1軟件設(shè)計思路104.2軟件設(shè)計的流程圖105系統(tǒng)調(diào)試125.1基于單片機的數(shù)字密碼鎖硬件調(diào)試135.2基于單片機數(shù)字密碼鎖的軟件調(diào)試135.3基于單片機數(shù)字密碼鎖的總體調(diào)試135.3.1Proteus仿真調(diào)試135.3.2軟硬聯(lián)合調(diào)試146結(jié)論與展望14致14參考文獻15附錄A16附
8、錄B23附錄C2427 / 30引言在我們?nèi)粘5纳詈凸ぷ髦校踩辣I已成為社會不可避免的問題?,F(xiàn)在的用戶都追求具有簡潔方便、高安全,易操作等特點的安全鎖。因此電子數(shù)字密碼鎖是我們生活中不可少的一部分了,數(shù)字密碼鎖的發(fā)展標志著我們生活水平的提高。隨著社會經(jīng)濟的日益增長和人們生活水平的提高,安全成為當下人們最關(guān)心的問題之一。而鎖自古以來就是把守門的鐵將軍,人們對它要求甚高,即要求可靠地防盜,又要使用方便,這也是制鎖者長期以來研制的主題。傳統(tǒng)的門鎖既要備有大量的鑰匙,以與承受鑰匙丟失后的麻煩和風險。另外,如:賓館、辦公大樓、倉庫、保險柜等,由于裝修施工等因素人住時也要把原有的鎖膽更換,況且鑰匙隨身
9、攜帶也諸多便。隨著單片機的問世,出現(xiàn)了帶微處理器的密碼鎖,它除具有電子密碼鎖的功能外,還引入了智能化、科技化等功能。目前西方發(fā)達國家已經(jīng)大量應用智能門禁系統(tǒng),可以通過多種的更加安全更加方便可靠的方法來實現(xiàn)大門的管理。但電子密碼鎖在我國的應用還不廣泛,成本還很高,希望通過不斷地努力使電子密碼鎖能夠在我國與居民日常生活中得到廣泛應用,這也是一個國家生活水平的一種表現(xiàn)。數(shù)字密碼鎖是通過密碼輸入來控制電路,從而控制機械的閉合,完成開鎖和關(guān)鎖的基本操作的電子產(chǎn)品,它的種類比較多,而此次設(shè)計就是基于單片機控制的數(shù)字密碼鎖,它的設(shè)計以單片機為核心,通過編程來實現(xiàn),它負責獲取處理用戶輸入的密碼,將其和正確的預
10、置密碼比較,產(chǎn)生相應的輸出,其性能得到了改善?;趩纹瑱C控制的數(shù)字密碼鎖與普通機械鎖相比,其具有性好、密碼可變、壽命長,不用鑰匙、無鎖孔、無機械傳動、不易損壞、不磨損、不易被破譯等優(yōu)點,數(shù)字密碼鎖是利用數(shù)字密碼來開啟的鎖具,其重復概率僅為十萬分之一,具有很高的安全性;而普通機械鎖使用卻相對不夠安全,通過對社會各階層千余人的調(diào)查,百分之百的人都愿意一身輕松沒有任何顧慮的出入家門,都愿意用上一種鎖具可使人擺脫鑰匙的束縛。因此,設(shè)計數(shù)字密碼鎖的市場發(fā)展前景極為廣闊。1 數(shù)字密碼鎖功能要求本次設(shè)計的數(shù)字密碼鎖有密碼的輸入、有密碼的修改功能,并且密碼是八位,在輸入密碼的過程中有顯示提示,讓用戶更好的操作
11、密碼鎖,而在密碼輸入正確與否(鎖的開否)也需要顯示提示,此次設(shè)計的時候沒有把機械部分設(shè)計出來,因此引用了紅綠燈的顯示(報警提示),來代表機械部分的,即表示鎖的開閉狀態(tài)。此次設(shè)計實現(xiàn)功能要求如下:1) 加電后,液晶顯示英文“Enter Password!”來歡迎用戶。2) 輸入密碼時,逐位顯示“*”,此次設(shè)計的密碼為八位,因此為“*”,以防止泄露密碼,這樣讓用戶用的放心。3) 輸入密碼過程中,如果不小心出現(xiàn)了輸入錯誤,可按“復位”鍵清除屏幕,取消此次輸入,再次輸入需要重新輸入所有密碼。4) 當密碼輸入完畢時,單片機將輸入的密碼與設(shè)定的密碼比較,若密碼正確,則綠色發(fā)光二極管亮(表示密碼鎖打開),并
12、且顯示屏上也有所提示“Password is right!”蜂鳴器報警一秒;若密碼不正確,顯示屏上同樣顯示“Password is wrong!”,并且有密碼輸入錯誤時,報警三秒,用戶可以重新輸入,但是一次性有三次輸入密碼的機會,若是一次性輸入了三次錯誤密碼,則報警五秒鐘,期間用戶就不能再輸入密碼了,只能等到復位后再重新輸入。5) 此次設(shè)計的數(shù)字密碼鎖密碼可以修改,當輸入正確的密碼后,你可以根據(jù)自己的需要對已設(shè)的密碼進行修改,修改成功后,有兩秒提示音。6) 此次設(shè)計的數(shù)字密碼鎖的初始密碼為八位密碼“11111111”。2 總體方案2.1 方案選擇設(shè)計本次畢業(yè)設(shè)計之前構(gòu)思了兩種方案:一種是用以7
13、4LS112雙JK觸發(fā)器構(gòu)成的數(shù)字邏輯電路控制方案;另一種是用以單片機為核心的電子密碼鎖。第一種方案應用數(shù)字電子技術(shù)的編、譯碼技術(shù),并通過按鍵實現(xiàn)密碼的設(shè)置、修改與識別功能,在設(shè)計的時候考慮到第一種方案需用到較多集成芯片,電路焊接起來很復雜;密碼采用脈沖輸入法,故對輸入脈沖有很高要求,而且密碼輸入與修改過程也比較繁雜。而第二種方案是采用集成芯片單片機還有其他集成芯片來控制整個電路,靈活準確性好且性強還具有擴展功能,并且焊接起來很簡單,因此采用了后一種方案,即單片機控制的數(shù)字密碼鎖設(shè)計。2.2 方案實現(xiàn)此次設(shè)計的基于單片機的數(shù)字密碼鎖,它主要由單片機、矩陣鍵盤、液晶顯示和報警提示等部分組成。單片
14、機作為本設(shè)計的核心元件,利用單片機靈活的編程設(shè)計和豐富的I/O端口,與其控制的準確性,實現(xiàn)基本的密碼鎖功能,其原理圖如圖2.1所示。矩陣鍵盤用于輸入數(shù)字密碼和進行各種功能的實現(xiàn),主要有數(shù)字輸入按鍵、確認按鍵、密碼修改按鍵等,用戶可以通過連接單片機的矩陣鍵盤輸入密碼,液晶顯示屏提示一些輸入,讓用戶更方便的操作電子密碼鎖鎖,當你輸入的密碼位數(shù)達到所需要輸入的密碼位數(shù)后,單片機對用戶輸入的密碼與自己部設(shè)置保存的密碼進行對比,從而判斷密碼是否正確,液晶顯示屏提示你輸入的密碼是否錯誤,然后控制其他引腳的高低電平送到報警提示電路控制報警提示(紅綠發(fā)光二極管顯示),表示鎖的開或者閉合,而在實際使用時只要將單
15、片機的負載換成電子密碼鎖的電磁鐵吸合線圈即可。密碼輸入單片機控制修改密碼密碼處理鎖開是否圖2.1 單片機控制密碼鎖的原理圖2.3 方案結(jié)構(gòu)框圖基于單片機控制的數(shù)字密碼鎖結(jié)總構(gòu)框圖如圖2.2所示,框圖由電源輸入,晶振電路,單片機控制系統(tǒng),鍵盤電路,顯示電路,報警提示電路構(gòu)成。電源為單片機控制器和其他芯片提供工作電源,此次設(shè)計的時候引用直流電源,但在實際應用到生活中去的時候需要通過交流電源轉(zhuǎn)變?yōu)橹绷麟娫矗ń祲?、整流、濾波等過程),并且需要加個備用電源,防止停電或者其他故障而造成無法供電的時候的備用電源。單片機控制系統(tǒng)包括晶振電路和復位電路。 單片機電源輸入鍵盤電路報警指示開鎖電路晶振電路顯示電路圖
16、2.2 基于單片機控制的數(shù)字密碼鎖總結(jié)構(gòu)框圖3 硬件電路的設(shè)計3.1 單片機與單片機最小系統(tǒng)單片機選用常用的Atmel公司的51系列單片機AT89C52。AT89C52是Atmel公司生產(chǎn)的低電壓、高性能CMOS8位單片機,AT89C52采用24MHZ或更高頻率晶振,以獲得較高的刷新頻率,時期顯示更穩(wěn)定,單片機AT89C52引腳如圖3.1所示。圖3.1 單片機AT89C52引腳P0口是雙向8位三態(tài)I/O口,此口為地址總線(低8位)與數(shù)據(jù)總線分時復用口,可驅(qū)動8個LS型TTL負載;P1口是8位準雙向I/O口,可驅(qū)動4個LS型TTL負載;P2口是8位準雙向I/O口,與地址總線(高8位)復用,可驅(qū)動
17、4個LS型TTL負載;P3口是8位準雙向I/O口,雙功能復用口,可驅(qū)動4個LS型TTL負載,并且P3口具有特殊功能。P1口:P1口是一個部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入“1”后,電位被部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于部上拉的緣故。P1口有8路10位高速A/D轉(zhuǎn)換器,速度可達到250KHz(25萬次/秒)。8路電壓輸入型A/D,可做溫度檢測、電池電壓檢測、按鍵掃描、頻譜檢測等。上電復位后P1口為弱上拉型IO口,用戶可以通過軟件設(shè)置將8路中的任何一路設(shè)置為A/D轉(zhuǎn)換,不須作為A/D使用的口可繼續(xù)作為IO口
18、使用。 在FLASH編程和校驗時,P1口作為第八位地址接收;P2口:P2口為一個部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫“1”時,其管腳電位被部上拉電阻拉高,且作為輸入。作為輸入時,P2口的管腳電位被外部拉低,將輸出電流,這是由于部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用部上拉的優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特殊功能寄存器的容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號;P3口:P3口管腳是8個帶部上拉電阻的雙向I/O口,可
19、接收輸出4個TTL門電流。當P3口寫入“1”后,它們被部上拉為高電平,并用作輸入。作為輸入時,由于外部下拉為低電平,P3口將輸出電流(ILL),也是由于上拉的緣故。P3口也可作為AT89C51的一些特殊功能口: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ù)存儲器讀選通)同時P3口同時為閃爍編程和編程校驗接收一些控制信號;RST:復位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周期的
20、高平時間;ALE / PROG :當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的低位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令時ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效;PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取址期間,每個機器周期PSEN兩
21、次有效。但在訪問部部數(shù)據(jù)存儲器時,這兩次有效的PSEN信號將不出現(xiàn);EA/VPP:當EA保持低電平時,訪問外部ROM;注意加密方式1時,EA將部鎖定為RESET;當EA端保持高電平時,訪問部ROM。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP);XTAL1:反向振蕩放大器的輸入與部時鐘工作電路的輸入;XTAL2:來自反向振蕩器的輸出;EA/VPP(31引腳):“EA”為英文“External Access”的縮寫,表示存取外部程序代碼之意,低電平動作,也就是說當此引腳接低電平后,系統(tǒng)會取用外部的程序代碼(存于外部EPROM中)來執(zhí)行程序。因此在8031與8032中,EA引腳必須
22、接低電平,因為其部無程序存儲器空間。單片機最小系統(tǒng)如圖3.2所示,其中由復位電路和晶振震蕩電路組成。復位電路:單片機上電時,當振蕩器正在運行時,只要持續(xù)給出RST引腳兩個機器周期的高電平,便可完成系統(tǒng)復位。外部復位電路是為部復位電路提供兩個機器周期以上的高電平而設(shè)計的。其中復位電路通常有上電自動復位和按鈕復位兩種模式,本次采用的是按鍵手動復位并是電平復位方式,其中電平復位時通過RST端經(jīng)電阻與電源VCC接通而實現(xiàn)的,電源VCC取+5V,復位電路的電阻取的10k,電容取的10uF。晶振振蕩電路:XTAL1腳和XTAL2腳分別構(gòu)成片振蕩器的反相放大器的輸入端和輸出端,外接石英晶體或瓷振蕩器以與補償
23、電容C1、C2構(gòu)成并聯(lián)振蕩電路。當外界石英晶體時,電容C1、C2選30pF±10pF;當外接瓷振蕩器時,電容C1、C2選47pF±10pF.AT89C52系統(tǒng)中晶振可在024MHz選擇。外接電容C1、C2的大小會影響振蕩器的高低、振蕩頻率的穩(wěn)定度、起振時間與溫度穩(wěn)定性。在設(shè)計電路板時晶振和電容應靠近單片機芯片,以便減少寄生電容,保證振蕩器穩(wěn)定可靠的工作,并且在系統(tǒng)設(shè)計中,為保證串行通信波特率的誤差,選擇11.0592MHz的標準石英晶振,電容應C1、C2應選擇20pF。此次設(shè)計采用的是12MHz的晶振。單片機最小系統(tǒng)如圖3.2所示,其中由復位電路和晶振震蕩電路組成。圖3.2
24、 單片機最小系統(tǒng)圖3.2 鍵盤電路3.2.1 鍵盤接口常用的鍵盤接口分為獨立鍵盤和行列式鍵盤兩種。獨立鍵盤就是按鍵相互獨立,每個按鍵各接一根輸入線,通過檢測輸入線的電平狀態(tài)可以很容易的判斷哪個按鍵被按下。在按鍵數(shù)目較多的時候,獨立式鍵盤電路需要較多的輸入口線且電路結(jié)構(gòu)繁雜,此種鍵盤適用于按鍵較少或操作速度較高的場合。行列式(也稱矩陣式)鍵盤用于按鍵數(shù)目較多的場合,它由行線和列線組成的按鍵電路,其按鍵位于行、列的交叉點上,如圖3.3所示,一個4×4的行、列式結(jié)構(gòu)可以構(gòu)成1個16個鍵的鍵盤,很明顯節(jié)省了很多的I/O口線。矩陣式鍵盤的掃描原理主要是分為兩個步驟:首先是確定是否有鍵閉合,然后
25、逐一掃描以步確定哪一鍵閉合。圖3.3鍵盤電路3.2.2 鍵盤的識別方式鍵盤上的鍵按行列組成矩陣,在行列的交點上都對應有一個鍵。為判定有無鍵按下(閉合鍵)以與被按鍵的位置,可使用這種方法:掃描法(常用)。掃描法就是首先是判定有沒有鍵被按下,鍵盤的行線一端經(jīng)上拉電阻接+5V電源,另一端接單片機的輸入口線。各列線的一端接單片機的輸出口線,另一端懸空。為判定有沒有鍵被按下,可先經(jīng)輸出口向所有列線輸出低電平,然后再輸入各行線狀態(tài)。若行線狀態(tài)中有低電平,則表示有鍵被按下。然后再判定被按鍵的位置。3.2.3 按鍵去抖動當掃描表明有鍵被按下之后,緊接著應進行去抖動處理。因為常用鍵盤的鍵實際上就是一個機械開關(guān)結(jié)
26、構(gòu),被按下時,由于機械接觸點的彈性與電壓突跳等原因,在觸點閉合或斷開的瞬間會出現(xiàn)電壓抖動,如圖3.4所示。抖動時間長短與鍵的機械特性有關(guān),一般為510ms。而鍵的穩(wěn)定的閉合時間和操作者按鍵動作有關(guān),大約為十分之幾到幾秒不等。鍵按下前沿抖動后沿抖動x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0圖3.4鍵閉合和斷開時的電壓抖動3.2.4 4×4行列式鍵盤電路此次設(shè)計為4×4行列式鍵盤,由16個按鍵組成的行列式鍵盤,主要作為用戶輸入數(shù)字密碼與確認、取消、修改等功能鍵,
27、此次設(shè)計按鍵掃描方法采用的是掃描法。4×4行列式鍵盤電路如圖4.4所示,把芯片AT89C52中的P1.0P1.3端口用4個10K的上拉電阻連接到4×4行列式鍵盤的行線上,把芯片AT89C52中的P1.4P1.7端口直接連接4×4行列式鍵盤的列線。(上拉電阻的作用,就是把電位拉高,比如拉到VCC。一般就是剛上電的時候,端口電壓不穩(wěn)定,為了讓端口穩(wěn)定為高,就會用到上拉電阻。)3.3 LCD1602顯示電路3.3.1 LCD1602的介紹LCD1602是一種專門用來顯示字母、數(shù)字、符號等的點陣型的液晶模塊,它由若干個5×7或者5×11等點陣字符位組成
28、,每個點陣字符都可以顯示一個字符,每位之間有一個點距的間隔,每行之間也有間隔,起到了字符間距和行間距的作用。LCD1602是指顯示的容為16×2,可以顯示兩行,每行16個字符的液晶模塊,目前市面上字符液晶絕大多數(shù)是基于HD44780液晶芯片的,控制原理是完全一樣的,因此基于HD44780寫的控制程序可以很方便地應用于市面上大部分的字符型液晶,此次設(shè)計引用LCD1602,是因為它具有微功耗、體積小、顯示容豐富、超薄輕巧,常用在袖珍式儀表和低功耗應用系統(tǒng)中。LCD1602的引腳如圖3-6所示,LCD1602有16個引腳。圖3.5 LCD1602的引腳LCD1602的引腳介紹:第1引腳為:
29、VSS為電源地 第2腳:VDD接5V電源正極 第3腳:V0為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高(對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度)。第4腳:RS為寄存器選擇,高電平1時選擇數(shù)據(jù)寄存器、低電平0時選擇指令寄存器。第5腳:RW為讀寫信號線,高電平時進行讀操作,低電平時進行寫操作。第6腳:E(或EN)端為使能(enable)端。第714腳:D0D7為8位雙向數(shù)據(jù)端。第1516腳:空腳或背光電源腳。15腳背光正極,16腳背光負極。LCD1602的基本操作時序為:讀狀態(tài):RS=L,RW=H,E=H 輸出:D0D7=狀態(tài)字寫指令:RS=
30、L,RW= L,D0D7=指令碼,E=高脈沖 輸出:無讀數(shù)據(jù):RS= H,RW=H,E=H 輸出:D0D7=數(shù)據(jù)寫數(shù)據(jù):RS= H,RW= L,D0D7=數(shù)據(jù),E=高脈沖 輸出:無LCD1602的顯示模式設(shè)置如表3.1所示:表3.1顯示模式設(shè)置指令碼功能00111000設(shè)置1602*2顯示,5*7點陣,8位數(shù)據(jù)口。LCD1602的顯示開/關(guān)機光標設(shè)置如表3.2所示:表3.2 開關(guān)機光標設(shè)置指令碼功能00001DCBD=1 開顯示,D=0 關(guān)顯示;C=1 顯示光標,C=0 不顯示光標;B=1 光標閃爍,B=0 光標不顯示。000001NSN=1 當讀或?qū)懸粋€字符后地址指針加一,且光標加一;N=0
31、當讀或?qū)懸粋€字符后地址指針減一,且光標減一;S=1 當寫一個字符,整屏顯示左移(N=1)。3.3.2 LCD1602顯示的外圍電路LCD1602顯示電路由單片機C52的P2.5、P2.6、P2.7分別于LCD的第4、5、6腳(RS、RW、E)相連,將單片機C52的P0.0P0.7口通過10K的上拉電阻分別與LCD的第714腳(D0D7)相連來組成數(shù)字密碼鎖的顯示電路。LCD1602顯示電路如圖4.2所示。圖3.6 LCD1602顯示電路3.4 報警提示電路LED指示燈用來提示模擬鎖的開閉,此次設(shè)計采用了紅、綠兩個LED指示燈,紅燈表示輸入密碼正確告警(與數(shù)字密碼鎖開鎖),綠燈表示輸入密碼錯誤,
32、鎖未打開。報警提示電路如圖3.7所示,P3.0、P3.1作普通I/O口使用,P3.0控制綠色發(fā)光二極管,指示密碼輸入正確狀態(tài);P3.1控制紅色發(fā)光二極管,指示密碼輸入錯誤狀態(tài)。而在實際應用中應該接密碼鎖的機械部分,這些引腳將會接繼電器線圈,只要在線圈兩端加上一定的電壓,線圈中就會流過一定的電流,從而產(chǎn)生電磁效應,銜鐵就會在電磁力吸引的作用下克服返回彈簧的拉力吸向鐵芯,從而帶動銜鐵的動觸點與靜觸點(常開觸點)吸合用來啟動密碼鎖的開或關(guān)的狀態(tài),此次設(shè)計用紅綠指示燈來代替了機械部分,設(shè)計簡化了。其電路圖如圖3.7所示。圖3.7 報警電路3.5 電源輸入與電源指示電路基于單片機控制的數(shù)字密碼鎖的工作需
33、要+5V的電壓作為輸入電壓,家用電一般都是采用220V、50Hz的交流電,因此需要將交流電轉(zhuǎn)換成直流電,先通過一個整流電路,使交流電壓變成直流電壓。為了保證其輸出的電壓是+5V,在后面接一個穩(wěn)壓電路,由一個7805穩(wěn)壓器,其中電容C1起濾波作用,電容C3是抑制高平信號。電容C2,C4直接接地,起到抗干擾的作用,能使電壓穩(wěn)定在+5V。有了電源模塊避免了因沒有直流電源而無法使用的問題,使這個儀表能夠在更多的環(huán)境中使用。電源部分如圖3.8所示。圖3.8 電源電路圖此次設(shè)計的數(shù)字密碼鎖就引用了電源指示模塊,雖然這個模塊很簡單,但確實也是電路中不可少的一部分,當電源通電后,黃色發(fā)光二極管就亮表示電路有電
34、源輸入,讓用戶更能方便的清楚密碼鎖是否通電,如沒有電通入,數(shù)字密碼鎖無法工作,需要與時更換電源,以保證數(shù)字密碼鎖的正常工作。4 軟件設(shè)計4.1 軟件設(shè)計思路對于基于單片機的數(shù)字密碼鎖的設(shè)計,我們需要解決三個問題:鍵盤的輸入、液晶顯示、單片機電路以與密碼比較與處理的有關(guān)程序設(shè)計。鍵盤的輸入通過行列鍵盤掃描程序獲取所按鍵的行、列號,而鍵值編碼規(guī)則如下:將字節(jié)的高四位(D7、D6、D5、D4)表示列號(4、3、2、1),低四位(D3、D2、D1、D0)表示行號(4、3、2、1),比如11H(00010001)表示第1行第1列,21H(00100001)表示第1行第2列,以此類推,可得其他鍵值的編碼。
35、LCD1602顯示,根據(jù)獲取的鍵值編碼,選擇相應的功能,驅(qū)動LCD1602顯示。在LCD接受指令前,微處理器必須先確認其部處于非忙碌狀態(tài),則LCD的(D7到D0)的D7位為0,方可接受新的指令。如果在發(fā)送一個指令時前沒有檢查D7標志,那么在前一個指令和這個指令中間必須延長一段較長的時間,即等待前一個指令確實執(zhí)行完成。液晶顯示的操作主要由初始化程序、寫命令和寫數(shù)據(jù)程序等組成。而單片機電路以與密碼比較處理程序則為主程序了,主要是處理鍵盤輸入程序和調(diào)用顯示程序。4.2 軟件設(shè)計的流程圖結(jié)合硬件結(jié)構(gòu),可以將鍵盤輸入的識別用來作為系統(tǒng)的監(jiān)控程序,用顯示程序來延時,不斷查詢鍵盤。如果有鍵按下,就得到相應的
36、鍵值。結(jié)合當前系統(tǒng)所處的狀態(tài),調(diào)用不同的操作模塊,實現(xiàn)相應的功能。而執(zhí)行模塊主要有數(shù)字輸入模塊、顯示模塊與報警提示模塊。鍵盤部分應實現(xiàn)如下功能:首先,對鍵盤進行掃描,判斷是否有鍵被按下。如果沒有,則轉(zhuǎn)回鍵盤掃描,看下次是否有鍵被按下;如果有鍵被按下,則先對鍵進行去抖動,然后算出是哪個鍵被按下,再延時等待鍵釋放。因為數(shù)字鍵和功能鍵都對應不同的處理子程序,得到閉合鍵的鍵碼后,就可以根據(jù)鍵碼,轉(zhuǎn)相應的鍵處理子程序,進行字符、數(shù)據(jù)的輸入或命令的處理。這樣就可以實現(xiàn)該鍵所設(shè)定的功能。本次設(shè)計的鍵盤處理程序流程圖,如圖4.1所示。顯示流程圖如圖4.2所示,顯示部分是分屏顯示數(shù)據(jù)的,因此顯示子程序為關(guān)閉狀態(tài)顯示子程序、密碼輸入與密碼修改狀態(tài)顯示子程序、密碼輸入后錯誤提示程序。密碼在規(guī)定的時間輸入的錯誤次數(shù)超過3次的鎖定狀態(tài)顯示子程序。LCD1602顯示程序包括初始化子程序、寫數(shù)據(jù)子程序、寫命令子程序、清屏子程序、光標定位子程序。報警提示部分主要是對輸入密碼的錯誤(鎖未開)和正確(鎖開)以與修改密碼的提示,這個和顯示程序保持一
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 下消化道出血護理
- 配電室消防知識培訓課件
- 母嬰行業(yè)業(yè)務(wù)員年總結(jié)
- 2025年江蘇省南京市重點中學七校聯(lián)考中考一模英語試題含答案
- 南京中醫(yī)藥大學翰林學院《工程概論》2023-2024學年第二學期期末試卷
- 太原學院《視聽節(jié)目編導與制作》2023-2024學年第一學期期末試卷
- 重慶文理學院《汽車電器設(shè)備》2023-2024學年第二學期期末試卷
- 河北省安平中學2025屆高三下學期期末教學質(zhì)量診斷(一模)英語試題含解析
- 福建江夏學院《設(shè)計效果圖手繪技法》2023-2024學年第二學期期末試卷
- 云南交通運輸職業(yè)學院《高等數(shù)值分析》2023-2024學年第一學期期末試卷
- 北京市豐臺區(qū)2025屆高三下學期綜合練習(一模)思想政治試卷(含答案)
- 2025年第三屆天揚杯建筑業(yè)財稅知識競賽題庫附答案(101-200題)
- 2024年河南鄭州航空港區(qū)國際教育集團招聘筆試真題
- 2020年湖北省生物競賽初賽試卷試題含答案
- 第四單元第九課第一框題 日益完善的法律體系 同步練習(無答案)2024-2025學年七年級下冊道德與法治
- 2025年上海市各區(qū)中考語文一模卷【綜合運用題】匯集練附答案解析
- 江西省鷹潭市2023-2024學年六年級下學期數(shù)學期中試卷(含答案)
- 2024年全國職業(yè)院校技能大賽中職(食品藥品檢驗賽項)考試題庫(含答案)
- 化糞池清掏協(xié)議書范本
- 2024-2025學年九年級化學人教版教科書解讀
- 季度物業(yè)工作總結(jié)
評論
0/150
提交評論