版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 本科畢業(yè)論文(設(shè)計(jì))</p><p> 題 目:基于單片機(jī)的電子密碼鎖的設(shè)計(jì)</p><p> 學(xué) 院:</p><p> 學(xué)生姓名:</p><p> 專 業(yè):電氣工程及其自動化</p><p> 班 級:</p><p> 指導(dǎo)教師:</p
2、><p> 起止日期:</p><p> 基于單片機(jī)的電子密碼鎖的設(shè)計(jì)</p><p><b> 摘要</b></p><p> 當(dāng)今社會,隨著經(jīng)濟(jì)以及人們生活水平的快速發(fā)展,在人們?nèi)粘5纳钜约肮ぷ鳟?dāng)中,鎖已經(jīng)被人們廣泛的認(rèn)識和使用,被人們用來鎖住自己珍貴的東西,或者自己的家門等。原因就是為了提高安全性能,防止被一些
3、非法份子盜取。在人們?nèi)粘I钪?,有各種各樣的鎖,常見的有機(jī)械密碼鎖、電子磁卡鎖、卡片鎖、生物鎖、普通機(jī)械鎖以及指紋鎖等等。而簡單易行、成本低、安全實(shí)用的電子密碼鎖越來越受到人們的青睞。</p><p> 本設(shè)計(jì)主要是以AT89C51單片機(jī)作為密碼鎖監(jiān)控裝置的檢測和控制核心,研究其電子密碼鎖完整的設(shè)計(jì)過程。電子密碼鎖的模塊主要由三部分組成:矩陣按鍵接口電路、LCD液晶顯示電路、密碼鎖的控制電路。另外系統(tǒng)還有LED
4、顯示燈,報(bào)警蜂鳴器等。密碼鎖設(shè)計(jì)的關(guān)鍵問題是實(shí)現(xiàn)密碼的輸入、清除、更改、開鎖等功能。即在輸入正確的密碼的前提下,開鎖;錯誤輸入密碼情況下,通過鍵盤輸入次數(shù)記錄來實(shí)現(xiàn)鍵盤的鎖定或報(bào)警;密碼可以根據(jù)用戶需要更改。軟件設(shè)計(jì)運(yùn)用獨(dú)特的模塊化設(shè)計(jì)思路,以其朝著更理想的方向發(fā)展,增強(qiáng)系統(tǒng)的可擴(kuò)展性和其在啟動過程中的穩(wěn)定性。該密碼鎖具備安全性高、成本低、功耗低、易操作等優(yōu)點(diǎn)。最后驗(yàn)證的結(jié)果表明,本系統(tǒng)各個方面的功能都已經(jīng)達(dá)到了設(shè)計(jì)所給的要求。<
5、/p><p> 關(guān)鍵詞:AT89C51單片機(jī);電子鎖;密碼鎖;矩陣鍵盤</p><p><b> Abstract</b></p><p> Nowadays, as the economy and people living standard and rapid development, in the people daily life a
6、nd work for them, the lock has been widely recognized and used, being used to lock their precious things, or their homes. The reason is to improve the safety performance, and prevent some illegal members steal. In daily
7、life, there are various lock, common mechanical locks, electronic card lock, card lock, lock, common biological mechanical lock and lock etc. Electric magnetic lock due to magneti</p><p> At present most of
8、 the use of the electronic code lock are based on SCM technology, the single-chip microcomputer as the main device in the encoder and decoder is generated as a means of software.</p><p> This design is main
9、ly on AT89C51 single-chip microcomputer as the core electronic cipher lock, the electronic password lock complete design process. As well as the key circuit, display circuit design. The software design uses a unique modu
10、lar design, with its more desirable direction; enhance the system's scalability and the boot process stability. The final results, the various aspects of the system functions have been achieved the design to the requ
11、irements.</p><p> Key Words: AT89C51 single chip microcomputer; Electronic lock; a combination lock; Matrix keyboard</p><p><b> 目 錄</b></p><p><b> 前言1</
12、b></p><p><b> 第1章 緒論2</b></p><p> 1.1 幾種常見的密碼鎖2</p><p> 1.2 課題的背景和意義3</p><p> 1.3 國內(nèi)外研究現(xiàn)狀以及發(fā)展趨勢4</p><p> 1.4 研究的主要內(nèi)容4</p>&
13、lt;p> 第2章 總體設(shè)計(jì)方案的論證5</p><p> 2.1總體設(shè)計(jì)方案的選定5</p><p> 2.2 設(shè)計(jì)方案的思路5</p><p> 第3章 硬件電路的設(shè)計(jì)7</p><p> 3.1 AT89C51單片機(jī)介紹7</p><p> 3.1.1 主控芯片AT89C51單片機(jī)的簡
14、介7</p><p> 3.1.2 AT89C51引腳說明8</p><p> 3.2 開鎖電路的設(shè)計(jì)9</p><p> 3.3 按鍵電路的設(shè)計(jì)10</p><p> 3.4 AT24C02掉電存儲單元的設(shè)計(jì)11</p><p> 3.4.1 AT24C02介紹11</p><
15、;p> 3.4.2 掉電儲存電路介紹12</p><p> 3.5報(bào)警電路的設(shè)計(jì)12</p><p> 3.6顯示電路的設(shè)計(jì)12</p><p> 第4章 軟件設(shè)計(jì)14</p><p> 4.1 程序設(shè)計(jì)14</p><p> 4.2 主程序設(shè)計(jì)14</p><p>
16、; 4.3 鍵盤掃描及識別子程序設(shè)計(jì)16</p><p> 4.4 顯示子程序設(shè)計(jì)16</p><p> 第5章 系統(tǒng)仿真與調(diào)試19</p><p> 5.1 Proteus仿真平臺19</p><p> 5.2 電路仿真19</p><p> 5.3 仿真結(jié)果分析和過程22</p>
17、<p><b> 小結(jié)23</b></p><p><b> 致謝24</b></p><p><b> 參考文獻(xiàn)25</b></p><p> 附錄1 總原理圖26</p><p> 附錄2 程序c語言主要源代碼27</p>&
18、lt;p><b> 前 言</b></p><p> 隨著社會物質(zhì)財(cái)富的快速增長,防盜安全已經(jīng)成為了社會問題。如何實(shí)現(xiàn)防盜和安全這一問題也變的尤其的突出,傳統(tǒng)的機(jī)械鎖由于其構(gòu)造的簡單,被撬的事件屢見不鮮,而鎖自古以來就是把門戶的將軍,人們對其要求比較高,不僅能夠安全的防盜,而且還要使用方便,這是制鎖者長期以來研制的主題。</p><p> 而當(dāng)今社會由于計(jì)
19、算機(jī)的迅猛發(fā)展,數(shù)字電子技術(shù)已經(jīng)進(jìn)入人們生活的各個領(lǐng)域,在國內(nèi)外,電子產(chǎn)品的更新可謂如雨后的春筍層出不群,更多的電子產(chǎn)品也越來越多的應(yīng)用于安全防范領(lǐng)域。有需求就必有發(fā)展,不同種類的鎖也應(yīng)運(yùn)而生,有密碼鎖、磁性鎖、電子鎖、激光鎖、聲控鎖等等,它們的實(shí)現(xiàn)在傳統(tǒng)鑰匙的基礎(chǔ)上加了一組或多組密碼,不同聲音,不同磁場,不同聲波,不同光束光波,不同圖像(如指紋、眼底視網(wǎng)膜等)來控制鎖的開啟。電子密碼鎖由于其保密性高,使用靈活性好,安全系數(shù)高,受到了廣
20、大用戶的親呢。電子密碼鎖是一種通過密碼輸入來控制電路或是芯片工作,從而控制機(jī)械開關(guān)的閉合,完成開鎖、閉鎖任務(wù)的電子產(chǎn)品。它的種類很多,有簡易的電路產(chǎn)品,也有基于芯片的性價比較高的產(chǎn)品。</p><p> 隨著電子元件的進(jìn)一步發(fā)展,電子密碼鎖也出現(xiàn)了很多的種類,功能日益強(qiáng)大,使用更加方便,在安全性能方面也做到很好的保障,從之前的但密碼輸入到了如今的發(fā)展,密碼添加了感應(yīng)的元件,真正的實(shí)現(xiàn)了電子加密,如果只有電子鑰匙
21、或者只要密碼,那么鎖是不會被打開的,隨著電子元件的快速發(fā)展以及人們對安全保密性能需求的提高,現(xiàn)在已經(jīng)出現(xiàn)了越來越多的電子密碼鎖。</p><p> 本系統(tǒng)由單片機(jī)系統(tǒng)、矩陣鍵盤、LED顯示和報(bào)警系統(tǒng)組成。系統(tǒng)能完成密碼輸入、開鎖、超次報(bào)警的功能。除上述基本的密碼鎖功能外,還具有掉電存儲、聲光提示等功能,依據(jù)實(shí)際的情況還可以添加其他功能。本系統(tǒng)成本低廉,功能實(shí)用。</p><p><
22、b> 第1章 緒論</b></p><p> 1.1 幾種常見的密碼鎖</p><p><b> 1.機(jī)械密碼鎖</b></p><p> 機(jī)械密碼鎖比較耐用、穩(wěn)定,并且不需要電源。但是在操作方面學(xué)起來比較緩慢、操作并不方便、修改密碼需要專業(yè)人員。這個類型的鎖把解鎖的密碼以機(jī)械裝訂的方式儲存在裝置的鑒別機(jī)構(gòu)之上,把密碼
23、操作的按鍵設(shè)置在裝置的外圍。當(dāng)輸入密碼的時候,會產(chǎn)生相對應(yīng)的鑒別動作,這就是正確密碼的輸入,然后鑒別的機(jī)構(gòu)會進(jìn)行開鎖的動作;相反,如果輸入錯誤的密碼,鑒別機(jī)構(gòu)的部件會產(chǎn)生錯位或者不做出相對應(yīng)的響應(yīng)。機(jī)械密碼鎖是采用機(jī)械進(jìn)行加工制作,外界所產(chǎn)生不同的信號很難啟動鑒別機(jī)構(gòu)。但是機(jī)械密碼鎖內(nèi)含有很多歌比較復(fù)雜的組件,而且其制造的周期較長、成本比較昂貴,機(jī)電的接口以及測試方面也有一定方面的難度。</p><p><
24、b> 2.刷卡式密碼鎖</b></p><p> 刷卡式密碼鎖可以用自己的IC卡來開保險柜的門,操作簡單,但對IC卡的要求比較高,如果和強(qiáng)磁的物體接觸,IC卡有可能磁性減弱,無法打開密碼鎖。該類型的鎖類型于機(jī)械鎖,運(yùn)用光電耦合或者電磁感應(yīng)的原理,把所要保存的密鑰的信息提前存入卡片內(nèi)部,然后把加工完成好的卡片當(dāng)作鑰匙,開鎖的時候把卡片插入鎖內(nèi)或者近距離感應(yīng)便能把鎖打開。該鎖所用的成本比較低,并
25、且可以聯(lián)微機(jī),用戶可以一人一卡,方便使用,但是卡片比較容易磨損,壽命比較短;而且很容易復(fù)制卡片,進(jìn)行雙向控制不是那么容易。</p><p><b> 3.指紋類密碼鎖</b></p><p> “你可能忘記帶鑰匙,但是一定不會忘記帶手”這就是指紋密碼鎖的好處。因?yàn)橹讣y在這個世界上很難找到一樣的,所以隨著科技的進(jìn)步,人們就把指紋識別技術(shù)運(yùn)用到了保險柜上,其保密性強(qiáng),
26、操作比較簡便。但是它也有相應(yīng)的缺點(diǎn),同一個人,若指紋劃傷,或者任何被用于開鎖的識別部位產(chǎn)生損傷的情況下,可能會產(chǎn)生錯誤的識別以至于無法把鎖打開。</p><p><b> 4.電子密碼鎖</b></p><p> 電子密碼鎖是一種通過密碼輸入來進(jìn)行控制電路或者用芯片來進(jìn)行工作,這樣才能把機(jī)械設(shè)備開關(guān)進(jìn)行控制,然后進(jìn)行開鎖和閉鎖任務(wù)的電子產(chǎn)品。它的類型非常之多,比如
27、簡易用于電路上的產(chǎn)品,也有利用芯片而制造成的產(chǎn)品,因?yàn)槠湫詢r比非常搞。目前應(yīng)用比較廣泛的電子密碼鎖一般都是基于芯片作為核心,經(jīng)過編程來進(jìn)行實(shí)現(xiàn)的。比起機(jī)械鎖,該鎖的安全性以及性能都有了顯著的提高,該鎖有非常多的特點(diǎn):</p><p> ?。?)保密性好、編程量多已經(jīng)遠(yuǎn)遠(yuǎn)大于彈子鎖。在隨機(jī)開鎖上成功的幾率幾乎不可能實(shí)現(xiàn)。</p><p> ?。?)密碼可變。 用戶可以經(jīng)常更改密碼,防止密碼被
28、盜,同時也可以避免因人員的更替而使鎖的密級下降。</p><p> (3)緊急開啟功能(Panic Open)。出門時無需其他操作,只需一次的把手動作,可機(jī)械的開啟門,所以遇到火災(zāi)等應(yīng)急狀況下也迅速,安全的開啟門。</p><p> 電子密碼鎖特點(diǎn)很多,這里不做詳細(xì)的介紹,雖說這幾年電子密碼鎖的價格下降了,但是隨之其本身的質(zhì)量也提高了,由于其比較復(fù)雜,所以穩(wěn)定和耐用性不如機(jī)械密碼鎖。&
29、lt;/p><p> 1.2 課題的背景和意義</p><p> 根據(jù)相關(guān)的資料介紹,從30年代起,電子鎖的研究便已經(jīng)開始,在一些特殊場所早就有所應(yīng)用。當(dāng)初之所以研究這種鎖,主要是為了提高鎖具的安全性能,由于電子鎖的密鑰量(密碼量)非常龐大,因?yàn)榭梢院蜋C(jī)械鎖相配合,避免因?yàn)殍€匙被模仿而出現(xiàn)的問題。在安全性能非常高的前題之下,它所具備的另一個特點(diǎn)是不需要鑰匙但是被越來越多的人們所喜愛。由于人
30、們自身所攜帶的鑰匙大部分已經(jīng)成為了累贅,但是電子鎖僅僅需要牢記住一組密碼,并且不需要攜帶金屬的鑰匙,所以便消除了人們的煩惱。傳統(tǒng)形式的密碼鎖是一種全機(jī)械形式的密碼鎖,全部是通過圓盤轉(zhuǎn)動以至于帶動刻度盤的轉(zhuǎn)動,得以實(shí)現(xiàn)密碼的輸入。如今市面上所具有的傳統(tǒng)密碼鎖主要是圓盤式機(jī)械密碼鎖和撥碼盤式機(jī)械密碼鎖這兩種類型。但是能談的上比較使用或者是比較大眾化一些的還是按鍵式電子密碼鎖。這種操作方式與按鍵電話機(jī)的電子鎖比較相似,通過鍵盤上的數(shù)碼按鍵逐一
31、輸入一列密碼,若密碼和它內(nèi)部已匹配的密碼相同,便會輸出一個電信的號碼,以驅(qū)動電磁鐵或者小馬達(dá)將門閂打開,完成一個開鎖過程。電子鎖相對于傳統(tǒng)機(jī)械式密碼鎖,解決了輸入密碼繁鎖的缺點(diǎn),而且其操作也更加簡單方便。</p><p> 一直到了20世紀(jì)80年代,由于電子鎖專門運(yùn)用的集成電路的出現(xiàn),電子鎖其本身的體積變小了,而且可靠性能也提高了,與傳統(tǒng)密碼鎖相比較,電子密碼鎖保密性能得到更好的體現(xiàn),具有龐大的密齒,克服了機(jī)械
32、式密碼鎖密碼量少、安全性能差的缺點(diǎn),使密碼鎖無論在技術(shù)上還是在性能上都大大提高一步。</p><p> 并且從另一個角度,例如從方便角度上來看,電子密碼鎖省去了傳統(tǒng)密碼鎖的鑰匙,電磁卡的磁卡,而使用的人只要能記住它的密碼,就可以打開,這樣大大的提高了它的適用性能,因此電子密碼鎖也具有很高的研究價值。</p><p> 目前使用的密碼鎖種類繁多,各具特色。本設(shè)計(jì)從經(jīng)濟(jì)實(shí)用的角度出發(fā),采用
33、AT8951單片機(jī),研制了一款具有報(bào)警功能的電子密碼鎖。該密碼鎖設(shè)計(jì)方面簡單易行,成本低,符合住宅、辦公室等用鎖要求,都有其價值。</p><p> ?。?)系統(tǒng)設(shè)置最大6位數(shù)密碼,密碼是利用鍵盤來進(jìn)行輸入,如果密碼是正確的,鎖便可以被打開。</p><p> (2)用戶可以自己來設(shè)定密碼,如果用戶要自己來修改密碼,需要在鎖打開的前提之下。</p><p> (
34、3)能夠自主進(jìn)行報(bào)警。自動報(bào)警可以分為兩種,一種是現(xiàn)場報(bào)警,另一種是遠(yuǎn)程報(bào)警?,F(xiàn)場報(bào)警的報(bào)警聲是由揚(yáng)聲器來發(fā)出的。</p><p> ?。?)兩種情況下可報(bào)警:一是密碼輸入錯誤3次,則報(bào)警;二是非正常開門,如破門而入的情況,可通過系統(tǒng)的紅外監(jiān)視裝置監(jiān)測,同時報(bào)警,保證了系統(tǒng)的安全性。系統(tǒng)工作時,用戶可以通過按鍵輸入6位密碼,單片機(jī)將輸入密碼和設(shè)定密碼進(jìn)行比較,如果密碼正確,那么發(fā)出開鎖信號,將們打開,系統(tǒng)不報(bào)警;
35、若密碼不正確,則有相應(yīng)的指示燈閃動,并要求重新輸入密碼,重新輸入密碼的次數(shù)不能超過3次,若3次輸入的密碼全部不正確,則發(fā)出報(bào)警信號。</p><p> 隨著時代的進(jìn)步和發(fā)展,許多電子智能鎖(指紋識別、IC卡辨認(rèn))已在國內(nèi)外相繼面世。但是這些產(chǎn)品的特點(diǎn)是針對特定的指紋和有效卡,只能適用于保密要求的箱、柜、門等。而且指紋識識別器若在公共場所使用存在容易機(jī)械損壞,IC卡還存在容易丟失、損壞等特點(diǎn)。加上其成本較高,一定
36、程度上限制了這類產(chǎn)品的普及和推廣。鑒于目前的技術(shù)水平與市場的接收程度,電子密碼鎖是這類電子防盜產(chǎn)品的主流。又因?yàn)殡娮用艽a鎖具備諸多的優(yōu)點(diǎn)。到目前為止,在此領(lǐng)域已經(jīng)有較大的發(fā)展,采用各種電路進(jìn)行設(shè)計(jì)的比較多,技術(shù)也變的非常先進(jìn),到目前為止,電子技術(shù)已經(jīng)達(dá)到了一個相當(dāng)高的程度,電子鎖技術(shù)也已經(jīng)非常完善,勢必會被廣大的人們所應(yīng)用。</p><p> 1.3 國內(nèi)外研究現(xiàn)狀以及發(fā)展趨勢</p><p
37、> 電子密碼鎖應(yīng)用于金融業(yè),其根本的作用是“授權(quán)”,即被“授權(quán)”的人才可以存取錢、物。廣義上講,金融業(yè)的“授權(quán)”主要包括以下三種層次的內(nèi)容:1、授予保管權(quán),如使用保管箱、保險箱和保險柜;2、授予出入權(quán),如出入金庫、運(yùn)鈔車和保管室;3、授予流通權(quán),如自動存取款。目前,金融行業(yè)電子密碼鎖的應(yīng)用主要集中在前兩個層面上。下面將介紹幾種在金融行業(yè)中使用較多的電子密碼鎖以及它們的技術(shù)發(fā)展方向。當(dāng)然,以上所說的授權(quán)技術(shù)再高超,都必須由精良的“
38、鎖具”擔(dān)當(dāng)承載結(jié)構(gòu)部件,實(shí)現(xiàn)開啟、閉鎖的功能,而且承擔(dān)實(shí)體防護(hù)作用,抵抗住或盡量延遲破壞行為,讓電子密碼鎖“軟、硬不吃”。一般情況下,鎖具防盜的關(guān)鍵是鎖身外殼、閉鎖的部件的強(qiáng)度、鎖止型式、配合間隙和布局。提高電子密碼鎖之防護(hù)能力的必然途徑是報(bào)警,在金融業(yè)的許多場所有人值守、有電視監(jiān)控,具有報(bào)警功能,可以綜合物理防范和人力防范兩種作用。報(bào)警的前提是具備探測功能,根據(jù)電子密碼鎖的使用場所和防護(hù)要求,可選擇多種多樣的探測手段。在中國的城市金融
39、業(yè)中,實(shí)現(xiàn)聯(lián)網(wǎng)報(bào)警已經(jīng)成為對各金融網(wǎng)點(diǎn)的基本要求。根據(jù)國內(nèi)外的實(shí)踐經(jīng)驗(yàn),金融業(yè)實(shí)行安全防范風(fēng)險等級很有必要,即依據(jù)使用的防盜報(bào)警器材</p><p> 能成為鑰匙電子信息的因素有很多,例如字符、數(shù)字、人體內(nèi)的生活特征等等,把這一些信息進(jìn)行組合并且相利用都可以讓電子密碼鎖的得到較高的保密性能,就好像一座防衛(wèi)密集的堡壘,需要利用復(fù)合信息密碼所產(chǎn)生的電子密碼鎖,只有這樣,對于那些非法之徒來說便是“道高一尺、魔高一丈”
40、。利用組合使用的信息也可以使電子密碼鎖獲得無窮擴(kuò)展的可能,使產(chǎn)品多樣化,對用戶而言是“千挑百選、自得其所”。 </p><p> 1.4 研究的主要內(nèi)容</p><p> 電子密碼鎖的具體設(shè)計(jì)是本次設(shè)計(jì)的主要所研究方向。設(shè)計(jì)電子密碼鎖控制系統(tǒng)電路。并且讓密碼鎖具備以下功能:開機(jī)時,輸入密碼,如果密碼正確那么電子鎖便能打開;反之,若輸入錯誤的密碼,可以再允許輸入兩次密碼,而在這兩次輸入密
41、碼的過程中,如果密碼正確,那么電子鎖可以打開,但是如果輸入的密碼還是錯誤的,那么鍵盤的輸入功能將被鎖定,而且會有報(bào)警聲產(chǎn)生。但是為了設(shè)計(jì)的方便,將密碼鎖的開啟和鎖定用發(fā)光二極管來判定,簡之便是當(dāng)輸入密碼的時候,密碼正確而且紅燈亮則確認(rèn)為開鎖,反之連續(xù)輸入三次密碼不正確則鎖定鍵盤,并且報(bào)警鳳鳴。</p><p> 本電子密碼鎖是采用AT89C51單片機(jī)為主控芯片,并且與外圍電路相結(jié)合而設(shè)計(jì)的。如果想要打開鎖,必須
42、先通過鍵盤輸入正確的密碼才得以打開鎖,若密碼輸入錯誤會有提示,但是只有三次機(jī)會,若三次密碼輸入全部錯誤,則會有報(bào)警聲響起。密碼可以由用戶進(jìn)行修改與設(shè)定,但是修改密碼之前必須先將鎖打開,并且在修改之前需將原密碼輸入,新的密碼要驗(yàn)證兩次才能確認(rèn),以防操作錯誤。</p><p> 第2章 總體設(shè)計(jì)方案的論證</p><p> 2.1總體設(shè)計(jì)方案的選定</p><p>
43、 方案一:采用數(shù)字的電路進(jìn)行控制</p><p> 基于74LS112雙JK觸發(fā)器所組成的數(shù)字邏輯電路,把其作為密碼鎖的核心控制,然后設(shè)置了9個用戶輸入的按鍵,但是有效的密碼按鍵僅有4個,其它幾個按鍵都是干擾的按鍵,如果按下干擾的按鍵,鍵盤會輸入電路自動清零,剛開始已經(jīng)輸入的密碼便會作廢,然后需要用戶重新輸入密碼;若用戶輸入密碼的時間大于10秒(通常情況下,用戶輸入的密碼時間不會大于10秒鐘,但是用戶如果覺得
44、不方便,能夠自己修改)電路會報(bào)警20秒,如果電路連續(xù)報(bào)警了三次,電路會把鍵盤鎖定2分鐘時間,以防意外或別人的非法操作。采用數(shù)字電路設(shè)計(jì)的方案好處就是設(shè)計(jì)簡單但控制的準(zhǔn)確性和靈活性差。故不采用。</p><p> 方案二:采用以AT89C51為核心元件的單片機(jī)的控制方案</p><p> 利用單片機(jī)靈活的編程設(shè)計(jì)以及控制的準(zhǔn)確性能來進(jìn)行事先基本的密碼鎖功能。在單片機(jī)的外圍電路外接輸入鍵盤
45、用于密碼的輸入和一些功能的控制。</p><p> 其原理圖如圖2.2所示:</p><p> 圖2.1單片機(jī)控制方案</p><p> 我們可以很明顯的看出第二種方案控制更加靈活,具有很大的活動空間,保密性能強(qiáng)而且具有擴(kuò)展功能,還可以很方便的對系統(tǒng)進(jìn)行升級,所以我們采用第二種方案。</p><p> 2.2 設(shè)計(jì)方案的思路</
46、p><p><b> 初步設(shè)計(jì)思路如下:</b></p><p> 本次設(shè)計(jì)以AT89C51為核心來實(shí)現(xiàn)電子密碼鎖的設(shè)計(jì)。主要功能為:</p><p> ?。?)設(shè)置最大為6位密碼,輸入密碼采用矩陣小鍵盤,如果密碼正確,鎖便能打開。</p><p> ?。?)用戶可以自己來修改并設(shè)定密碼,修改密碼之前鎖必須打開。為防止錯
47、誤,修改新密碼需要輸入兩次。</p><p> ?。?)若密碼輸入錯誤,數(shù)碼顯示管會出現(xiàn)提示,如果密碼輸入錯誤次數(shù)超過3次,則會產(chǎn)生鎖定鍵盤,報(bào)警等功能。</p><p> 本次電子密碼鎖的設(shè)計(jì)有控制電路,輸出八段顯示電路和矩陣鍵盤接口電路組成。另外為了操作簡便,加了LED提示燈以及報(bào)警等設(shè)備和系統(tǒng)。</p><p> 密碼鎖設(shè)計(jì)的關(guān)鍵問題是實(shí)現(xiàn)密碼的輸入、清除
48、、更改、開鎖等功能:</p><p> ?。?)密碼輸入功能:首先按下第一個數(shù)字鍵,數(shù)字即從左邊開始顯示,直到按下6位密碼后,即顯示出6位數(shù)。</p><p> ?。?)密碼清楚功能:當(dāng)按下清除鍵時候,清除前面輸入的所有數(shù)字,并且清楚所有顯示。</p><p> ?。?)密碼更改功能:可以把輸入的數(shù)值作為新的密碼。</p><p> (4)
49、開鎖功能:當(dāng)按下開鎖按鍵時,系統(tǒng)會自動將輸入和密碼進(jìn)行檢查并進(jìn)行核對,若密碼正確則鎖打開,反之打不開。</p><p> 第3章 硬件電路的設(shè)計(jì)</p><p> 3.1 AT89C51單片機(jī)介紹</p><p> 3.1.1 主控芯片AT89C51單片機(jī)的簡介</p><p> AT89C51是一種低功耗、高性能的片內(nèi)含有4KB快閃
50、可編程/擦除只讀存儲器的8位CMOS微控制器,使用高密度、非易失存儲技術(shù)制造,并且與80C51引腳和指令系統(tǒng)完全兼容。主要性能:與MCS-51 微控制器產(chǎn)品系列兼容。 片內(nèi)有4KB可在線重復(fù)編程的快閃擦寫存儲器存儲數(shù)據(jù)保存時間為10年。寬工作電壓范圍:Vcc可為2.7V到6V全靜態(tài)工作;可從0Hz至16MHz 程序存儲器具有3級加密保護(hù) 128*8位內(nèi)部RAM 32條可編程I/O線、兩個16位定時器/計(jì)數(shù)器、中斷結(jié)構(gòu)具有5個中斷源和2個
51、優(yōu)先級、可編程全雙工串行通道、空閑狀態(tài)維持低功耗和掉電狀態(tài)保存存儲內(nèi)容。</p><p> AT89C51單片機(jī)是把那些作為控制應(yīng)用所必需的基本內(nèi)容都集成在一個尺寸有限的集成電路芯片上。如果按功能劃分,它由如下功能部件組成,即微處理器、數(shù)據(jù)存儲器、程序存儲器、并行I/O口、串行口、定時器/計(jì)數(shù)器、中斷系統(tǒng)及特殊功能寄存器。它們都是通過片內(nèi)單一總線連接而成,其基本結(jié)構(gòu)依舊是CPU加上外圍芯片的傳統(tǒng)結(jié)構(gòu)模式。但對各
52、種功能部件的控制是采用特殊功能寄存器的集中控制方式。</p><p> 微處理器、數(shù)據(jù)存儲器、程序存儲器、并行I/O口、串行口、定時器/計(jì)數(shù)器、中斷系統(tǒng)各部分功能及說明類似于8051單片機(jī)內(nèi)部結(jié)構(gòu)說明。特殊功能寄存器共有21個,用于對片內(nèi)的各功能的部件進(jìn)行管理、控制、監(jiān)視。實(shí)際上是一些控制寄存器和狀態(tài)寄存器,是一個具有特殊功能的RAM區(qū)。</p><p> 由上可見,89C51單片機(jī)的
53、硬件結(jié)構(gòu)具有功能部件種類全,功能強(qiáng)等特點(diǎn)。特別值得一提的是該單片機(jī)CPU中的位處理器,它實(shí)際上是一個完整的1位微計(jì)算機(jī),這個1位微計(jì)算機(jī)有自己的CPU、位寄存器、I/O口和指令集。1位機(jī)在開關(guān)決策、邏輯電路仿真、過程控制方面非常有效;而8位機(jī)在數(shù)據(jù)采集,運(yùn)算處理方面有明顯的長處。MCS-51單片機(jī)中8位機(jī)和1位機(jī)的硬件資源復(fù)合在一起,二者相輔相承,它是單片機(jī)技術(shù)上的一個突破,這也是MCS-51單片機(jī)設(shè)計(jì)的精美之處。</p>
54、<p> 3.1.2 AT89C51引腳說明</p><p> 圖3.1 AT89C51引腳圖</p><p><b> 管腳說明:</b></p><p><b> VCC:供電電壓。</b></p><p><b> GND:接地。</b></p
55、><p> P0口:作為一個8位漏級開路的雙向I/O口,P0口每一個腳可以進(jìn)行吸收8TTL門電流。當(dāng)?shù)谝淮伪籔1口的管腳寫1時,這個叫做高阻輸入。P0可以用來作為外部程序數(shù)據(jù)存儲器,該口可以定義為數(shù)據(jù)/地址的第八位。 </p><p> P2口:P2口是一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器能夠接收,輸出4個TTL門電流,當(dāng)P2口被寫入1的時候,內(nèi)部將其管腳上拉為高電平的時
56、候,并且作為輸入。又因?yàn)樽鳛檩斎氲臅r候,外部將P2口的管腳拉為低電平,將輸出電流。這便是因?yàn)閮?nèi)部上拉的原因。當(dāng)外部程序存儲器或者16位地址外部數(shù)據(jù)存儲器把P2口應(yīng)用于存取的時候,P2口輸出地址的高八位。地址“1”在被給出的時候,其基于內(nèi)部上拉的優(yōu)勢,在對于外部八位地址數(shù)據(jù)存儲器進(jìn)行讀寫的時候,特有功能寄存器的內(nèi)容會被P2口輸出。</p><p> P1口:作為一個內(nèi)部提供上拉電阻的8位雙向I/O口,輸出4TTL
57、門電流可以被P1口緩沖器進(jìn)行接受。當(dāng)P1口管腳寫入1的之后,內(nèi)部將其上拉為高電平時候,可以用于輸入,當(dāng)P1口被外部下拉為低電平時,就會輸出電流,這個就是因?yàn)閮?nèi)部上拉的原因。</p><p> P3口:P3口管腳是個雙向I/O口,而且有8個帶內(nèi)部上拉電阻??梢赃M(jìn)行接受并且輸出4個TTL門電流。在P3口寫入“1”之后,內(nèi)部上會將其拉為高電平,并且用作輸入。作為輸入,外部下拉為低電平,因?yàn)樯侠木壒剩琍3口將輸出電流
58、(ILL)。</p><p> P3口也可作為AT89C51的一些特殊功能口,如下表所示:</p><p> P3.0 RXD(串行輸入口)</p><p> P3.1 TXD(串行輸出口)</p><p> P3.2 /INT0(外部中斷0)</p><p> P3.3 /INT1(外部中斷1)</p
59、><p> P3.4 T0(記時器0外部輸入)</p><p> P3.5 T1(記時器1外部輸入)</p><p> P3.6 /WR(外部數(shù)據(jù)存儲器寫選通)</p><p> P3.7 /RD(外部數(shù)據(jù)存儲器讀選通)</p><p> P3口同時為閃爍編程和編程校驗(yàn)接收一些控制信號。</p>&
60、lt;p> RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機(jī)器周期的高電平時間。</p><p> ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳
61、過一個ALE脈沖。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。</p><p> /PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器的時候,有效的兩次/PSEN信號不會顯現(xiàn)。</p><p> /EA/VPP:當(dāng)/EA一直作為低電平的時候,那么在這個時候,外部程序的存儲器(0000H-F
62、FFFH),無論內(nèi)部程序存儲器存在與否。加密方式1要進(jìn)行注意,內(nèi)部被/EA鎖定為RESET;當(dāng)/EA端一直作為高電平的時候,這個時候內(nèi)部程序存儲器。</p><p> XTAL1:內(nèi)部時鐘工作電路的輸入,反向震蕩放大器的輸入。</p><p> XTAL2:是由反向振蕩器進(jìn)行輸出的。</p><p> 過電流保護(hù)和欠電壓保護(hù):過電流保護(hù)采用電壓比較器結(jié)合單穩(wěn)態(tài)
63、觸發(fā)電路實(shí)現(xiàn),欠電壓采用電壓比較器實(shí)現(xiàn)。當(dāng)發(fā)生過電流時IF大于3.5V電壓比較器輸出低電平,單穩(wěn)態(tài)觸發(fā)電路有NE555構(gòu)成,低電平觸發(fā),暫穩(wěn)態(tài)輸出高電平,暫穩(wěn)態(tài)時間約2s。當(dāng)輸入電壓小于200V時電壓比較器輸出高電平,反之輸出低電平。CD4001是或非門,只要過電流和欠壓有一個滿足則SD為高電平,IR2110封鎖輸出實(shí)現(xiàn)保護(hù)目的。當(dāng)SD=1時,SD_V=0,發(fā)光二極管點(diǎn)亮,指示電路進(jìn)入保護(hù)狀態(tài)。</p><p>
64、 3.2 開鎖電路的設(shè)計(jì)</p><p> 經(jīng)過單片機(jī)送給開鎖執(zhí)行機(jī)構(gòu),電路驅(qū)動電磁鎖吸合,從而達(dá)到開鎖的目的,密碼鎖開鎖機(jī)構(gòu)示意圖如3.2所示:</p><p> 圖3.2密碼鎖開鎖機(jī)構(gòu)流程圖</p><p> 當(dāng)用戶輸入正確的密碼后,單片機(jī)就會通過信號送到開鎖驅(qū)動電路,最后通過電磁鎖,達(dá)到開鎖的目地。</p><p> 3.3
65、按鍵電路的設(shè)計(jì)</p><p> 因?yàn)橐笫褂镁仃囨I盤,所以此次設(shè)計(jì)就運(yùn)用行列式鍵盤,這樣也就減少了鍵盤跟單片機(jī)接口的時候所占用的I/O線的數(shù)量,一般上采用這種方法都是在按鍵比較多的情況下,其原理如圖3.3:</p><p> 圖3.3行列式鍵盤示意圖</p><p> 各條水平(行線)和垂直線(列線)的交叉處并不相通,它是利用一個按鍵來得以連接,這樣的行列式
66、矩陣結(jié)構(gòu)只要有A條行線和B條列線,便能組成一個A×B個按鍵的鍵盤。</p><p> 這種單片機(jī)是行列式矩陣鍵盤非鍵盤編碼的,而在這種系統(tǒng)當(dāng)中,鍵盤的處理程序應(yīng)當(dāng)先要進(jìn)行等待按鍵,并且驗(yàn)證程序段是否有按鍵按下。</p><p> 如果有按鍵按下以后得到確認(rèn),那么下一步便是識別哪一個按鍵按下。而對于按鍵的識別一般上有兩種方法:第一種是最常用的掃描查詢法,這個需要逐步掃描;另一種
67、便是速度相對較快的線反轉(zhuǎn)法。</p><p> 線反轉(zhuǎn)法的工作原理:第一步要判斷鍵盤有沒有按鍵按下,若有單片機(jī)I/O口,其是否讓鍵盤接受到全掃描的文字,然后再讀入行線的情況來進(jìn)行判斷。其方法是:向行線輸出全掃描字OOH,讓所有的列線設(shè)置為低電平,其次在累加器A中讀入列線的電平狀態(tài)。若確認(rèn)有按鈕按下,那么總會有一根行線電平唄拉至低電平,而且使行線不全為1。</p><p> 判定鍵盤當(dāng)中
68、哪一個按鍵被按下,然后使其通過把列線逐列置低電平以后,再來看輸入的狀態(tài)來進(jìn)行實(shí)現(xiàn)。其方法:逐一把列線送至低電平,其次再查詢?nèi)康男芯€狀態(tài),若顯示的全部為1,那么按下的按鍵便不在這一列中;反之,如果其中不全是1,那么按下的按鍵肯定在這一列中,并且這個按鍵肯定是跟零電平行線相交所產(chǎn)生交點(diǎn)上的那一個按鍵。</p><p> 表3.1是其按鍵功能圖:</p><p><b> 表3.
69、1按鍵功能</b></p><p> 3.4 AT24C02掉電存儲單元的設(shè)計(jì)</p><p> 3.4.1 AT24C02介紹</p><p> AT24C02是一個2K位串行CMOS E2PROM, 內(nèi)部含有256個8位字節(jié),CATALYST公司的先進(jìn)CMOS技術(shù)實(shí)質(zhì)上減少了器件的功耗。AT24C02有一個16字節(jié)頁寫緩沖器。該器件通過IIC總
70、線接口進(jìn)行操作,有一個專門的寫保護(hù)功能。</p><p> 功能描述:AT24C02是一個2K位串行CMOS E2PROM, 內(nèi)部含有256個8位字節(jié),CATALYST公司的先進(jìn)CMOS技術(shù)實(shí)質(zhì)上減少了器件的功耗。AT24C02有一個16字節(jié)頁寫緩沖器。該器件通過IIC總線接口進(jìn)行操作,有一個專門的寫保護(hù)功能。</p><p> 采用兩線串行的總線和單片機(jī)通訊,電壓最低可以到2.5V,
71、額定電流為1mA,靜電流10Ua(5.5V),在斷點(diǎn)的情況下,芯片內(nèi)的資料可以保留40年以上,而且采用8腳的DIP封裝,使用方便。其電路圖如圖3.4所示:</p><p> 圖3.4 AT24C02</p><p> 3.4.2 掉電儲存電路介紹</p><p> 掉電存儲單元的作用:當(dāng)電源斷開的時候,當(dāng)前設(shè)定的單價信息將被存儲。AT24C02是ATMEL
72、公司的2KB字節(jié)的電可擦除存儲芯片,采用兩線串行的總線、單片機(jī)通訊,最低的電壓可以到2.5V,1mA的額定電流,10Ua(5.5V)的靜態(tài)電流,在斷點(diǎn)的情況下,芯片內(nèi)的資料都至少可以保留40年,并且利用8腳的DIP封裝,運(yùn)用比較簡便。</p><p> 具體如圖3.5所示:</p><p> 圖3.5 掉電儲存電路原理圖</p><p> 如上圖所示中R8、R
73、10是上拉電阻,其主要的作用是減少AT24C02的靜態(tài)功耗,因?yàn)锳T24C02的地址線以及數(shù)據(jù)線是復(fù)用的,采用串口的方式傳送數(shù)據(jù),因此只用SDA(數(shù)據(jù)/地址)以及SCL(移位脈沖)兩根線和單片機(jī)進(jìn)行傳送數(shù)據(jù)。</p><p> 3.5報(bào)警電路的設(shè)計(jì)</p><p> 報(bào)警部分由陶瓷壓電發(fā)聲裝置及外圍電路組成,加電后不發(fā)聲,當(dāng)有鍵按下時,“叮”聲,每按一下,發(fā)聲一次,密碼正確時,不發(fā)聲直
74、接開鎖,當(dāng)密碼輸入錯誤時,單片機(jī)的P37引腳為低電平,蜂鳴器發(fā)出噪聲報(bào)警。</p><p> 圖3.6 報(bào)警電路示意圖</p><p> 3.6 顯示電路的設(shè)計(jì)</p><p> 顯示設(shè)計(jì)采用字符型液晶屏設(shè)計(jì),由單片機(jī)的p0口控制顯示。由p2.0~p2.2控制LCD的控制端口。</p><p> 本設(shè)計(jì)采用以下液晶顯示設(shè)計(jì):</
75、p><p> 圖3.7 LCD液晶顯示電路</p><p><b> 第4章 軟件設(shè)計(jì)</b></p><p><b> 4.1 程序設(shè)計(jì)</b></p><p> 程序設(shè)計(jì)(Programming)是給出解決特定問題程序的過程,是軟件構(gòu)造活動中的重要組成部分。程序設(shè)計(jì)往往以某種程序設(shè)計(jì)語言為工
76、具,給出這種語言下的程序。程序設(shè)計(jì)過程應(yīng)當(dāng)包括分析、設(shè)計(jì)、編碼、測試、排錯等不同階段。它是一種智力活動,而且目標(biāo)是已經(jīng)明確的。在進(jìn)行微機(jī)控制系統(tǒng)設(shè)計(jì)時,除了系統(tǒng)硬件設(shè)計(jì)外,它大部分的工作主要是判斷如何根據(jù)每一個生產(chǎn)對象的實(shí)際需要而對其進(jìn)行設(shè)計(jì)應(yīng)用程序。因此,軟件設(shè)計(jì)在微機(jī)控制系統(tǒng)設(shè)計(jì)中占有非常重要的地位。對于本次系統(tǒng)設(shè)計(jì)中,軟件也占有重要的地位。</p><p> 在單片機(jī)控制系統(tǒng)中,一般上可以把其分為過程控制
77、和數(shù)據(jù)處理這兩個基本類型。其中數(shù)據(jù)處理包括:數(shù)據(jù)的采集、數(shù)字濾波和標(biāo)度變換等。過程控制程序通常是使單片機(jī)按照其特定的方法來進(jìn)行計(jì)算,其次進(jìn)行輸出,以便于控制生產(chǎn)。</p><p> 由于要完成上面所描述的任務(wù),在進(jìn)行軟件設(shè)計(jì)時,通常把整個過程分成若干個部分,每一部分叫做一個模塊。把一個程序分成具有多個明確任務(wù)的程序模塊,分別編制、調(diào)試后再把它們連接在一起形成一個完整的程序,這樣的程序設(shè)計(jì)方法稱為模塊化程序設(shè)計(jì)。
78、所謂“模塊”,實(shí)質(zhì)上就是能完成一定功能,并相對獨(dú)立的程序段,這種程序設(shè)計(jì)方法稱為模塊程序設(shè)計(jì)法。</p><p> 模塊化程序設(shè)計(jì)法的特點(diǎn):結(jié)構(gòu)化程序中的任意基本結(jié)構(gòu)都具有唯一入口和唯一出口,并且程序不會出現(xiàn)死循環(huán)。在程序的靜態(tài)形式與動態(tài)執(zhí)行流程之間具有良好的對應(yīng)關(guān)系。</p><p> 優(yōu)點(diǎn):由于模塊相互獨(dú)立,所以當(dāng)中一個模塊在設(shè)計(jì)的時候,不可能受到另外模</p>&l
79、t;p> 塊的牽連,所以原來比較繁瑣的問題可以被解決成為一些比較簡單模塊的設(shè)計(jì)。模塊的獨(dú)立性無論是為擴(kuò)充已經(jīng)有了的系統(tǒng)、在組建新系統(tǒng)的時候都給我們帶來了非常多的方便,現(xiàn)有的模塊,作為積木式的擴(kuò)展都可以被我們充分進(jìn)行利用。。</p><p> 依照結(jié)構(gòu)化程序的設(shè)計(jì)觀點(diǎn),有三種基本程序的結(jié)構(gòu)組合: 順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu),而所有算法功能都可以通過這三種來進(jìn)行實(shí)現(xiàn)。</p><p&g
80、t; 采用"自頂向下,逐步求精"的程序設(shè)計(jì)方法以及"單入口單出口"的控制結(jié)構(gòu)是結(jié)構(gòu)化程序設(shè)計(jì)的基本思想。逐步求精和自頂而下的程序設(shè)計(jì)方法是從問題的本身開始,通過逐步細(xì)化,將解決問題的步驟分解為由基本程序結(jié)構(gòu)模塊組成的結(jié)構(gòu)化程序框圖;"單入口單出口"的思想認(rèn)為一個復(fù)雜的程序,如果它僅是由順序、選擇和循環(huán)三種基本程序結(jié)構(gòu)通過組合、嵌套構(gòu)成,那么這一個新被出來的構(gòu)造程序肯定是一個單
81、入口單出口的程序。根據(jù)這個編寫出結(jié)構(gòu)良好和易于調(diào)試的程序來就變得非常容易。</p><p> 整體思路清楚,目標(biāo)明確。</p><p> 設(shè)計(jì)工作中階段性非常強(qiáng),有利于系統(tǒng)開發(fā)的總體管理和控制。</p><p> 在系統(tǒng)分析時可以診斷出原系統(tǒng)中存在的問題和結(jié)構(gòu)上的缺陷。</p><p> 本系統(tǒng)軟件主要是采用模塊化形式的結(jié)構(gòu),由鍵盤掃
82、描及其識別子程序,主程序模塊以及掉電存儲服務(wù)程序來進(jìn)行顯示子程序。</p><p><b> 4.2 主程序設(shè)計(jì)</b></p><p><b> (1)主程序模塊</b></p><p> 主程序主要是完成設(shè)置中斷向量、初始化并驗(yàn)證是否有按鍵按下,以及調(diào)用顯示等。當(dāng)初始化的時候系統(tǒng)便會自動等待其輸入的密碼,如果過程
83、中操作錯誤就會產(chǎn)生報(bào)警的提示并且對各個位置進(jìn)行清零,然后等待密碼再一次的輸入;如果密碼輸入是正確的,那么在輸完密碼之后等待按下ENTER按鍵,然后再判斷密碼正確與否,若密碼錯誤就會報(bào)警并且再次讓各個位置密碼清零;如果輸入密碼正確其就會自動開行開鎖操作然后等就會亮起。</p><p> 圖4.2為程序流程圖: </p><p> 圖4.2 程序流程圖</p><p&
84、gt; 在本次系統(tǒng)程序的設(shè)計(jì)當(dāng)中,其中主控模塊只是根據(jù)消息調(diào)用相對應(yīng)模塊的處理函數(shù),具體處理這些消息是由各個功能模塊當(dāng)中對應(yīng)的程序所決定的。</p><p> 4.3 鍵盤掃描及識別子程序設(shè)計(jì)</p><p> 鍵盤是運(yùn)用查詢的方式,把其放入主程序當(dāng)中,如果確認(rèn)沒有按鍵按下的時候,單片機(jī)循環(huán)主程序,但是如果有按鍵按下,那么就會轉(zhuǎn)向相對應(yīng)的子程序之中處理,處理完之后然后再返回。它的程序
85、流程圖如4.1所示。</p><p> 圖4.1鍵盤掃描及識別子程序</p><p> 4.4 顯示子程序設(shè)計(jì)</p><p> 因?yàn)槭欠制溜@示數(shù)據(jù)的緣故,所以我們就要用到4個顯示子程序,這4個子程序分別為:關(guān)閉狀態(tài)顯示子程序、開鎖狀態(tài)顯示子程序、密碼輸入及其修改狀態(tài)顯示子程序、密碼輸入錯誤之后的提示子程序。</p><p><b
86、> 程序流程圖:</b></p><p> 圖4.2 程序流程圖</p><p> 以下為主要修改密碼以及開鎖等C語言程序:</p><p> void Alam_KeyUnable(void)</p><p><b> {</b></p><p><b>
87、 P1=0x00;</b></p><p><b> {</b></p><p> ALAM=~ALAM;</p><p> Delay5Ms();</p><p><b> }</b></p><p><b> }</b><
88、/p><p> //================取消所有操作=====================================</p><p> void Cancel(void)</p><p><b> {</b></p><p> unsigned char i;</p><p
89、> unsigned char j;</p><p> //DisplayListChar(0, 1, start_line); </p><p> write_1602com(er);</p><p> for(j=0;j<16;j++)</p><p><b> {</b></p>
90、<p> write_1602dat(start_line[j]);</p><p><b> }</b></p><p> TwoAlam();//提示音</p><p> for(i=0;i<6;i++)</p><p><b> {</b></p&g
91、t;<p> InputData[i]=0;</p><p><b> }</b></p><p> KEY=1;//關(guān)閉鎖</p><p> ALAM=1;//報(bào)警關(guān)</p><p> operation=0;//操作標(biāo)志位清零</p><p>
92、 pass=0;//密碼正確標(biāo)志清零</p><p> ReInputEn=0;//重置輸入充許標(biāo)志清零</p><p> ErrorCont=0;//密碼錯誤輸入次數(shù)清零</p><p> CorrectCont=0;//密碼正確輸入次數(shù)清零</p><p> ReInputCont=0;//重置
93、密碼輸入次數(shù)清零 </p><p> open_led=1;</p><p> s3_keydown=0;</p><p> key_disable=0;</p><p> N=0;//輸入位數(shù)計(jì)數(shù)器清零</p><p><b> }</b></p><p&
94、gt; 第5章 系統(tǒng)仿真與調(diào)試</p><p> 5.1 Proteus仿真平臺</p><p> Proteus的簡介:Proteus軟件是英國Lab center electronics公司出版的EDA工具軟件(該軟件中國總代理為廣州風(fēng)標(biāo)電子技術(shù)有限公司)。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機(jī)及外圍器件。它是目前最好的仿真單片機(jī)及外圍器件的工具。雖然目前國內(nèi)推廣
95、剛起步,但已受到單片機(jī)愛好者、從事單片機(jī)教學(xué)的教師、致力于單片機(jī)開發(fā)應(yīng)用的科技工作者的青睞。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計(jì),真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。是目前世界上唯一將電路仿真軟件、PCB設(shè)計(jì)軟件和虛擬模型仿真軟件三合一的設(shè)計(jì)平臺,其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM
96、、8086和MSP430等,2010年又增加了Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Kevil和MPLAB等多種編譯器。</p><p> 在該設(shè)計(jì)當(dāng)中,我們是利用Proteus來進(jìn)行仿真的。</p><p><b> 這款軟件的特點(diǎn):</b></p><p> (1)把PCB自動或人工
97、布線設(shè)計(jì)、集成原理圖設(shè)計(jì)以及SPICE電路仿真互為一體,徹底的實(shí)現(xiàn)從概念到產(chǎn)品的完整開發(fā)。</p><p> ?。?)具有單步、設(shè)置斷點(diǎn)、全速等多種形式的調(diào)試功能。</p><p> (3)用戶甚至可以實(shí)時采用諸如RAM,ROM,鍵盤,馬達(dá),LED,LCD,AD/DA,部分SPI器件,部分IIC器件。</p><p> ?。?)可以仿真51系列、AVR、PIC、A
98、RM、等常用主流單片機(jī)。還可以直接在基于原理圖的虛擬原型上編程,再配合顯示及輸出,能看到運(yùn)行后輸入輸出的效果。配合系統(tǒng)配置的虛擬邏輯分析儀、示波器等,Proteus建立了完備的電子設(shè)計(jì)開發(fā)環(huán)境。</p><p> ?。?)具備強(qiáng)大的原理圖直到PCB板子設(shè)計(jì)的功能,可以輸出設(shè)計(jì)報(bào)表,并且形式各異。</p><p><b> 5.2 電路仿真</b></p>
99、<p> Proteus軟件有其自己攜帶的編輯器,能夠?qū)崿F(xiàn)對匯編程序的編譯,主要操作步驟為:</p><p> (1)新建源文件:點(diǎn)擊菜單Source→Add/Remove source Files在出現(xiàn)的對話框之中,然后選擇ASEM51編輯器,新建lock.asm源文件。</p><p> (2)程序設(shè)計(jì):點(diǎn)擊菜單Source→lock.asm打開源文件編輯器,將附錄
100、程序輸入到文本中。 </p><p> (3)源程序編譯:點(diǎn)擊菜單Source→Build ALL編譯匯編源程序,生成目標(biāo)代碼文件;LOCK.HEX,如果編譯失敗,那么就對程序進(jìn)行修改調(diào)試直到編譯成功為止。</p><p> (4)加載目標(biāo)代碼:在PROTEUS編輯環(huán)境雙擊AT89C51,彈出如圖5-1所示的對話框,在PROGRAM FILE一欄中單擊打開按鈕,選中文件中的LOCK.H
101、EX文件。在CLOCK FREQUENCY欄中設(shè)置系統(tǒng)工作頻率為12MHz,單擊OK完成目標(biāo)代碼加載。</p><p> 圖 5.1 程序代碼加載</p><p> 最后鼠標(biāo)點(diǎn)擊運(yùn)行按鍵,把系統(tǒng)仿真進(jìn)行啟動,如圖所示,電機(jī)和定時器都處于初始化狀態(tài)。具體如下:</p><p> 電子密碼鎖啟動時,系統(tǒng)提示:“Input code”,即提示請輸入密碼,如圖5.2所
102、示。</p><p> 圖5.2 系統(tǒng)提示輸入密碼</p><p> 圖5.3 輸入密碼顯示</p><p> 其中結(jié)果顯示的是“*”來代替,主要是為了確保密碼的安全性。</p><p> 圖5.4 功能選擇菜單</p><p> 進(jìn)入功能選擇菜單后,如果按下1號鍵,LED就變亮,表示電子密碼鎖打開并退出系統(tǒng)
103、,返回如5.2所示的輸入密碼界面。如果按下2號鍵則進(jìn)入修改密碼鎖密碼的功能,下面將會介紹修改密碼部分。</p><p> 進(jìn)入功能選擇菜單并按下2號鍵后,進(jìn)入修改密碼鎖密碼的功能,提示:“Input new code”即提示輸入新密碼,如圖5.5所示。輸入6位新密碼后則提示:“Confirm new code”,即提示確認(rèn)新密碼,如圖5.6所示。如果兩次輸入的密碼一致,則顯示:“Modify code OK”,
104、即修改密碼成功,并返回如圖5.4所示的上一級功能選擇菜單;如果兩次輸入的密碼不一致,則顯示:“Modify code fail”,即修改密碼失敗,并返回如圖5.4所示的上一級功能選擇菜單。</p><p> 圖5.5 輸入新密碼</p><p> 圖5.6 確認(rèn)新密碼</p><p> 如果密碼輸入不正確,則顯示:“Input error”,即顯示輸入錯誤,然
105、后提示:“Input code again”即提示再次輸入密碼,如圖5.7所示。</p><p> 圖5.7 再次輸入密碼提示</p><p> 如果密碼輸入不正確次數(shù)超過3次則顯示:“Warning!”即提出警報(bào),如圖5.8所示,同時報(bào)警器也會發(fā)出報(bào)警聲音。系統(tǒng)這樣設(shè)計(jì)可以引起保安室注意,提高了家居的安全性。</p><p> 圖5.8 系統(tǒng)發(fā)出警報(bào)<
106、/p><p> 如果用戶忘記了密碼,則可以在系統(tǒng)啟動前按下密碼復(fù)位按鈕,系統(tǒng)啟動后就可以把密碼恢復(fù)為出廠值000000,然后把密碼復(fù)位按鈕彈起(特別注意:這一步一定要做,否則每次系統(tǒng)啟動后,密碼都會被恢復(fù)為出廠值,就算你修改了密碼也無效)。</p><p> 如果鎖打開以后,LED燈會自動亮起,具體仿真結(jié)果如圖5.9所示:</p><p><b> 圖5
107、.9仿真結(jié)果</b></p><p> 5.3 仿真結(jié)果分析和過程</p><p> 從5.2模塊的仿真可以看出基于單片機(jī)的電子密碼鎖設(shè)計(jì)運(yùn)用Proteus軟件可以非常好的實(shí)現(xiàn)出來。</p><p> 當(dāng)然,在本次仿真的過程中也暴露出自己操作中的很多缺點(diǎn)以及問題,比方說沒有很好更及時的找出程序當(dāng)中出現(xiàn)的一些細(xì)小的錯誤而導(dǎo)致程序的執(zhí)行和編譯怎么都無法
108、實(shí)現(xiàn);又比如因?yàn)榉抡孢^程中操作不正確而導(dǎo)致屏幕被鎖定;比如信號仿真出現(xiàn)了問題等等。諸如之類的問題,之后經(jīng)過老師和同學(xué)的熱心幫助以及自己的緩慢摸索,才逐一得到了解決,雖說還有很多不懂的地方,但是得到的更多,對Proteus仿真又有了重新的認(rèn)識。</p><p> 當(dāng)開始運(yùn)行仿真的時候,每一個位置的模塊都處于初始的狀態(tài)。按鍵如果輸入的密碼正確,則燈亮;按鍵輸入的密碼錯誤,則報(bào)警器會報(bào)警。所以,從本次仿真的結(jié)果可以看
109、出已經(jīng)達(dá)到了所預(yù)期仿真的效果。</p><p><b> 小結(jié)</b></p><p> 本次設(shè)計(jì)主要基于經(jīng)濟(jì)實(shí)用的方面出發(fā),采用美國Atmel的單片機(jī)AT89C51作為主控芯片和外圍的鍵盤相結(jié)合,然后進(jìn)行4*4鍵盤輸入、喇叭報(bào)警、LCD顯示、直到最后開鎖,用C語言進(jìn)行編寫主控芯片的控制程序,并且能夠?qū)崿F(xiàn)設(shè)置密碼、修改密碼、清楚密碼以及報(bào)警等功能。本文所設(shè)計(jì)的電子
110、密碼鎖為了防止密碼被竊取,在輸入密碼時候在LCD屏幕上顯示*號,大大增強(qiáng)了其保密性。本密碼鎖具備報(bào)警功能,當(dāng)輸入密碼錯誤時蜂鳴器響并且LED燈會亮起。通過最后的仿真,本電子密碼鎖已經(jīng)達(dá)到了所給的要求。 </p><p> 該系統(tǒng)已經(jīng)能夠滿足基本的工作需要,可以適應(yīng)于一般電子密碼鎖的應(yīng)用場合,同時對于那些仍然使用機(jī)械密碼鎖的場合也將是一個很好的換代產(chǎn)品。</p><p> 電子鎖
111、是信息化時代發(fā)展的產(chǎn)物,應(yīng)時而生,相信隨著科技的不斷發(fā)展,將來的電子鎖一定更加完美,更加人性化,更加便宜以及安全可靠。</p><p><b> 致謝</b></p><p> 在本次論文設(shè)計(jì)過程中,葉老師對該論文從選題到構(gòu)思以及最后定稿的各個環(huán)節(jié)給予了細(xì)心指引與教導(dǎo),使本人得以最終完成畢業(yè)論文設(shè)計(jì),在此表示衷心的感謝。在她的精心指導(dǎo)和嚴(yán)格要求下,獲得了豐富理論知
112、識,極大地提高了實(shí)踐能力,并對當(dāng)前電子領(lǐng)域的研究狀況和發(fā)展方向有了一定的了解。此外在學(xué)習(xí)中,老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度、豐富淵博的知識、敏銳的學(xué)術(shù)思維、精益求精的工作態(tài)度以及誨人不倦的師者風(fēng)范是我終生學(xué)習(xí)的楷模。另外在完成畢業(yè)設(shè)計(jì)的過程中,還得到了眾多同學(xué)的關(guān)心支持和幫助,是你們在我平時設(shè)計(jì)中和我一起探討問題,并指出我設(shè)計(jì)上的誤區(qū),使我能夠及時的發(fā)現(xiàn)問題把設(shè)計(jì)順利的進(jìn)行下去,沒有你們的幫助我不可能這樣順利地結(jié)稿,在此,謹(jǐn)向老師同學(xué)和朋友致以衷心
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)論文---基于單片機(jī)的電子密碼鎖設(shè)計(jì)
- 基于單片機(jī)的電子密碼鎖畢業(yè)論文
- 畢業(yè)論文---基于單片機(jī)的電子密碼鎖
- 畢業(yè)論文---基于單片機(jī)的電子密碼鎖設(shè)計(jì)
- 基于單片機(jī)的電子密碼鎖的設(shè)計(jì)-畢業(yè)論文
- 基于單片機(jī)的電子密碼鎖的設(shè)計(jì)畢業(yè)論文
- 基于單片機(jī)的電子密碼鎖的設(shè)計(jì)【畢業(yè)論文】
- 基于單片機(jī)電子密碼鎖設(shè)計(jì)畢業(yè)論文
- 基于單片機(jī)紅外遙控電子密碼鎖畢業(yè)論文
- 畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的電子密碼鎖設(shè)計(jì)
- 基于單片機(jī)的紅外遙控密碼鎖設(shè)計(jì)-紅外遙控密碼鎖畢業(yè)論文
- 基于單片機(jī)的電子密碼鎖畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)的電子密碼鎖
- 基于單片機(jī)的電子密碼鎖設(shè)計(jì)
- 畢業(yè)論文——基于單片機(jī)的指紋識別電子密碼鎖
- 精品畢業(yè)論文基于單片機(jī)電子密碼鎖的設(shè)計(jì)
- 基于單片機(jī)的電子密碼鎖的的設(shè)計(jì)論文
- 基于單片機(jī)的電子密碼鎖設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)----基于單片機(jī)的電子密碼鎖
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)的電子密碼鎖設(shè)計(jì)
評論
0/150
提交評論