電子密碼鎖 課程設(shè)計說明書

上傳人:仙*** 文檔編號:30164926 上傳時間:2021-10-09 格式:DOC 頁數(shù):30 大?。?.22MB
收藏 版權(quán)申訴 舉報 下載
電子密碼鎖 課程設(shè)計說明書_第1頁
第1頁 / 共30頁
電子密碼鎖 課程設(shè)計說明書_第2頁
第2頁 / 共30頁
電子密碼鎖 課程設(shè)計說明書_第3頁
第3頁 / 共30頁

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《電子密碼鎖 課程設(shè)計說明書》由會員分享,可在線閱讀,更多相關(guān)《電子密碼鎖 課程設(shè)計說明書(30頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、桂林電子科技大學(xué)課程設(shè)計報告用紙 第4頁 共4頁 課程設(shè)計(論文)說明書題 目: * 院 (系): 信息與通信學(xué)院 專 業(yè): 電子信息工程 學(xué)生姓名: 學(xué) 號: 指導(dǎo)教師: 職 稱: 2011 年 12 月 6 日摘 要 在我們的日常生活中,門鎖扮演著一個重要的角色。無論是在住宅還是辦公室中,門鎖保衛(wèi)著我們的人身和相關(guān)隱私的安全。隨著社會的發(fā)展,人們對鎖的要求也越來越高,除了安全性之外,更要求鑰匙的便攜性和使用方便。傳統(tǒng)的機(jī)械鎖卻有著明顯的缺點,門鎖易遭專業(yè)工具破壞,鑰匙易丟失和被復(fù)制等等。在這樣的背景下,電子密碼鎖應(yīng)運而生,彌補(bǔ)了機(jī)械鎖的缺陷,也滿足了人們的高要求。對于電子密碼鎖,其具有安全

2、性高、成本低、功耗低、易操作等優(yōu)點,帶防盜報警的電子密碼鎖更是有逐漸取代機(jī)械防盜鎖的趨勢。基于以上思路,并從經(jīng)濟(jì)實用的角度出發(fā),本設(shè)計使用AT89C51實現(xiàn)一基于單片機(jī)的電子密碼鎖的設(shè)計,結(jié)合外圍的鍵盤輸入、LCD顯示、報警、開鎖、GSM模塊等。其具有以下功能特點:具有友好的顯示界面,可以提供豐富的提示信息;具有時間顯示功能,掉電后密碼不丟失的特性;在輸錯3次密碼的情況下,會鎖定鍵盤和發(fā)出聲音報警,還可以擴(kuò)展GSM短信報警功能,通知遠(yuǎn)程用戶;具備密碼找回功能,當(dāng)用戶忘記自己所設(shè)定的密碼時,可以根據(jù)密碼鎖所發(fā)過來的短信信息,將其輸入進(jìn)密碼鎖中,若經(jīng)過確認(rèn)是正確答案,便可設(shè)定新密碼和問題的答案。關(guān)

3、鍵詞:單片機(jī);液晶顯示;鍵盤;電子密碼鎖;GSMAbstractIn our daily life,the door lock playing an important role to protect us.Whaterever in residential or office,the door lock defends our security and related personal privacy. With the development of the society, people has higher requirement for the lock. In addition to

4、 the security, people require the keys have portability and the convenience of use. The traditional mechanical lock has obvious disadvantages, door lock is easy damaged by professional tools, and the key is easily lose and copied, and so on. In this background, electronic lock came into being,It mak

5、es up the defects of the mechanical lock, also meet the high demands of the people.For electronic coded lock, it has the advantages of high safety, low cost, low power consumption, easy operation, etc. The electronic lock with anti-theft alarm but also has a tendency to gradually replace the mechani

6、cal anti-theft lock. Based on the above ideas, and from the perspective of economic and practical, This design uses AT89C51 implement a microcontroller-based design of electronic locks.It combined with the external keyboard, LCD display, alarm, unlock and GSM circuit modules. Its function has the fo

7、llowing characteristics:It has friendly display interface and can provide rich prompt message.It has the function of display the current time,and wouldnt lost the stored information when power is off. In case of inputting the wrong password 3 times, it would lock the keyboard and sound the alarm. It

8、 also can extend the GSM SMS alarm function, and inform the remote user.On the other hand,the design has password recover function.When the user forgot the password,he can according the SMS which send by the electronic lock,and input the information into the electronic lock.If the information is cor

9、rect after the confirmation,you can set a new password or the new answer to the question.Key words:Single Chip Microcomputer;LCD Display;Keyboard;Elcetronic Coded Lock;GSM目 錄引言11 緒論11.1 電子密碼鎖的研究意義11.2 電子密碼鎖的應(yīng)用與前景21.3 本設(shè)計的特點22 系統(tǒng)整體方案設(shè)計32.1 設(shè)計目標(biāo)與框圖32.2 主控部分的選擇42.3 整體設(shè)計思路43 硬件系統(tǒng)設(shè)計43.1 系統(tǒng)芯片介紹43.1.1 單片機(jī)A

10、T89C51功能介紹43.1.2 時鐘芯片DS1302介紹73.1.3 AT24C08存儲芯片83.1.4 LCD1602顯示模塊93.1.5 TC35i GSM模塊103.2 硬件設(shè)計113.2.1 復(fù)位電路113.2.2 晶振電路123.2.3 鍵盤電路123.2.4 LCD顯示電路133.2.5 DS1302時鐘芯片電路133.2.6 AT24C08存儲電路143.2.7 報警電路153.2.8 開鎖電路153.2.9 TC35I GSM模塊163.3.0 電源模塊164 軟件程序設(shè)計164.1 主程序流程圖174.2 找回密碼程序184.3 鍵盤掃描程序184.4 Proteus仿真1

11、95 總結(jié)20謝 辭22參考文獻(xiàn)23附 錄24桂林電子科技大學(xué)課程設(shè)計(論文)報告用紙 第25頁 共56頁引言 隨著科技的發(fā)展,在當(dāng)今的社會上,人們越來越重視對安全的需求,而且要求也越來越高,無論是對人身,財產(chǎn)還是個人隱私,幾乎所有的一切都與安全掛上鉤。日常生活和工作中, 住宅與部門的安全防范、單位的文件檔案、財務(wù)報表以及一些個人資料的保存多以加鎖的辦法來解決。若使用傳統(tǒng)的機(jī)械式鑰匙開鎖,人們常需攜帶多把鑰匙, 使用極不方便, 且鑰匙丟失后安全性即大打折扣。此外,傳統(tǒng)的機(jī)械鎖,由于有鎖孔在外,也給盜賊的破壞帶來可乘之機(jī),可以使用一些專門的開鎖工具進(jìn)行開鎖。在安全技術(shù)防范領(lǐng)域,隨著單片機(jī)的問世,

12、出現(xiàn)了帶微處理器的密碼鎖,它除具有電子密碼鎖的功能外,還引入了智能化、科技化等功能,從而使密碼鎖具有很高的安全性、可靠性。電子密碼鎖帶來了無鑰匙的解決方案,使得人們的出行也更加的方便,也解決了密碼丟失而導(dǎo)致的各種各樣問題,同時也防止了鑰匙的復(fù)制問題。從目前的技術(shù)水平和市場認(rèn)可程度看,使用最為廣泛的是鍵盤式電子密碼鎖。在科學(xué)技術(shù)不斷發(fā)展的今天,電子密碼防盜鎖作為防盜衛(wèi)士的作用也日趨重要。電子密碼鎖是集計算機(jī)技術(shù)、電子技術(shù)、數(shù)字密碼技術(shù)為一體的機(jī)電一體化高科技產(chǎn)品,具有安全性高,使用方便等優(yōu)點。 因而現(xiàn)在的電子鎖的主要趨勢是形式多樣化,開鎖的認(rèn)證越來越縝密化,使用更人性化。如何盡可能的降低生產(chǎn)成本

13、,并制造出符合人們使用習(xí)慣的電子密碼鎖,是如今的研究方向。而本文以單片機(jī)作為主要的設(shè)計,正是遵從了成本盡可能低,而達(dá)到主要日常功能的一個思想。 本設(shè)計具有較高性價比的密碼鎖,價格低廉而實用。以單片機(jī)作為主控的解決方案,鍵盤、顯示、報警電路、執(zhí)行開鎖機(jī)構(gòu)等部分構(gòu)成。其中密碼由鍵盤輸入端口輸入,解碼正確條件下,輸出開鎖電平,控制電控鎖開啟。同時還具有多次輸錯報警,鎖定鍵盤,超時輸入自動返回主界面等功能,還可擴(kuò)展GSM短信報警功能。1 緒論 電子密碼鎖簡而言之就是一種普通而實用的鎖,只不過其由機(jī)械開鎖轉(zhuǎn)變成了其他觸發(fā)形式的開鎖,因而更具有安全性。本章則主要介紹的是本設(shè)計的一些特點以及電子密碼鎖的一些

14、背景和主要市場應(yīng)用前景。1.1 電子密碼鎖的研究意義 鎖是置于可啟閉的器物上,用以關(guān)住某個確定的空間范圍或某種器具的,必須以鑰匙或暗碼打開的扣件。鎖具發(fā)展到現(xiàn)在已有若干年的歷史了,人們對它的結(jié)構(gòu)、機(jī)理也研究得很透徹,因此,不用鑰匙就能打開的方法和工具也層出不窮?,F(xiàn)代人類文明社會里,由于社會中各種矛盾沖突十分劇烈,人們的思想道德觀念,價值觀念,文化修養(yǎng)水平等差異,群眾中良莠不齊,那些毫無道德觀念的盜賊卻想方設(shè)法利用高科技手段撬門開鎖,使廣大居民防不勝防。因為傳統(tǒng)鎖具都存在致命的弱點: 第一、 鎖芯采用常見的銅、鋁、鋅等材料,抵抗不了強(qiáng)力破壞; 第二、 鎖具制作工藝,技術(shù)落后,無法阻止技術(shù)手段的開

15、啟。 目前,市場上很多國內(nèi)外的鎖具,實際上都不具備真正的防盜功能。在慣偷面前,兩根鋼絲或幾件簡單的工具就可以把這些鎖打開,有的慣偷甚至公開揚言:“沒有我打不開的鎖?!逼鋵?,不是他們多高明,而是一般鎖具技術(shù)原理太過簡單。面對這一殘酷的現(xiàn)狀,新時代提出了鎖具必須革命的迫切的要求。 因而對于電子密碼鎖的研究在生活中有著重要的意義,同時也是門鎖發(fā)展歷史上必須經(jīng)歷的一個替代過程。1.2 電子密碼鎖的應(yīng)用與前景 出于安全、方便等方面的需要,許多電子密碼鎖已相繼問世,例如磁卡鎖、聲控鎖、指紋識別、IC 卡識別等等。但這類產(chǎn)品的特點是針對特定有效卡、指紋或聲音有效,且不能實現(xiàn)遠(yuǎn)程控制,只能適合于保密要求高且僅

16、供個人使用的箱、柜、房間等。而且卡片式IC 卡還有易丟失等特點,加上其成本一般較高,一定程度上限制了這類產(chǎn)品的普及和推廣。 電子密碼鎖產(chǎn)品前景廣泛,可應(yīng)用于家用及商用防盜門、保險柜,汽車,軍事等領(lǐng)域,目前,在西方發(fā)達(dá)國家,電子密碼鎖技術(shù)相對先進(jìn),種類齊全,電子密碼鎖已經(jīng)被廣泛應(yīng)用于智能門禁系統(tǒng)中,通過多種更加安全,更加可靠的技術(shù)實現(xiàn)大門的管理。我國電子鎖整體水平尚處于國際上70年代左右,電子密碼鎖的成本還比較高,市場上仍以按鍵電子鎖為主,但假以時日定能與西方發(fā)達(dá)國際起頭并進(jìn)。 1.3 本設(shè)計的特點 本設(shè)計采用了以AT89C51單片機(jī)為微處理器的方案,單片機(jī)是常見的器件,而價格較為便宜,且足以勝

17、任處理密碼比對以及修改的處理工作。電源采用的是12V和5V直流電源,因為市面上大多數(shù)電磁鎖的驅(qū)動電壓都是在12V,可以提供足夠的驅(qū)動力。為防止斷電后密碼隨之丟失的問題,本次設(shè)計則采用了AT24C08的EEPROM的存儲器件,其具有快速的反復(fù)讀寫功能,容量也達(dá)到1K,因此滿足了本設(shè)計對于密碼的讀寫和掉電防丟失的要求。顯示模塊采用了LCD1602模塊,能夠顯示16x2的英文字符,對于本系統(tǒng)中的操作信息提示,可以充分的顯示出來,以達(dá)到簡單易用,上手即會,界面友好的功能。此外,為了貼近生活化,增加了時鐘電路,可以在主界面上顯示當(dāng)前的日期以及時間,相當(dāng)于一個萬年歷的功能,并且即使在斷電后,仍然能夠繼續(xù)走

18、時,用戶不必?fù)?dān)心時間重新調(diào)整的問題。為了使功能更加全面,增加了GSM模塊,可達(dá)到遠(yuǎn)程短信報警功能,當(dāng)輸錯密碼次數(shù)達(dá)到三次時便會發(fā)送報警短信,使得即使遠(yuǎn)在外地的主人也可了解目前最新的安全狀況。 上述是本設(shè)計的硬件方面的一些特點,而對于軟件功能的實現(xiàn)上,則具有以下的特征: (1)密碼隱私的保護(hù):在用戶輸入密碼的時候,LCD顯示屏上不會直接顯示明文的數(shù)字密碼,而是以*號來遮擋,保護(hù)了用戶在輸入時的密碼的安全性。 (2)設(shè)定密碼的長度:用戶可以自行設(shè)定1-8位的密碼,從而使得非法進(jìn)入可能性達(dá)到最小,即無法判斷出密碼的長度及其排列組合。然而出于對用戶的安全性上的考慮,我們推薦使用6位以上的密碼。 (3)

