【基于單片機(jī)的電子密碼鎖設(shè)計(論文)10000字】_第1頁
【基于單片機(jī)的電子密碼鎖設(shè)計(論文)10000字】_第2頁
【基于單片機(jī)的電子密碼鎖設(shè)計(論文)10000字】_第3頁
【基于單片機(jī)的電子密碼鎖設(shè)計(論文)10000字】_第4頁
【基于單片機(jī)的電子密碼鎖設(shè)計(論文)10000字】_第5頁
已閱讀5頁,還剩20頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

引言當(dāng)今社會電子技術(shù)的發(fā)展越來越快,生活中開始出現(xiàn)了很多智能化的產(chǎn)品,智能化的產(chǎn)品方便了我么的生活。密碼鎖是我們生活普遍使用的設(shè)備,而且在很多的場合都使用電子密碼鎖的原理,如銀行的保險箱、超時的儲物柜、小區(qū)的門禁系統(tǒng)都采用的是電子密碼鎖的原理設(shè)計而成的。因此了解電子密碼所的設(shè)計原理對我們開發(fā)相關(guān)的產(chǎn)品具有重要的幫助意義。傳統(tǒng)的密碼鎖主要是機(jī)械形式的,機(jī)械形式的密碼鎖例如我們經(jīng)常使用的拉桿箱,拉桿箱上會有手動撥動密碼的鎖。這種方式的密碼鎖開鎖或者關(guān)鎖的時候需要人工手動的撥動密碼,在使用的時候容易出現(xiàn)錯誤。電密碼鎖是目前比較流行的密碼鎖。電子密碼鎖的開鎖方式有很多種如輸入密碼、指紋開鎖、人臉識別開鎖、虹膜開鎖等多種方式。電子密碼鎖的產(chǎn)生可以說給我們提供了很多的便利。電子密碼鎖在今后的一段時間內(nèi)將會在我們的生活中普遍的使用。根據(jù)任務(wù)書的要求,決定采用電子技術(shù)、單片機(jī)控制技術(shù)、液晶顯示技術(shù)相結(jié)合實現(xiàn)了基于單片機(jī)的電子密碼鎖的功能,這款密碼鎖可以實現(xiàn)輸入密碼開鎖的功能,連續(xù)3次輸入密碼錯誤會報警,而且具有LCD1602液晶顯示密碼鎖的狀態(tài)功能,和修改密碼的功能。密碼鎖可以使用在家里的安全門上。在設(shè)計中主要的研究內(nèi)容如下:(1)閱讀國內(nèi)外的文獻(xiàn),總結(jié)和課題相關(guān)的理論知識,將理論知識和設(shè)計結(jié)合一塊,根據(jù)系統(tǒng)要求,設(shè)計系統(tǒng)的整體的設(shè)計方案,明確研究的功能,在方案確定后對方案進(jìn)行評估和驗證;(2)選擇可以滿足設(shè)計要求的硬件芯片,設(shè)計CPU的電路圖、傳感器檢測電路圖、控制報警電路圖等,并對電路圖紙進(jìn)行確定(3)使用C語言誰密碼鎖的控制程序,在keil軟件中調(diào)試程序的功能;(4)在proteus仿真軟件中設(shè)計仿真電路,進(jìn)行系統(tǒng)功能的驗證;(5)總結(jié)設(shè)計中的資料,撰寫畢業(yè)論文。課題的研究方法是指,從拿到課題到課題設(shè)計完成這個過程中都采用的方法,本設(shè)計中將設(shè)計的方法分成如下部分:要明確課題實現(xiàn)的功能,確定系統(tǒng)的理論依據(jù)和理論研究方法(2)設(shè)計系統(tǒng)的整體的方案框圖,確保設(shè)計方案的正確性。(3)結(jié)合方案框圖,設(shè)計各個模塊的電路原理圖,并編寫C語言程序。(4)對系統(tǒng)進(jìn)行功能驗證和測試,驗證系統(tǒng)實現(xiàn)的功能,根據(jù)設(shè)計資料撰寫設(shè)計論文。完成了相關(guān)的理論和實踐設(shè)計之后,我們會總結(jié)設(shè)計中的資料進(jìn)行畢業(yè)論文的撰寫,在論文撰寫之前我們也要對論文結(jié)構(gòu)進(jìn)行整體的規(guī)劃,本次論文寫作的過程中按照如下的結(jié)構(gòu)進(jìn)行安排:第一部分,查閱相關(guān)的文獻(xiàn)資料,進(jìn)行系統(tǒng)的整體的方案分析、對比和方案的設(shè)計,確定系統(tǒng)要實現(xiàn)的功能;第二部分,根據(jù)系統(tǒng)的功能,設(shè)計系統(tǒng)的整體的方案的框圖,根據(jù)框圖進(jìn)行系統(tǒng)的功能分析、器件選擇等;第三部分,硬件電路設(shè)計,使用電路圖繪制軟件protel99se設(shè)計電路圖紙,并對圖紙的功能進(jìn)行分析;第四部分,軟件程序設(shè)計,結(jié)合功能設(shè)計程序流程圖,并結(jié)合程序流程圖采用C語言進(jìn)行程序的編寫和調(diào)試;第五部分,進(jìn)行硬件電路和軟件程序的調(diào)試,通過proteus仿真軟件對系統(tǒng)的功能進(jìn)行驗證分析;結(jié)論部分,通過結(jié)論中的內(nèi)容對整個論文的設(shè)計過程進(jìn)行了說明,說明了設(shè)計實現(xiàn)的功能,以及在設(shè)計中遇到的問題和困難等。第1章密碼鎖整體方案設(shè)計1.1密碼鎖主要功能基于單片機(jī)的電子密碼鎖,實現(xiàn)了通過輸入密碼開鎖的功能。通過對密碼鎖的設(shè)計過程,熟悉了電子密碼鎖的功能原理。最終實現(xiàn)了密碼鎖的功能如下:(1)電子密碼鎖通過手動輸入密碼,通過4x4的矩陣鍵盤實現(xiàn)密碼的輸入,密碼的位數(shù)為6位,如果輸入的密碼正確則會開啟密碼鎖,輸入密碼錯誤則不會開啟密碼鎖;(2)可以對密碼鎖的開鎖密碼進(jìn)行重置,并且設(shè)置密碼信息會自動的保存到存儲芯片中;(3)在密碼鎖的使用過程中會有LCD1602液晶顯示功能,可以顯示當(dāng)前密碼鎖的狀態(tài);(4)電子密碼鎖可以通過管理員密碼進(jìn)行密碼的重置,任意修改密碼;(5)當(dāng)輸入的密碼錯誤次數(shù)超過3次的時候,密碼鎖會通過蜂鳴器進(jìn)行報警。1.2總體概述本次根據(jù)設(shè)計需求,經(jīng)過文獻(xiàn)分析和查閱,總結(jié)了密碼鎖相關(guān)的設(shè)計原理,如下圖1-1是本次設(shè)計的密碼鎖的整體方案框圖。系統(tǒng)的方案框圖展示了系統(tǒng)的硬件組成,通過方案框圖可將硬件進(jìn)行模塊化的設(shè)計,這樣在設(shè)計的時候也會更加的清晰。圖1-1系統(tǒng)的整體框圖如上圖2-1所示,是整個密碼鎖的硬件方案框圖,在硬件框圖中可以看到電子密碼鎖的硬件組成,各個硬件模塊的組成和模塊硬件電路功能:電子密碼鎖的各個模塊電路功能介紹如下:單片機(jī):電子密碼鎖在設(shè)計的時候需要選擇個核心控制器,用于存儲相關(guān)的控制程序,系統(tǒng)的所有的控制功能都是通過單片機(jī)處理器實現(xiàn)的,處理器就相當(dāng)于系統(tǒng)的大腦,起到協(xié)調(diào)控制的功能;STC89C52單片機(jī)就是一款核心控制器,可以在單片機(jī)中編寫控制程序?qū)崿F(xiàn)密碼的統(tǒng)計和比較以及開鎖控制功能;(2)晶振電路:由電容和晶振器件組成,輸出工作脈沖信號給單片機(jī)的晶振輸入引腳,保證單片機(jī)進(jìn)行工作;復(fù)位電路:是單片機(jī)工作不可缺少的電路之一,復(fù)位電路采用電阻、電容和復(fù)位按鍵設(shè)計而成。可以時輸出復(fù)位信號給單片機(jī),單片機(jī)收到復(fù)位信號后會重新的初始化程序,這樣可以防止處理器的程序進(jìn)入死循環(huán);電源模塊:主要通過電源芯片設(shè)計而成,為整個電子密碼鎖的電路提供電能;(5)4X4鍵盤:是整個電子密碼鎖的輸入裝置,用戶可以通過鍵盤輸出密碼信息等;(6)液晶模塊:LCD1602液晶是一種高亮度的顯示器件,在本次系統(tǒng)中用來顯示系統(tǒng)的密碼信息和密碼鎖的狀態(tài)信息;(7)繼電器模塊:通過繼電器設(shè)計密碼鎖的開鎖驅(qū)動電路,通過繼電器的接口實現(xiàn)開鎖和關(guān)鎖的控制功能;(8)報警模塊:報警模塊的主要作用當(dāng)系統(tǒng)需要報警的時候會進(jìn)行報警;(9)存儲模塊:主要功能是存儲相關(guān)的密碼信息,并且具有掉電保存功能;1.3單元模塊方案選擇1.3.1單片機(jī)方案選擇電子密碼鎖中需要又一個期間可以進(jìn)行邏輯程序的運行和控制,因此需要選擇一款可以進(jìn)行可編程邏輯的主控芯片,下面從兩個方案分別介紹。方案一:STC89C52RC單片機(jī)這是一款國內(nèi)的某個廠家生產(chǎn)的單片機(jī),基于51內(nèi)核而開發(fā)設(shè)計,具有非常高的性價比,這款單片機(jī)的結(jié)構(gòu)非常的簡單,在編寫程序的時候支持匯編語言和C語言,因此受到很多開發(fā)者的歡迎[6]。STC89C52RC單片機(jī)FLSAH存儲器的大小為8K的空間,具有P0、P1、P2和P3四個端口,每個端口包括8位。STC89C52RC集成了豐富的功能,方便開發(fā)者使用,包括定時器、計數(shù)器、USART串口等多種功能。設(shè)計者在使用的時候可以任意配置,而且這款單片機(jī)的P3端口具有雙重的功能,第一個功能是普通的I/O端口的功能,第二個功能是中斷、串口的功能使用。STC89C52RC的工作電壓為3.3V-5.5V,封裝有貼片封裝和雙列直插封裝。最高可支持35MHz的晶振。方案二:采用MSP430系列單片機(jī)MSP430單片機(jī)是美國的TI公司研發(fā)和生產(chǎn)的單片機(jī),MSP43單片機(jī)是一款低功耗的單片機(jī),采用精簡指令集進(jìn)行編程。而且MSP430單片機(jī)根據(jù)不同的型號可以劃分出多種的功能特點,MSP430內(nèi)部集成了A/D、D/A、串口USART、高速SIP總線接口、CAN總線接口等??梢哉fMSP430單片機(jī)的功能是非常強(qiáng)大的,廣泛的應(yīng)用于工業(yè)產(chǎn)品和民用產(chǎn)品的開發(fā)中。MSP430工作電壓為3.3V-5V之間,LQFP貼片封裝,對于初學(xué)者來說芯片的焊接和調(diào)試可能會遇到麻煩[7]。而且價格上一般在20元左右。通過對方案一和方案二的對比分析,分析了兩款單片機(jī)的優(yōu)缺點,選擇了STC89C52單片機(jī)進(jìn)行電子密碼鎖的設(shè)計。如下圖1-2所示是單片機(jī)的實物圖。圖1-2單片機(jī)實物圖1.3.2按鍵方案選擇按鍵設(shè)備是給用戶提供一個可靠的人機(jī)輸入裝置,一般的人機(jī)輸入裝置都使用按鍵實現(xiàn),按鍵的形式分為兩種,獨立按鍵和矩陣按鍵,下面對這兩種按鍵進(jìn)行詳細(xì)的介紹:方案一:獨立形式按鍵獨立按鍵是一種非常簡單的按鍵,也是使用的比較多的按鍵,獨立按鍵的結(jié)構(gòu)很簡單,只有兩個引腳,當(dāng)按鍵按下后兩個引腳會導(dǎo)通,這樣如果按鍵和單片機(jī)的I/O引腳連接,就可以通過檢測I/O端口的狀態(tài)來判斷按鍵是否按下,獨立按鍵使用起來也非常的簡單而且方便,編寫按鍵采集程序簡單。方案二:矩陣按鍵矩陣按鍵也是一種使用的非常多的按鍵,矩陣按鍵是由獨立按鍵組合形成的,生活中也比較的常見,例如我們的手機(jī)鍵盤、ATM取款機(jī)的輸入按鍵等都是矩陣按鍵的很好的應(yīng)用。傳統(tǒng)的矩陣按鍵可以分為3*3、3*4、4*4、5*5等多種形式。矩陣按鍵分為行控制線和列控制線,一個矩陣按鍵可以組合成多種狀態(tài),矩陣按鍵非常適合系統(tǒng)需要的按鍵比較多,而且I/O資源受到限制的情況。本次分析了電子密碼鎖的功能,密碼鎖需要使用的按鍵數(shù)量比較多,因此采用了方案二矩陣按鍵的方案進(jìn)行設(shè)計。矩陣按鍵的實物圖如下圖1-3所示。圖1-3按鍵實物圖1.3.3顯示方案選擇顯示器是一種提供給用于的一個非常好的人機(jī)界面,生活中常見的顯示裝置有LED數(shù)碼管和LCD液晶兩種方式。方案一:數(shù)碼管顯示LED數(shù)碼管是一種高亮度的顯示器件,在生活中的很多的產(chǎn)品中都有使用。LED數(shù)碼管的組成原理是通過多個LED發(fā)光二極管組合而成,LED數(shù)碼管是分段顯示的,每個LED發(fā)光二極管都可以是數(shù)碼管的一個段位。最終通過各個段位的組合而實現(xiàn)0-F數(shù)字和字符的顯示功能。用戶可以控制不同位置的LED發(fā)光二極管亮滅實現(xiàn)需要顯示的內(nèi)容[10]。方案二:LCD1602液晶顯示LCD1602是生活中使用的非常多的一款液晶,這款液晶的價格比較的便宜,能顯示數(shù)字和英文字母信息,不能顯示漢字。液晶可以顯示32個字符,這32個字符分成兩行顯示,每行顯示16個字符。液晶使用起來非常的方便,液晶和單片機(jī)之間可以通過并口或者串行SIP接口通信。這樣就會節(jié)省很多的I/O資源。結(jié)合本次的設(shè)計要求,對方案一和方案二進(jìn)行了對比分析,因為密碼鎖顯示的內(nèi)容比較多,因此選擇了LCD1602這款液晶作為系統(tǒng)的顯示器件,LCD1620液晶的實物圖如下圖1-4所示。圖1-4LCD1602液晶實物圖1.3.4報警模塊選擇本次設(shè)計的電子電子密碼鎖蜂鳴器報警的功能,當(dāng)輸入面錯誤過多的時候會進(jìn)行蜂鳴器報警。蜂鳴器是經(jīng)常使用的報警器件,蜂鳴器主要的工作原理非常的簡單,蜂鳴器有正極和負(fù)極兩個引腳,只要給蜂鳴器的連個兩個引腳通電,蜂鳴器就能都發(fā)出聲音。當(dāng)然如果想要是蜂鳴器發(fā)出不同頻率的聲音也可以通過響應(yīng)的控制電路實現(xiàn)。蜂鳴器在很多的設(shè)計人員中有也都非常受歡迎。如下圖1-5所示是蜂鳴器的實物圖。圖1-5蜂鳴器引腳圖1.4本章小結(jié)在這一章中,首先對電子密碼鎖系統(tǒng)要實現(xiàn)的功能進(jìn)行了詳細(xì)的介紹,根據(jù)要實現(xiàn)的功能,查閱相關(guān)的資料確定了系統(tǒng)的整體方案框圖,介紹了框圖的組成和,框圖中的各個模塊的功能,之后介紹了設(shè)計中選擇的核心模塊。第2章密碼鎖硬件電路設(shè)計2.1STC89C52最小系統(tǒng)設(shè)計單片機(jī)是電子密碼鎖控制系統(tǒng)的核心控制器件,設(shè)計中選擇了STC89C52單片機(jī),這是一款可以完美的兼容傳統(tǒng)的51單片機(jī),無論從功能上還是從結(jié)構(gòu)上都可以進(jìn)行完整的替換,而且這款單片機(jī)的性價比非常的高,單片機(jī)FLASH的大小為8K,可以存放程序。單片機(jī)RAM大小為512字節(jié)??捎玫腎/O資源為32個,可以把這32個I/O端口分成P0、P1、P2和P3四組。STC89C52RC單片機(jī)是一款8位的單片機(jī)。特別要注意的是STC89C52RC單片機(jī)的P3端口是多功能端口,可以作為普通的I/O端口,可以做多為第二功能端口使用。STC89C52RC單片機(jī)的內(nèi)核和傳統(tǒng)的51單片機(jī)的一樣,因此在功能上和傳統(tǒng)的51單片機(jī)一樣,而且程序和傳統(tǒng)的51單片機(jī)都兼容,但是這款單片機(jī)的性能要不傳統(tǒng)的51單片機(jī)強(qiáng)很多,執(zhí)行的速度是傳統(tǒng)51單片機(jī)的8-12倍[10]。STC89C52RC單片機(jī)在外形具有貼片封裝和雙列直插封裝,對我們初學(xué)者來說可以采用直插形式的封裝,封裝為DIP-40直插形式,單片機(jī)的工作電壓為5V,最大的晶振可以達(dá)到35MHz,使用串口的方式進(jìn)行程序的下載。單片機(jī)功能簡單,學(xué)起來非常的容易。單片機(jī)的引腳圖如下圖2-1所示。圖2-1單片機(jī)引腳圖通過電容、晶振器件可以搭建出晶振電路,晶振電路能夠不斷的輸出晶振信號給單片機(jī),晶振信號可以驅(qū)動單片機(jī)工作、執(zhí)行程序指令,晶振信號通過STC89C52RC芯片的第18引腳和第19引腳輸入。如下圖2-2所示是本次設(shè)計的晶振電路。圖2-2STC89C52單片機(jī)時鐘電路復(fù)位電路也是STC89C52RC處理器工作不可缺少的電路,單片機(jī)在程序執(zhí)行進(jìn)入死循環(huán)或者出現(xiàn)BUG的時候回卡死,此時如果內(nèi)有復(fù)位電路單片機(jī)就必須要斷電后才能在此執(zhí)行,如下圖2-3是本次設(shè)計的復(fù)位電路,當(dāng)復(fù)位按鍵按下的時候單片機(jī)進(jìn)入復(fù)位狀態(tài)。圖2-3STC89C52單片機(jī)復(fù)位電路單獨的單片機(jī)芯片不能工作,必須要根據(jù)單片機(jī)的設(shè)計手冊設(shè)計相關(guān)的配套電路后,STC89C52單片機(jī)才可以正常的工作,此時單片機(jī)可以運行下載的程序,晶振電路、復(fù)位電路是單片機(jī)最小系統(tǒng)的重要組成電路。STC89C52單片機(jī)的最小系統(tǒng)電路原理圖如下圖2-4所示。圖2-4STC89C52單片機(jī)最小系統(tǒng)2.2門鎖密碼輸入電路設(shè)計本次設(shè)計的電子密碼鎖,需要通過矩陣鍵盤輸入密碼,本次設(shè)計使用了4*4矩陣鍵盤,可以實現(xiàn)對門鎖密碼的輸入、門鎖密碼的修改。電路圖如下圖2-5所示。矩陣按鍵的行控制線和單片機(jī)的P14-P17連接,矩陣按鍵的列控制線和單片機(jī)的P10-P13連接。通過行掃描和列掃描實現(xiàn)按鍵的是否功能。圖2-5按鍵電路2.3LCD液晶顯示電路設(shè)計本次設(shè)計中的電子密碼鎖具有一個液晶顯示裝置,可以顯示密碼鎖的狀態(tài)信息。設(shè)計中選擇了LCD1602這款液晶實現(xiàn)。本次設(shè)計的電子密碼鎖的液晶顯示電路如下圖2-6所示。圖2-6LCD1602液晶顯示電路2.4開鎖驅(qū)動電路設(shè)計電子密碼鎖在開鎖和關(guān)鎖的控制電路主要是通過單片機(jī)控制繼電器來實現(xiàn),通過繼電器實現(xiàn)了密碼鎖開鎖接口。繼電器在控制上需要通過三極管進(jìn)行驅(qū)動,如下圖2-7所示是電子密碼鎖的繼電器開鎖驅(qū)動電路,單片機(jī)的P2.2引腳和三極管Q3的基極連接,控制三極管導(dǎo)通或者關(guān)閉,當(dāng)三極管導(dǎo)通的時候繼電器的線圈會通電,此時繼電器的觸點會閉合,實現(xiàn)開鎖控制。圖2-7密碼鎖驅(qū)動電路2.5報警電路設(shè)計報警模塊是本次設(shè)計的報警提示裝置,當(dāng)密碼鎖輸入密碼鎖無后,能夠通過蜂鳴器進(jìn)行報警。這里采用的是蜂鳴器報警。報警電路通過單片機(jī)控制價三極管驅(qū)動蜂鳴器實現(xiàn),單片機(jī)的P3.3引腳驅(qū)動三極管Q2導(dǎo)通或者關(guān)閉,實現(xiàn)蜂鳴器的發(fā)聲控制。如下圖2-8所示。圖2-8報警電路連接圖2.6密碼存儲電路設(shè)計本次的電子密碼鎖具有掉電存儲功能,設(shè)計中采用AT24C02存儲芯片實現(xiàn),這樣當(dāng)系統(tǒng)掉電后密碼信息也能正常的保存到AT24C02芯片中。本次設(shè)計中使用了AT24C02存儲芯片實現(xiàn),AT24C02是一款具有I2C接口的儲存芯片,AT24C02存儲電路的電路圖如下圖2-9所示。圖2-9掉電存儲電路2.7電源電路設(shè)計電源主要是給電子密碼鎖供電,如下圖2-10是整個系統(tǒng)的供電電路。系統(tǒng)USB接口的方式供電,其中SW1是電源開關(guān),LED1是供電指示燈。圖2-10電源電路2.8本章小結(jié)本章是本次設(shè)計的主要設(shè)計的章節(jié),在本章中設(shè)計了系統(tǒng)的詳細(xì)的硬件電路圖,包括介紹了各個模塊電路的作用和功能,使用protel99se繪圖軟件設(shè)計了系統(tǒng)的電路連接圖。為后面的調(diào)試部分奠定了基礎(chǔ)。第3章密碼鎖軟件設(shè)計3.1編程思路軟件部分是整個設(shè)計最為重要的設(shè)計內(nèi)容之一,軟件功能的好壞直接影響了產(chǎn)品的功能,因此在進(jìn)行軟件程序設(shè)計之前一定要明確軟件要實現(xiàn)的功能,如何實現(xiàn)這些功能程序。這樣才能設(shè)計好性能穩(wěn)定的軟件系統(tǒng),在編寫程序的時候編程人員一定要仔細(xì)認(rèn)真的按照軟件設(shè)計方案的步驟進(jìn)行:(1)在編寫程序之前一定要合理的選擇編程語言,選擇自己熟悉的編程語言,比例選擇C語言、匯編語言等,這個要根據(jù)自己的實際請款選擇。(2)選擇好編程語言后,明確具體要實現(xiàn)的功能,設(shè)計驅(qū)動函數(shù),通過軟件實現(xiàn)對硬件芯片的配置等操作。(3)結(jié)合系統(tǒng)功能,進(jìn)行主程序流程圖的設(shè)計和子程序流程圖設(shè)計,確保程序流程正確合理。(4)使用選擇的語言開始進(jìn)行分相關(guān)程序的編寫和調(diào)試,首先可以編寫最基礎(chǔ)的功能函數(shù),由基礎(chǔ)的功能函數(shù)一點一旦組成整體的主程序,并對程序進(jìn)行邏輯分析和相互調(diào)用等操作[13]。(5)對編寫完成的程序在編譯環(huán)境下進(jìn)行編譯和調(diào)試,在調(diào)試中逐漸的完善和修改程序中的錯誤和不合理的地方,最后完成整個程序的編寫和調(diào)試,生成hex文件或者bin文件,將生成的文件下載到CUP中運行。3.2主程序設(shè)計在進(jìn)行電子密碼鎖程序設(shè)計之前,一定要設(shè)計正確的程序流程圖,程序流程圖的正確與否會影響程序的設(shè)計。如下圖3-1是本次設(shè)計的密碼鎖的主程序流程圖。當(dāng)密碼鎖程序開始運行后,會進(jìn)行先關(guān)的器件初始化,初始化后會自動的判斷是否有按鍵按下,按鍵按下后說明可能有密碼輸入,提取相關(guān)的密碼信息和系統(tǒng)的密碼進(jìn)行對比,如果一致則會開啟密碼鎖,如果不一致則會進(jìn)入錯誤處理。圖3-1主程序流程圖3.3開鎖子程序設(shè)計電子密碼鎖的開鎖程序流程圖如下圖3-2所示,在設(shè)計電子密碼鎖開鎖的程序流程圖中,其實就是對輸入的密碼和本機(jī)的密碼進(jìn)行對比,當(dāng)面一致則會開啟密碼鎖,當(dāng)輸入密碼和本機(jī)密碼不同的時候會進(jìn)行錯誤計數(shù),當(dāng)錯誤次數(shù)大于3的時候會開啟報警器進(jìn)行報警。圖3-2開鎖子程序流程圖3.4修改密碼子程序這個程序跟上面章節(jié)講過的開鎖流程是有共同之處的,是要對你所輸入的密碼進(jìn)行比較判斷,我們要檢查輸入密碼是否是對的。系統(tǒng)開始會對修改按鍵是否需要按下進(jìn)行判斷,按下之后進(jìn)入了修改階段,屆時會有提示,如果輸入正確的密碼就會提示讓你輸入新設(shè)定的密碼。常規(guī)操作,輸入密碼需要進(jìn)行雙層確認(rèn),兩次輸入正確提示修改密碼成功,否則就重新回到了之前的界面。流程圖如下圖3-3所示。圖3-3修改密碼程序流程圖3.5LCD顯示子程序液晶顯示子程序設(shè)計流程圖如圖3-4所示。下圖是LCD1602液晶顯示器顯示程序的程序流程圖,在進(jìn)行液晶顯示程序編寫的時候要按照應(yīng)顯示程序進(jìn)行編寫,當(dāng)液晶送電后會通過單片機(jī)發(fā)送LCD1602初始化命令,初始化液晶顯示,之后發(fā)送寫設(shè)置命令,關(guān)閉顯示,屏幕清平,設(shè)置顯示位置,寫入地址,寫入需要顯示的字符,寫入完成后判斷字符說寫入完畢,如果寫入完畢則會進(jìn)行下一給字符的寫入操作。圖3-4LCD顯示子程序流程圖3.6本章小結(jié)本章是密碼鎖的軟件設(shè)計章節(jié),主要設(shè)計了密碼鎖軟件程序流程圖,設(shè)計了系統(tǒng)的相關(guān)程序流程圖的設(shè)計,在編寫程序的時候要嚴(yán)格的按照程序流程圖進(jìn)行,這樣可以保證程序邏輯正確。第4章系統(tǒng)的調(diào)試與仿真4.1系統(tǒng)硬件調(diào)試硬件設(shè)計指的是和設(shè)計相關(guān)的硬件電路圖的設(shè)計,因此硬件調(diào)試主要的功能就是設(shè)計的硬件電路圖進(jìn)行檢查和功能調(diào)試,同時還包括硬件電路板焊接情況的調(diào)試,在硬件調(diào)試的過程中應(yīng)用的最大的測量工具如電壓表、電流表、示波器等檢測設(shè)備。在進(jìn)行硬件調(diào)試的時候可以按照如下的方式進(jìn)行檢測:第一,將下載使用的所有的芯片的設(shè)計文檔,通過文檔和設(shè)計中的硬件電路圖進(jìn)行對比,明確每個芯片的引腳的連接是否正確,是否有電路圖連接錯誤的地方,特別要注意芯片的VCC電源和地線GND連接是否有錯誤[15]。第二,使用電烙鐵、焊錫等設(shè)備根據(jù)原理圖焊接相關(guān)的硬件電路板,在焊接的過程中一定要仔細(xì)認(rèn)真,確保不出現(xiàn)虛焊和漏焊以及焊接錯誤等情況的發(fā)生。第三,使用萬用表、示波器等檢測設(shè)備對焊接的電路板進(jìn)行檢測,通過萬用表可以檢測芯片的電壓、電流和短路等情況,使用示波器可以測量芯片的波形輸出,在每項測試都通過的情況下完成硬件調(diào)試。4.2軟件調(diào)試軟件設(shè)計指的是對設(shè)計的軟件邏輯進(jìn)行C語言程序的設(shè)計,軟件性能好的好壞會直接影響著系統(tǒng)的功能,因此軟件調(diào)試在設(shè)計中也是非常重要的一個環(huán)節(jié)。在進(jìn)行C語言軟件調(diào)試的過程中我們主要使用了keil4編程和調(diào)試軟件實現(xiàn),可以實現(xiàn)對設(shè)計的C語言軟件的語法檢測、功能檢測以及系統(tǒng)聯(lián)調(diào)等功能的調(diào)試。軟件調(diào)試的步驟如下:第一,選擇keil4編程環(huán)境,建立編程環(huán)境的工程文件,在工程文件中編寫設(shè)計中使用的C語言程序代碼;第二,在建立好的Keil4工程文件下,使用Keil4中自帶的程序編譯功能對程序的C語言文件進(jìn)行編譯,通過“Build”按鈕可以實現(xiàn)編譯,在編譯的過程中可以檢測設(shè)計的C語言的語法是否正確,是否有未定義的變量或者程序代碼。在輸出窗口中可以查看相關(guān)的錯誤信息,根據(jù)錯誤的提示信息可以對應(yīng)查找程序中的錯誤。第三,使用keil軟件的在線調(diào)試功能,記性系統(tǒng)的在線調(diào)試,在線調(diào)試的時候可以進(jìn)行程序的單步仿真調(diào)試和全速運行功能進(jìn)行調(diào)試。如下圖4-1所示是keil4調(diào)試成功的界面。在界面上的輸出窗口可以看到0錯誤和0警告。圖4-1keil編譯程序成功調(diào)試成功的C語言程序文件,需要下載到單片機(jī)中才能運行。因此我們需要選擇單片機(jī)程序下載軟件對程序進(jìn)行下載,在設(shè)計中選擇了一款一款常用的軟件STC-ISP.exe,通過使用這款軟件可以將在keil中生成的.hex文件下載到單片機(jī)中。下載的過程如下:選擇單片機(jī)型號,點擊“打開程序”按鈕加載hex文件;點擊“Download/下載”按鈕開始下載,在下載的過程中會提示給單片機(jī)上電上電后可以看到下載的進(jìn)度條開始提示下載進(jìn)度,下載成功后會提示校驗OK,下載OK,以加密等信息。如下圖4-2所示是單片機(jī)程序下載界面圖4-2單片機(jī)程序下載4.3功能仿真演示Proteus是一款非常好用的電路放著軟件,可以進(jìn)行硬件的設(shè)計和仿真、PCB圖的設(shè)計,還可以進(jìn)行硬件的仿真,硬件和程序聯(lián)合仿真等操作。對于單片機(jī)的開發(fā)者來說proteus仿真軟件非常的好用,可以說方便了單片機(jī)開發(fā)者,開發(fā)者在不需要制作電路板的情況下就能夠通過仿真軟件驗證自己的程序的功能。大大的提高了開發(fā)者的開發(fā)效率。點擊運行按鈕后就可以開始軟件和硬件的仿真聯(lián)調(diào)。通過調(diào)試不但可以測試硬件的功能而且還可以測試軟件的功能,達(dá)到共同仿真的目的。在進(jìn)行系統(tǒng)的仿真的時候可以按照如下的步驟進(jìn)行:第一步:首先在電腦上安裝proteus仿真軟件,安裝完成后在電腦的程序中可以看到仿真軟件Proteus7Professional。此時說明軟件安裝成功,可以正常使用。第二步:雙擊Proteus7Professional軟件,Proteus軟件會自動打開,在仿真軟件中選擇File”菜單下的“NewDesign…”選項,建立一個工程項目,之后再彈出的圖紙界面中設(shè)置圖紙尺寸,根據(jù)自己的實際電路圖的復(fù)雜成都選擇,本次選擇A4紙。第三步:添加所需要的選器件,添加方法非常的簡單,只需要用鼠標(biāo)點擊上圖中紅圈中的“P”按鈕,會彈出proteus軟件的元器件庫,在元器件庫中選擇需要的器件,點擊添加按鈕后該器件就會自動添加到工程的器件菜單下。第四步:器件添加完畢后,將器件拖拽到項目的圖紙中,用連接工具進(jìn)行電路圖的繪制和連接,連接完電路圖后可以對電路圖進(jìn)行檢查,檢查是否有錯誤的地方。確保電路圖的連接沒有錯誤的地方。第五步:添加編譯好的程序文件,繪制好的電路圖在沒有程序的時候如果運行仿真按鈕,會彈出提示信息,此時需要將.hex文件下載到單片機(jī)中。雙擊仿真中的CPU,在界面上ProgramFile:選項后的中選擇軟件自動生成的.hex文件,進(jìn)行加載。注意:程序的路徑一定要選對。第六步:運行仿真,點擊“運行”按鈕,圖標(biāo)為。電路圖會開始進(jìn)行仿真,此時通過電路圖上的器件的狀態(tài)就可以看到仿真的效果,例如如果有顯示器在顯示器件上可以看到顯示的內(nèi)容。如果想停止仿真,也可以點擊軟件左下角的“停止按鈕”,圖標(biāo)為,此時proteus軟件會停止仿真。本次設(shè)計的電子密碼鎖,為了驗證其功能使用了proteus仿真軟件對電子密碼鎖的密碼輸入功能,密碼錯誤報警功能進(jìn)行了仿真。如下圖4-3是系統(tǒng)的仿真原理圖,液晶上提示InPut:**此時代表可以輸入密碼。圖4-3整機(jī)proteus原理圖根據(jù)上面液晶的提示,我們通過按鍵輸入六位開鎖密碼,輸完密碼后電機(jī)“確認(rèn)”按鈕,如果密碼正確,則門鎖會打開,繼電器開鎖電路工作,門鎖開鎖指示燈點亮,代表開鎖成功。如下圖4-4所示。圖4-4成功開鎖界面根據(jù)上面液晶的提示,我們通過按鍵輸入六位開鎖密碼,輸完密碼后電機(jī)“確認(rèn)”按鈕,如果密碼錯誤,則門鎖不會打開,繼電器開鎖電路不工作,門鎖開鎖指示燈你點亮,此時蜂鳴器會發(fā)出醫(yī)生報警,LCD1602液晶顯示屏幕上會顯示Passworderrorcishu:01,代表輸入錯誤密碼1次,如下圖4-5所示。圖4-5密碼輸入錯誤界面4.4本章小結(jié)這是整個畢業(yè)設(shè)計最難的一個環(huán)節(jié),遇到了許多問題。并且其中在調(diào)試部分中所涉及的問題是最讓我記憶深刻的。通過調(diào)試,完成了設(shè)計的所有功能的測試,通過proteus仿真軟件實現(xiàn)了對系統(tǒng)功能的測試。總結(jié)經(jīng)過這段時間的畢業(yè)設(shè)計,到目前為止已經(jīng)完成了本次設(shè)計的題目的所有的內(nèi)容,實現(xiàn)了單片機(jī)電子密碼鎖的功能,可以通過按鍵輸入6位密碼,當(dāng)輸入的密碼正確后密碼鎖會自動的打開,當(dāng)輸入的密碼錯誤的時候密碼鎖不會打開,并且輸入錯誤的次數(shù)大于3次得時候會進(jìn)行報警提示?;叵胝n題的整個設(shè)計過程,從剛開始拿到課題時候的迷茫,不知道如何做,到對課題一點一點的熟悉,知道課題要實現(xiàn)的功能,再到動手對課題進(jìn)行設(shè)計,在這個設(shè)計的過程中

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論