19、報警和鎖定鍵盤輸入:本設(shè)計最多允許3次密碼輸入錯誤,當(dāng)未授權(quán)的人士輸錯3次密碼的時候,鎖自身會發(fā)出警報并且鎖定鍵盤30秒,防止其連續(xù)性的嘗試輸入,更好的達(dá)到防盜要求。 (4)密碼的遺忘和找回:當(dāng)用戶忘記了密碼的時候,本機(jī)具有找回密碼的功能。在用戶連續(xù)輸入錯誤達(dá)到3次時,鍵盤為鎖定狀態(tài),而此時只有用戶知道有一個鍵是“找回密碼”的按鍵。用戶可以按下此鍵,并根據(jù)所提問題回答出正確答案,便能達(dá)到下一步,選擇修改密碼或者問題的答案,并可以擴(kuò)展至GSM發(fā)送短信找回密碼。 (5)密碼的設(shè)定:用戶要想達(dá)到修改密碼的功能,必需得先輸入之前設(shè)定的舊密碼,如果輸入錯誤是不能進(jìn)入修改密碼的界面的,同時也有3次輸錯的鍵

20、盤鎖定。新密碼的設(shè)定,則需進(jìn)行兩次確認(rèn),防止用戶誤操作而導(dǎo)致的問題。 (6)界面友好:主界面顯示當(dāng)前時間和日期;當(dāng)有按下任意數(shù)字鍵時,便會進(jìn)入輸入密碼的界面,輸入完整后下確認(rèn)鍵,將會開鎖;基本上每個操作步驟都有提示信息。 (7)遠(yuǎn)程報警:增加了GSM短信報警模塊,當(dāng)有人企圖嘗試輸入密碼并且錯誤次數(shù)達(dá)到三次時,密碼鎖將會發(fā)送報警短信至主人的手機(jī)上,從而得知遠(yuǎn)程密碼鎖此時的狀態(tài),主人便能采取相應(yīng)措施,或立即回家處理或打電話報警。2 系統(tǒng)整體方案設(shè)計2.1 設(shè)計目標(biāo)與框圖 本設(shè)計的目標(biāo)是完成任務(wù)書中的基本要求,即可以實現(xiàn)時間日期的顯示,密碼的輸入與確認(rèn),修改已設(shè)定的密碼,超次數(shù)輸入錯誤鎖定鍵盤并有聲

21、音報警。除此之外,為了擴(kuò)展功能與貼近實際生活,還增加了GSM短信遠(yuǎn)程報警和找回密碼的功能,其中的密碼找回功能,是指密碼鎖發(fā)送驗證短信至用戶手機(jī)上,以找回遺忘的密碼。 本設(shè)計所使用的模塊主要有:矩陣鍵盤輸入模塊,LCD1602顯示模塊,AT24C08掉電存儲模塊,時鐘電路,復(fù)位電路,GSM模塊等等。其框圖如圖1所示。 圖1 系統(tǒng)框圖2.2 主控部分的選擇 本設(shè)計采用的主控部分是常見的單片機(jī)AT89C51,實現(xiàn)控制與處理的功能。單片機(jī)具有資源豐富、速度快、編程容易等優(yōu)點。利用單片機(jī)內(nèi)部的隨機(jī)存儲器(RAM)和只讀存儲器(ROM)及其引腳資源,外接液晶顯示(LCD),鍵盤輸入等實現(xiàn)數(shù)據(jù)的處理傳輸和顯

22、示功能,基本上能實現(xiàn)設(shè)計指標(biāo)。 此外,根據(jù)一些參考資料,電子密碼鎖還可以用數(shù)字邏輯電路的方式來實現(xiàn),但是該方案的擴(kuò)展空間有限,功能上也有局限性,不如選擇單片機(jī)AT89C51的方案更全面,單片機(jī)靈活的編程設(shè)計和豐富的IO端口,及其控制的準(zhǔn)確性,不但能實現(xiàn)基本的密碼鎖功能,還能添加溫度顯示、時間顯示甚至添加遙控控制功能。 綜上所述,本次設(shè)計優(yōu)先選擇了以單片機(jī)作為主控的方案。2.3 整體設(shè)計思路由于日常的密碼形式都采用數(shù)字格式,便于用戶的輸入和記憶,因而使用了4*4的矩陣鍵盤,用線反轉(zhuǎn)法檢測用戶輸入的鍵值,其在單片機(jī)上也僅使用了8個I/O口,節(jié)省管腳資源,符合本次設(shè)計;而顯示部分采用LCD1602模

23、塊,可以顯示2行和每行16個英文字符,滿足顯示要求,而且也僅占用11個單片機(jī)I/O口,操作命令也較為簡單;報警電路采用有源蜂鳴器,報警時只需控制單片機(jī)的一個I/O口的高低電平,便能達(dá)到目的。電源電路,可以采用5V直流電壓工作,也可使用12V直流電壓工作。本設(shè)計中有將12V降至5V的穩(wěn)壓電路,以滿足單片機(jī)的工作需求,當(dāng)使用12V電壓時,可以給電磁鎖供給12V的電壓,因為多數(shù)電磁鎖使用這個數(shù)值。單獨留出單片機(jī)的串口,可以擴(kuò)展功能,本設(shè)計為了拓展其他功能,使用串口RXD,TXD與GSM模塊通信,實現(xiàn)了三次輸錯密碼短信報警功能。為了顯示時間與日期,采用DS1302時鐘芯片,此芯片封裝為8腳,其中的3個

24、管腳負(fù)責(zé)與單片機(jī)通信,既節(jié)省資源又滿足需求。而掉電存儲密碼的芯片為AT24C08,其有高達(dá)1K的空間,并使用I2C總線形式與單片機(jī)通信,簡單而實用,保護(hù)了用戶的密碼安全??傮w上說,本設(shè)計的方案簡潔而實用性強(qiáng),遵循了盡可能減少成本和占用單片機(jī)I/O口的原則,同時也可使得元器件的擺放更為合理。3 硬件系統(tǒng)設(shè)計 3.1 系統(tǒng)芯片介紹3.1.1 單片機(jī)AT89C51功能介紹 AT89C51是美國ATMEL公司生產(chǎn)的低電壓,高性能CMOS8位單片機(jī),片內(nèi)含4K bytes的可反復(fù)擦寫的只讀程序存儲器(EPROM)和128bytes的隨機(jī)存取數(shù)據(jù)序存器(RAM),器件采用ATMEL公司的高密度/非易失性存

25、儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器(CPU)和FLASH存儲單元,AT89C51單片機(jī)為許多嵌入式控制系統(tǒng)提供了一種靈活行高且價廉的方案。 AT89C51提供以下標(biāo)準(zhǔn)功能:128字節(jié)內(nèi)部RAM,32個I/O口線,兩個16位定時器/計數(shù)器,一個5向量兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。同時,AT89C51可降至0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式??臻e方式停止CPU的工作,但允許RAM,定時/計數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內(nèi)容,但振蕩器停止工作并禁止其他所有部件工作直到下一個硬件復(fù)位。以下AT8

26、9C51具體的管腳功能介紹,管腳如圖2所示。圖2 AT89C51管腳圖 VCC:供電電壓。 GND:接地。 P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗時,P0輸出原碼,此時P0外部必須被拉高。 P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的

27、緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。 P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當(dāng)P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進(jìn)行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進(jìn)行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。 P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I

28、/O口,可接收輸出4個TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。 P3口也可作為AT89C51的一些特殊功能口,如表1所示: 端口 其他功能 說明 P3.0 RXD 串行口的接收引腳 P3.1 TXD 串行口的傳送引腳 P3.2 INT0 INT0中斷輸入 P3.3 INT1 INT1中斷輸入 P3.4 T0 Timer0輸入 P3.5 T1 Timer1輸入 P3.6 WR 寫入外部存儲器控制引腳 P3.7 WD 讀取外部存儲器控制引腳 表1 AT89C51的P3口特殊功能RST:復(fù)位

29、輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機(jī)器周期的高電平時間。ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。 PSEN:外部程序存儲器的選通信號

30、。在由外部程序存儲器取指期間,每個機(jī)器周期兩次PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的PSEN信號將不出現(xiàn)。 EA/VPP:當(dāng)EA保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時,此間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。 XTAL2:來自反向振蕩器的輸出。3.1.2 時鐘芯片DS1302介紹 DS1302 是美國DALLAS公司推出的一種高性能、低功耗、帶RAM的實時時

31、鐘電路,它可以對年、月、日、周日、時、分、秒進(jìn)行計時,具有閏年補(bǔ)償功能,工作電壓為2.5V5.5V。采用三線接口與CPU進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號或RAM數(shù)據(jù)。DS1302內(nèi)部有一個318的用于臨時性存放數(shù)據(jù)的RAM寄存器。DS1302是DS1202的升級產(chǎn)品,與DS1202兼容,但增加了主電源/后背電源雙電源引腳,同時提供了對后背電源進(jìn)行涓細(xì)電流充電的能力。 (1) 引腳功能及結(jié)構(gòu) 圖3示出DS1302的引腳排列,其中VCC1為后備電源,VCC2為主電源。在主電源關(guān)閉的情況下,也能保持時鐘的連續(xù)運行。DS1302由VCC1或VCC2兩者中的較大者供電。當(dāng)VCC2

32、大于VCC10.2V時,VCC2給DS1302供電。當(dāng)Vcc2小于VCC1時,DS1302由Vcc1供電。X1和X2是振蕩源,外接32.768kHz晶振。RST是復(fù)位/片選線,通過把RST輸入驅(qū)動置高電平來啟動所有的數(shù)據(jù)傳送。RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng)RST為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對DS1302進(jìn)行操作。如果在傳送過程中RST置為低電平,則會終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。上電運行時,在VCC2.5V之前,RST必須保持低電平。只有在SCLK為低電平時,才能將RS

33、T置為高電平。I/O為串行數(shù)據(jù)輸入輸出端(雙向),后面有詳細(xì)說明。SCLK始終是輸入端。 圖3 DS1302引腳圖(2)DS1302的控制字節(jié) DS1302 的控制字如表2所示??刂谱止?jié)的最高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入DS1302中,位6如果為0,則表示存取日歷時鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù);位5至位1指示操作單元的地址;最低有效位(位0)如為0表示要進(jìn)行寫操作,為1表示進(jìn)行讀操作,控制字節(jié)總是從最低位開始輸出。 1RAM A4 A3 A2 A1 A0 RD 表2 DS1302的控制字節(jié)(3)數(shù)據(jù)輸入輸出(I/O) 在控制指令字輸入后的下一個SCLK時鐘的上升沿

34、時,數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從低位即位0開始。同樣,在緊跟8位的控制指令字后的下一個SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀出數(shù)據(jù)時從低位0位到高位7。 (4)DS1302的寄存器 DS1302有12個寄存器,其中有7個寄存器與日歷、時鐘相關(guān),存放的數(shù)據(jù)位為BCD碼形式,其日歷、時間寄存器及其控制字見表3。表3 日歷,時間寄存器及其控制字寄存器名 命令字取值范圍 各位內(nèi)容寫操作讀操作76543210秒寄存器80H81H 0-59CH 10SEC SEC分寄存器82H83H0-590 10MIN MIN小時寄存器84H85H01-12或00-2312/24010/APHR HR日期

35、寄存器86H87H01-28,29,30,310010DATE DATE月份寄存器88H89H 01-1200010M MOUTH周日寄存器8AH8BH 01-0700000 DAY年份寄存器8CH8DH 00-99 10YEAR YEAR此外,DS1302 還有年份寄存器、控制寄存器、充電寄存器、時鐘突發(fā)寄存器及與RAM相關(guān)的寄存器等。時鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器內(nèi)容。 DS1302與RAM相關(guān)的寄存器分為兩類:一類是單個RAM單元,共31個,每個單元組態(tài)為一個8位的字節(jié),其命令控制字為C0HFDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;另一類為突發(fā)方式下的RAM寄存器

36、,此方式下可一次性讀寫所有的RAM的31個字節(jié),命令控制字為FEH(寫)、FFH(讀)。3.1.3 AT24C08存儲芯片 AT24C08是美國Atmel公司的低功耗CMOS型E2PROM,內(nèi)含1K8位存儲空間,具有工作電壓寬(2.55.5 V)、擦寫次數(shù)多(大于10000次)、寫入速度快(小于10 ms)、抗干擾能力強(qiáng)、數(shù)據(jù)不易丟失、體積小等特點。而且他是采用了I2C總線式進(jìn)行數(shù)據(jù)讀寫的串行器件,占用很少的資源和I/O線,并且支持在線編程,進(jìn)行數(shù)據(jù)實時的存取十分方便。AT24C08中帶有的片內(nèi)地址寄存器。每寫入或讀出一個數(shù)據(jù)字節(jié)后,該地址寄存器自動加1,以實現(xiàn)對下一個存儲單元的讀寫。所有字節(jié)

37、均以單一操作方式讀取。為降低總的寫入時間,一次操作可寫入多達(dá)8個字節(jié)的數(shù)據(jù)。I2C總線是一種用于IC器件之間連接的二線制總線。它通過SDA(串行數(shù)據(jù)線)及SCL(串行時鐘線)兩根線在連到總線上的器件之間傳送信息,并根據(jù)地址識別每個器件。 AT24C08正是運用了I2C規(guī)程,使用主從機(jī)雙向通信,主機(jī)(通常為單片機(jī))和從機(jī)(AT24C08)均可工作于接收器和發(fā)送器狀態(tài)。主機(jī)產(chǎn)生串行時鐘信號(通過SCL引腳)并發(fā)出控制字,控制總線的傳送方向,并產(chǎn)生開始和停止的條件。無論是主機(jī)還是從機(jī),接收到一個字節(jié)后必須發(fā)出一個確認(rèn)信號ACK。AT24C08的控制字由8位二進(jìn)制數(shù)構(gòu)成,在開始信號發(fā)出以后,主機(jī)便會發(fā)

38、出控制字,以選擇從機(jī)并控制總線傳送的方向。 圖4 AT24C08引腳圖 圖4中AT24C08的1、2、3腳是三條地址線,用于確定芯片的硬件地址。在AT89C51試驗開發(fā)板上它們都接地,第8腳和第4腳分別為正、負(fù)電源。第5腳SDA為串行數(shù)據(jù)輸入/輸出,數(shù)據(jù)通過這條雙向I2C總線串行傳送。第7腳需要接地。AT24C08的寫操作:先由主機(jī)發(fā)送起始命令,再發(fā)送送器件地址,當(dāng)主機(jī)接收到器件的ACK應(yīng)答后,便繼續(xù)發(fā)送內(nèi)部字節(jié)地址,當(dāng)接收到ACK應(yīng)答后繼續(xù)發(fā)送數(shù)據(jù),當(dāng)8位數(shù)據(jù)發(fā)送完畢之后,主機(jī)接收到器件的ACK應(yīng)答,在發(fā)送停止信號。AT24C08的讀操作:內(nèi)部地址計數(shù)器存放著上一次訪問時最后一個地址加1的值

39、,只要芯片有電,該值就被保存。當(dāng)讀到最后頁的最后字節(jié),該地址變?yōu)?;當(dāng)讀到某頁的頁尾時,該地址轉(zhuǎn)向該頁頁首。AT24C08的具體起始和終止信號時序如圖5所示。圖5 起始信號和終止信號及應(yīng)答信號的時序3.1.4 LCD1602顯示模塊 1602液晶也叫1602字符型液晶 它是一種專門用來顯示字母、數(shù)字、符號等的點陣型液晶模塊 它有若干個5X7或者5X11等點陣字符位組成,每個點陣字符位都可以顯示一個字符。每位之間有一個點距的間隔 每行之間也有也有間隔 起到了字符間距和行間距的作用,正因為如此 所以他不能顯示圖形。1602LCD是指顯示的內(nèi)容為16X2,即可以顯示兩行,每行16個字符液晶模塊(顯示

40、字符和數(shù)字)。LCD1602采用標(biāo)準(zhǔn)的14腳(無背光)或16腳(帶背光)接口,各引腳接口說明如下表4。編號符號引腳說明編號符號引腳說明1VSS電源地9D2數(shù)據(jù)2VDD電源正極10D3數(shù)據(jù)3VL液晶顯示偏壓11D4數(shù)據(jù)4RS數(shù)據(jù)/命令選擇12D5數(shù)據(jù)5R/W讀/寫選擇13D6數(shù)據(jù)6E使能信號14D7數(shù)據(jù)7D0數(shù)據(jù)15BLA背光源正極8D1數(shù)據(jù)16BLK背光源負(fù)極表4 LCD1602的引腳接口說明 第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3腳:VL為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度。

41、第4腳:RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。第5腳:R/W為讀寫信號線,高電平時進(jìn)行讀操作,低電平時進(jìn)行寫操作。當(dāng)RS和R/W共同為低電平時可以寫入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時可以讀忙信號,當(dāng)RS為高電平R/W為低電平時可以寫入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。第714腳:D0D7為8位雙向數(shù)據(jù)線。第15腳:背光源正極。第16腳:背光源負(fù)極。1602液晶顯示模塊是一個慢顯示器件,所以在執(zhí)行每條指令之前一定要確認(rèn)模塊的忙標(biāo)志為低電平,表示不忙,否則此指令失效。要顯示字符時要先輸入顯示字符地址,也就是告訴模

42、塊在哪里顯示字符,圖6是的內(nèi)部顯示地址 圖6 1602內(nèi)部顯示地址3.1.5 TC35i GSM模塊 TC35i 新版西門子工業(yè)GSM 模塊是一個支持中文短信息的工業(yè)級GSM 模塊,工作在EGSM900和GSM1800雙頻段,電源范圍為直流3.34.8V ,電流消耗休眠狀態(tài)為3.5mA,空閑狀態(tài)為25mA,發(fā)射狀態(tài)為300mA(平均),2.5A峰值;可傳輸語音和數(shù)據(jù)信號, 功耗在EGSM900(4類)和GSM1800(1類)分別為2W和1W ,通過接口連接器和天線連接器分別連接SIM 卡讀卡器和天線。SIM 電壓為3V/1.8V,TC35i 的數(shù)據(jù)接口(CMOS 電平)通過AT 命令可雙向傳輸

43、指令和數(shù)據(jù),可選波特率為300b/s115kb/s , 自動波特率為1.2kb/s115kb/s。它支持Text和PDU格式的SMS(Short Message Service,短消息),可通過AT命令或關(guān)斷信號實現(xiàn)重啟和故障恢復(fù)。模塊的供電電壓如果低于3.3V會自動關(guān)機(jī)。同時模塊在在發(fā)射時,電流峰值可高達(dá)2A。同時在此電流峰值時,電源電壓(送入模塊的電壓)下降值不能超過0.4V。所以該模塊對電源的要求較高,電源的內(nèi)阻+FFC連接線的電阻必需小于200m。單片機(jī)通過兩根I/O口控制TC35的開關(guān)機(jī)、復(fù)位等,通過串口與TC35進(jìn)行數(shù)據(jù)通信,通信速率為9600bps,采用8位異步通訊方式,1位起始

44、位,8位數(shù)據(jù)位,1位停止位。3.2 硬件設(shè)計 本設(shè)計主要由單片機(jī)、矩陣鍵盤、液晶顯示器和密碼存儲等部分組成。其中矩陣鍵盤用于輸入數(shù)字密碼和進(jìn)行各種功能的實現(xiàn)。由用戶通過連接單片機(jī)的矩陣鍵盤輸入密碼,后經(jīng)過單片機(jī)對用戶輸入的密碼與自己保存的密碼進(jìn)行對比,從而判斷密碼是否正確,然后控制引腳的高低電平傳到開鎖電路或者報警電路控制開鎖還是報警。本系統(tǒng)共有兩部分構(gòu)成,即硬件部分與軟件部分。其中硬件部分由電源輸入部分、鍵盤輸入部分、復(fù)位部分、GSM獨立模塊、顯示部分、報警部分組成,軟件部分對應(yīng)的由主程序、初始化程序、LCD顯示程序、鍵盤掃描程序、鍵功能程序、密碼設(shè)置程序、找回密碼程序、EEPROM讀寫程序

45、等組成。3.2.1 復(fù)位電路 單片機(jī)復(fù)位的原理是,在時鐘電路開始工作后,在單片機(jī)的RST引腳施加24個時鐘振蕩電路(即兩個機(jī)器周期)以上的電平,單片機(jī)便可以實現(xiàn)復(fù)位。一般采用外部復(fù)位電路來進(jìn)行單片機(jī)復(fù)位,RST引腳保持10ms以上的高電平。在復(fù)位期間,單片機(jī)的ALE引腳和PSEN引腳均輸出高電平。當(dāng)RST引腳從高電平跳變?yōu)榈碗娖胶?,單片機(jī)便從0000H單元開始執(zhí)行程序。在實際應(yīng)用的電路中,一般采用既可以手動復(fù)位,又可以上電復(fù)位的電路,這樣可以人工復(fù)位單片機(jī)系統(tǒng)。上電復(fù)位部分的原理也是RC電路的充放電效應(yīng)。復(fù)位電路如圖7,該電路在最簡單的復(fù)位電路下增加了手動復(fù)位按鍵,在接通電源瞬間,電容C7上的

46、電壓很小,復(fù)位下拉電阻上的電壓接近電源電壓,即RST為高電平,在電容充電的過程中RST端電壓逐漸下降,當(dāng)RST端的電壓小于某一數(shù)值后,CPU脫離復(fù)位狀態(tài),由于電容C7足夠大,可以保證RST高電平有效時間大于24個振蕩周期,CPU能夠可靠復(fù)位。 圖7 復(fù)位電路3.2.2 晶振電路 AT89C51引腳XTAL1和XTAL2與晶振及電容C8、C9按照圖8所示連接。振蕩器用于產(chǎn)生單片機(jī)正常工作時所需的時鐘信號。單片機(jī)采用CMOS工藝,內(nèi)部包含一個振蕩器,當(dāng)然也允許采用外部振蕩器,由外部振蕩器產(chǎn)生時鐘信號來供內(nèi)部CPU運行使用。 單片機(jī)內(nèi)部包含一個高增益的單機(jī)反相放大器,引腳XTAL1和XTAL2分別為

47、片內(nèi)反相放大器的輸入端口和輸出端口,工作頻率為0-33MHz。當(dāng)外接晶振的時候,電容值一般選擇C1=C2=30pF,所以本設(shè)計選擇了30pF的C8、C9電容,晶振采用24MHz。圖8 晶振電路3.2.3 鍵盤電路 由于本設(shè)計中需要輸入和更改密碼,因此不是和采用獨立按鍵,因為獨立按鍵會占用單片機(jī)過多的I/O端口,所以使用了矩陣鍵盤的電路,提高I/O口利用率。本次使用了4*4的矩陣鍵盤,也就是使用了4條行線和4條列線,共占用8個單片機(jī)引腳,即使用了P2口。16個按鍵分配為10個數(shù)字鍵和6個功能鍵。如圖9所示的矩陣鍵盤。 圖9 矩陣鍵盤3.2.4 LCD顯示電路 由于要顯示相關(guān)的操作信息,例如當(dāng)需要

48、對密碼鎖進(jìn)行開鎖時,按下鍵盤上的數(shù)字鍵09輸入密碼,每按下一個數(shù)字鍵后在顯示器上顯示一個*。選擇LCD1602是比較好的選擇。其連接方式如圖10所示。如之前芯片介紹中所述,LCD1602只使用了8條數(shù)據(jù)線和3條控制線。其中P0口連接LCD的8個數(shù)據(jù)引腳(D0-D7),由于單片機(jī)的特殊性,P0口就必須接上拉電阻,本設(shè)計中為了擴(kuò)展的需求,已經(jīng)接了4個10K的上拉電阻,所以完全滿足需求。而P1口的0,1,2管腳,則是接LCD的RS、R/W、E(使能),即執(zhí)行相關(guān)的指令。LCD的2與3管腳與電源和可調(diào)電阻相連,則是為了調(diào)節(jié)LCD的顯示對比度。圖10 LCD顯示電路3.2.5 DS1302時鐘芯片電路

49、本設(shè)計中,為了貼近生活實用,配置有單獨的時鐘芯片進(jìn)行走時,選擇了也是常見的時鐘芯片,即DS1302。采用SPI三線接口與CPU進(jìn)行通信。而且在斷電的時候,有單獨的紐扣電池給DS1302供電,保障走時的準(zhǔn)確性。 如圖11 DS1302時鐘電路所示,芯片為DIP-8的封裝。由于是SPI總線驅(qū)動方式。它不僅要向寄存器寫入控制字,還需要讀取相應(yīng)寄存器的數(shù)據(jù),所以其管腳SCLK(串行時鐘)、I/O(數(shù)據(jù)輸入輸出)、CE(復(fù)位腳),對應(yīng)于單片機(jī)的P1口4,5,6管腳連接。其工作的時鐘信號由單獨的晶振提供,典型應(yīng)用是接32.768KHz,并接有C5和C610pF電容。而在紐扣電池與管腳8的連接上面還有C03

50、和C04兩個電容,是為了達(dá)到電源濾波的作用,使得其更穩(wěn)定。 圖11 DS1302時鐘電路3.2.6 AT24C08存儲電路 在本設(shè)計中,為了更加好的存儲用戶所設(shè)定的密碼,選擇使用EEPROM器件。即使在斷電的情況下,也不會丟失數(shù)據(jù)。其I2C器件,串行數(shù)據(jù)線SDA和串行時鐘線SCL構(gòu)成的,即可發(fā)送和接收數(shù)據(jù)。AT24C08作為存儲器件,器件地址的高4 位固定為1010。接下來的3 位A2 A1 A0 為器件的地址位用來定義哪個器件以及器件的哪個部分被主器件訪問,而控制字節(jié)的最低位為讀/寫控制,1為讀0為寫。其電路連接為A0,A1,A2,GND管腳接地,WP寫保護(hù)管腳可懸空或者接地(表示可以進(jìn)行讀

51、寫操作),SCL(時鐘),SDA(數(shù)據(jù))與單片機(jī)的P34,P35口連接。如圖12 AT24C08電路所示。本設(shè)計是將密碼定義成數(shù)組的形式,數(shù)組長度為8,所以密碼的長度必須小于等于8,密碼長度保存在24C08的0xa0單元,密碼中的每個數(shù)字則分別存在0x0b-0x12單元。圖12 AT24C08存儲電路3.2.7 報警電路 本設(shè)計的報警電路采用了簡單的有源蜂鳴器作為發(fā)聲元件,電路較為容易,用一個普通的PNP8550三極管驅(qū)動,如圖13報警電路所示。完全滿足了使用上的需求。首先是報警時音量分貝足夠大,密碼輸入錯誤達(dá)到三次時,發(fā)出緊蹙的聲響 ,達(dá)到震懾非法進(jìn)入的目的。同時,其發(fā)出的“滴”聲可以作為按

52、鍵按下的提示音,給使用者帶來了操作上的指導(dǎo),可以明確了解有按鍵按下。 圖13 報警電路所示3.2.8 開鎖電路 由于本次設(shè)計的重點在于本機(jī)的設(shè)計,對于專業(yè)性較強(qiáng)的電磁鎖了解并不是十分充分,因為同時還要考慮到電磁鎖吸和的力度及時間,加之鎖的成本較為昂貴,所以出于節(jié)約成本考慮及演示效果,選擇了使用繼電器外接一個LED燈來代替。 LED燈亮則表示輸入密碼正確,門鎖打開;LED滅則表示門鎖。繼電器的電路連接如圖14所示。圖14 繼電器開鎖電路3.2.9 TC35I GSM模塊作為本次設(shè)計的擴(kuò)展功能,TC35I GSM是一個單獨的模塊,其由獨立的5V/2A電源供電。它與單片機(jī)的連接是靠兩條串口線,即P3

53、0(RXD),P31(TXD)以及和一條GND線(共地),單片機(jī)依靠串口與GSM模塊通信,其波特率為9600bps,發(fā)送相關(guān)的AT指令和信息,以達(dá)到發(fā)送SMS到用戶手機(jī),實現(xiàn)報警和找回密碼功能。由于TC35I是一個獨立出來的模塊,因而本設(shè)計中并沒有繪制其原理圖和PCB圖,經(jīng)過查閱和搜索相關(guān)資料,在此也附上其模塊電路,如圖15所示。圖15 TC35I GSM模塊3.3.0 電源模塊 本次設(shè)計中,既可以使用5V直流電進(jìn)行供給,也可以使用12V的直流電源,因為板子上有12V轉(zhuǎn)5V的穩(wěn)壓電路。之所以多出這個設(shè)計,是因為可以更方便地給單片機(jī)供電,此外,因為多數(shù)密碼鎖的工作電壓在12V,所以使用12V電源

54、可以給其正常工作。但由于電磁鎖比較昂貴,出于節(jié)約成本的考慮,暫時用LED代替。 圖16 電源電路如上圖16所示,電源電路中使用了AMS1117穩(wěn)壓芯片,可將12V轉(zhuǎn)為5V,而與其連接的電容,則是起了濾波的作用,使得電壓更為平滑。4 軟件程序設(shè)計 本次設(shè)計的電子密碼鎖程序并不算特別復(fù)雜,由幾個相關(guān)程序構(gòu)成,這包括主程序,設(shè)置密碼程序,開門程序,找回密碼程序等等。在編寫程序的過程中,使用的是Keil4軟件,因為常用的單片機(jī)程序設(shè)計編譯軟件都是使用它。4.1 主程序流程圖圖17 主程序流程圖如圖17 主程序流程圖,開始接上電源,程序進(jìn)行初始化設(shè)置,這設(shè)置包含設(shè)置相關(guān)定時器初值,開中斷,LCD顯示初始

55、化等等。然后程序在一個while循環(huán)中不斷的循環(huán),期間有滿足不同條件的if語句時,則跳轉(zhuǎn)至相關(guān)函數(shù)去執(zhí)行,如修改時間,修改密碼,開鎖,以完成不同的功能。 在主程序流程圖中,已經(jīng)盡可能的把整個主程序的運行過程給繪制出來了,如圖所示。4.2 找回密碼程序 當(dāng)輸入密碼錯誤次數(shù)達(dá)到三次時,將會進(jìn)入鍵盤鎖定和報警的一個狀態(tài)。而此時,只有用戶知道有一個按鍵未被鎖定,而是用于找回密碼所用的按鍵。當(dāng)按下這個按鍵的時候,屏幕將會顯示“ask the question”的提示,詢問用戶問題的正確答案。同時,單片機(jī)將存儲于內(nèi)部的正確答案以短信的形式發(fā)至用戶綁定的手機(jī)上,用戶手機(jī)收到短信后,根據(jù)內(nèi)容輸入至密碼鎖中,按

56、下確認(rèn)鍵以確定。若正確,則會跳至一個新的界面,用戶可選擇是更改一個新的密碼還是更改提問的答案,并進(jìn)入相關(guān)界面進(jìn)行操作;若所回答的答案是錯誤的,則返回鎖定等待的界面,直到鎖定時間走完方,可再次嘗試輸入密碼。如圖18 為找回密碼程序流程圖。開始鍵2?鍵1?正確?輸入答案發(fā)送短信顯示問題 鎖定鍵盤繼續(xù)等待返回輸入密碼NY更改密碼NY輸入答案NY圖18 找回密碼程序流程圖4.3 鍵盤掃描程序 鍵盤作為本次設(shè)計的輸入密碼的關(guān)鍵模塊,采用矩陣鍵盤和線反轉(zhuǎn)掃描方法,先將行線作為輸出線, 列線作為輸入線, 行線輸出全“0”信號, 讀入列線的值, 那么在閉合鍵所在的列線上的值必為0;然后從列線輸出全“0”信號,

57、再讀取行線的輸入值,閉合鍵所在的行線值必為 0。這樣,當(dāng)一個鍵被按下時, 必定可讀到一對唯一的行列值。再由這一對行列值可以求出閉合鍵所在的位置。然后確定鎖閉合鍵的鍵碼在KeyTable中,在返回對應(yīng)的一個數(shù)字,方便以后編程時使用,而不用記住麻煩的鍵碼。code uchar KeysTable = 0xEE,0xDE,0xBE,0x7E,0xED,0xDD,0xBD,0x7D,0xEB,0xDB,0xBB,0x7B,0xE7,0xD7,0xB7,0x77,0x00;void delay_keyscan(void)data uchar i,j;for(i=0;i50;i+)for(j=0;j 15

58、0;j+);int KeyScan(void)uchar i = 0;data uchar value,temp1,temp2;P2 = 0xF0;temp1 = P2;if(temp1&0xF0) != 0xF0) delay_keyscan();temp1 = P2;if(temp1&0xF0) != 0xF0) P2 = 0x0F;temp2 = P2;value = temp1 | temp2;while(P2 != 0x0F);for(i=0;i=15;i+)if(value = KeysTablei)P2 = 0xFF;return (i+1);elseP2 = 0xFF;retu

59、rn 0;4.4 Proteus仿真 Proteus ISIS是英國Labcenter公司開發(fā)的電路分析與實物仿真軟件。它運行于Windows操作系統(tǒng)上,可以仿真、分析各種模擬器件和集成電路,該軟件的特點是:實現(xiàn)了單片機(jī)仿真和數(shù)字電路仿真相結(jié)合。具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真等等。并可在軟件中直接導(dǎo)入用Keil生產(chǎn)的Hex文件,使得單片機(jī)如同在真正環(huán)境下工作一樣,以達(dá)到最好的仿真效果。以下附上在Proteus上的仿真截圖。如圖19所示。 圖19 Proteus硬件仿真圖5 總結(jié) 本文描述了以單片機(jī)AT89C51作為主控方案的電子密碼鎖設(shè)計,并對方案進(jìn)行了詳細(xì)地說明,包含對系統(tǒng)硬件的每一部分的組成及其一些主要工作原理;在軟件部分,則也給出了相關(guān)主程序的流程圖和主要功能函數(shù)的流程圖。 在主要功能上,本次設(shè)計基本達(dá)到了要求,例如密碼正確開鎖,密碼三次輸入錯誤鎖定鍵盤和報警,時鐘顯示,找回密碼等等功能,但在某些地方依然有不足,比如操作上不夠人性化,程序有時候不夠穩(wěn)定等等,有待進(jìn)一步的改進(jìn)。但也有明顯的考慮不足的地方,由于了解的專業(yè)知識尚淺,對課題的研究經(jīng)驗的不足,使得在技術(shù)的解決與運用上顯得粗糙了一些,此電路中也存在著依稀的問題,譬如說當(dāng)供電斷掉的時候,此時密碼鎖沒有后備電源進(jìn)行供電,那么此時的門鎖處于關(guān)閉的狀態(tài),用戶將無法自由進(jìn)出,必須等待

展開閱讀全文
溫馨提示:
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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!