電子密碼鎖畢業(yè)論文_第1頁(yè)
電子密碼鎖畢業(yè)論文_第2頁(yè)
電子密碼鎖畢業(yè)論文_第3頁(yè)
電子密碼鎖畢業(yè)論文_第4頁(yè)
電子密碼鎖畢業(yè)論文_第5頁(yè)
已閱讀5頁(yè),還剩76頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、閩江學(xué)院本科畢業(yè)論文(設(shè)計(jì))題 目 基于51單片機(jī)的電子密碼鎖 學(xué)生姓名 王穎丹 學(xué) 號(hào) 3111101215 系 別 計(jì)算機(jī)科學(xué)系 年 級(jí) 2011級(jí) 專(zhuān) 業(yè) 嵌入式應(yīng)用 指導(dǎo)教師 鄭明 職 稱(chēng) 副教授 完成日期 2015-5-26 誠(chéng)信承諾書(shū)本人鄭重聲明:茲提交的畢業(yè)論文(設(shè)計(jì)) 基于51單片機(jī)的電子密碼鎖 ,是本人在指導(dǎo)老師 鄭明 的指導(dǎo)下獨(dú)立研究、撰寫(xiě)的成果;論文(設(shè)計(jì))未剽竊、抄襲他人的學(xué)術(shù)觀點(diǎn)、思想和成果,未篡改研究數(shù)據(jù),論文(設(shè)計(jì))中所引用的文字、研究成果均已在論文(設(shè)計(jì))中以明確的方式標(biāo)明;在畢業(yè)論文(設(shè)計(jì))工作過(guò)程中,本人恪守學(xué)術(shù)規(guī)范,遵守學(xué)校有關(guān)規(guī)定,依法享有和承擔(dān)由此論文

2、(設(shè)計(jì))產(chǎn)生的權(quán)利和責(zé)任。 聲明人(簽名):王穎丹2015年 3 月 1 日摘 要本次畢業(yè)設(shè)計(jì)我選擇的是基于51單片機(jī)的電子密碼鎖,所選芯片為AT89C51。這個(gè)電子密碼鎖包括了5*4矩陣鍵盤(pán)模塊,24C02存儲(chǔ)模塊,報(bào)警模塊,1602液晶屏顯示模塊。使用的編程工具是keil C51,畫(huà)圖工具是Protell 99 SE,燒寫(xiě)工具是STC479。在本次畢業(yè)設(shè)計(jì)的制作過(guò)程中,我經(jīng)過(guò)不斷的調(diào)試,更改程序,來(lái)提高鎖的使用性能,最后的調(diào)試結(jié)果,我還是比較滿(mǎn)意的。因?yàn)樗緦?shí)現(xiàn)了開(kāi)題報(bào)告中所提到的功能:報(bào)警功能、開(kāi)鎖功能、掉電存儲(chǔ)密碼功能、顯示功能、鍵盤(pán)輸入功能等。但是還是有一些遺留問(wèn)題的,比如顯示屏老

3、是花屏,按鍵不夠靈敏等。關(guān)鍵詞:?jiǎn)纹瑱C(jī)AT89C52;密碼鎖 ;5*4矩陣鍵盤(pán) ;1602液晶屏 AbstractThis graduation design I choose is based on the 51 singlechip electronic code lock, the selected chip AT89C51.the electronic password lock comprises a 5 * 4 matrix keyboard module, 24C02 memory module, alarm module, LCD display module. Using t

4、he programming tool is KEIL C51, drawing tools is protell 99 SE, the programming tool is STC479. In the making process of the graduation design, I through continuous debugging and change procedures, to improve the use performance of the lock and the debug result. I was satisfied, because it basicall

5、y achieved mentioned in the proposal that the function: alarm function, lock function, electric storage password function, display function, keyboard input function. But there are still some problems left, such as the display is always flower screen, buttons and other key is not sensitive.Key words:

6、SCM AT89C52; password lock; 5 * 4 matrix keyboard; 1602 LCD screen; safety performance。 目 錄1.概述1.1 引言51.2 電子密碼鎖的背景51.3 電子密碼鎖設(shè)計(jì)的意義和的特點(diǎn)62. 系統(tǒng)設(shè)計(jì)2.1系統(tǒng)總設(shè)計(jì)結(jié)構(gòu)圖82.1.1 功能設(shè)計(jì)92.2 芯片的選擇92.3 主控芯片AT89C52單片機(jī)的簡(jiǎn)介102.3.1主要特性102.4 編程工具123. 系統(tǒng)硬件設(shè)計(jì)3.1 總框圖133.2 鍵盤(pán)圖133.3 顯示模塊143.4 蜂鳴器模塊143.5 LED流水燈模塊143.6 密碼掉電保護(hù)24C02存儲(chǔ)模塊1

7、53.7 晶振時(shí)鐘電路153.8 復(fù)位電路設(shè)計(jì)163.9 串口引腳功能介紹163.10 硬件成品174.軟件設(shè)計(jì)4.1 系統(tǒng)軟件設(shè)計(jì)流程圖:194.2 系統(tǒng)軟件設(shè)計(jì)流程205. 程序調(diào)試5.1 程序調(diào)試用到的軟件及工具245.2 調(diào)試過(guò)程245.2.1 顯示模塊測(cè)試:245.2.2 鍵盤(pán)模塊測(cè)試:245.2.3 蜂鳴器模塊測(cè)試:255.2.4復(fù)位模塊測(cè)試:255.2.5 24C02存儲(chǔ)模塊測(cè)試:255.3遺留問(wèn)題266. 設(shè)計(jì)總結(jié)27參考文獻(xiàn)28致 謝29附錄 30 基于51單片機(jī)的電子密碼鎖1.概述1.1 引言 大家都知道,由古至今,人們的財(cái)產(chǎn)安全大多都是通過(guò)鎖來(lái)完成的。在現(xiàn)代這個(gè)社會(huì)鎖對(duì)于

8、每個(gè)人,每個(gè)家庭來(lái)說(shuō)都是不可或缺的生活保障。伴隨著這個(gè)社會(huì)歷史的發(fā)展和人類(lèi)文明的進(jìn)步,人們對(duì)自己生命安全的保障意識(shí)和財(cái)產(chǎn)安全的保障意識(shí)都得到了很大幅度的提升。而鎖的花樣也越來(lái)越多,由一開(kāi)始的機(jī)械式鎖,到現(xiàn)在各式各樣的電子鎖。顯而易見(jiàn)的,電子鎖的功能也更加的完善了,安全性能也更高了。隨著社會(huì)的發(fā)展,城市規(guī)模的擴(kuò)大,及各個(gè)大城市中外來(lái)人口的引入,是本來(lái)復(fù)雜的城市越來(lái)越難管理。尤其是近來(lái),針對(duì)小區(qū)及住房入室盜竊和搶劫的事時(shí)有發(fā)生,是人們的生活受到的很大的影響。對(duì)于這些盜竊屢有發(fā)生,主要原因?yàn)椋喝藗儗?duì)于安全防范設(shè)施的不完善,個(gè)人安全防范的意識(shí)也不夠高,小區(qū)物業(yè)管理不夠完善。而現(xiàn)在,電子鎖的成本越來(lái)越低

9、,功能越來(lái)越強(qiáng),使它被廣泛的用于小區(qū)樓道德安全管理中,這種成本相對(duì)較低的安全措施,卻為小區(qū)及住宅提供了不小的安全作用。這種電子密碼鎖,是一種可以通過(guò)從鍵盤(pán)輸入密碼,然后來(lái)完成一個(gè)開(kāi)鎖的過(guò)程。而人們最開(kāi)始深究這種電子密碼鎖的目的,便是為了提高使用鎖的安全性。 從古代到今天,我們可以看到各種類(lèi)型的鎖出現(xiàn)在我們的眼前。有國(guó)內(nèi)的,也有國(guó)外的,但是事實(shí)上這些鎖都不具有真正的完善的防盜功能。在一些真正的慣偷面前,只需要一些鋼線(xiàn)或者一些簡(jiǎn)單的開(kāi)鎖的工具就能打開(kāi)這些鎖。曾經(jīng)有一些慣偷就說(shuō)過(guò):“沒(méi)有我打不開(kāi)的鎖?!倍聦?shí)上呢,也并不是他們的偷盜手法有多么的高明。正真的原因就是一般的鎖具原理都不夠復(fù)雜,很是簡(jiǎn)單。

10、而對(duì)于這樣的一個(gè)社會(huì)現(xiàn)狀,人們對(duì)鎖提出了極其迫切的改進(jìn)要求。1.2 電子密碼鎖的背景 在當(dāng)今的社會(huì),我們可以看到各類(lèi)樣式繁雜的鎖具,有可以按指紋的,也有數(shù)碼的,還有電子的。甚至還有類(lèi)似于IC卡的鎖。但是最常見(jiàn)的還是按鍵的鎖。隨著這個(gè)社會(huì)的進(jìn)步和人類(lèi)科學(xué)的發(fā)展。鎖具也發(fā)展成了電子鎖,門(mén)鎖,還有激光鎖等。包括了不同的聲音、不同的磁域、還有不同的聲波、不同光束光波、以及很多不同的圖像。來(lái)控制鎖的開(kāi)啟。從而大大提高了防盜鎖,使犯罪分子不能開(kāi)始,人們將能夠有更多的保護(hù)自己的財(cái)產(chǎn)。在今天這個(gè)社會(huì),信息安全系統(tǒng)也應(yīng)用的越來(lái)越廣泛,尤其是在保護(hù)機(jī)密上起主要作用。維護(hù)人們的隱私和保護(hù)人們的財(cái)產(chǎn),是電子密碼鎖的安

11、全系統(tǒng)的一個(gè)組成部分。因此電子密碼鎖的研究具有很大的現(xiàn)實(shí)意義。1.3 電子密碼鎖設(shè)計(jì)的意義和的特點(diǎn) 單片機(jī)也被稱(chēng)為微機(jī)或單片機(jī)。這是一個(gè)(CPU)中央處理單元,一個(gè)隨機(jī)存取存儲(chǔ)器(RAM),一個(gè)只讀存儲(chǔ)器(ROM),輸入/輸出(I / 0)等電腦部件。它的主要功能基本都集成在了一塊集成的電路芯片上。計(jì)算機(jī)的發(fā)展迅速,加劇了人們改造這個(gè)世界的步伐。但是它的體積畢竟過(guò)于龐大。MCU(單片機(jī))是出生在這種情況下。這是我們要改變的嗎?在我們生活的各個(gè)領(lǐng)域,從導(dǎo)航裝置來(lái)控制導(dǎo)彈,航空儀表,通信和計(jì)算機(jī)網(wǎng)絡(luò)在工業(yè)自動(dòng)化和過(guò)程的實(shí)時(shí)控制和數(shù)據(jù)傳輸,數(shù)據(jù)處理。并且能夠廣泛的應(yīng)用于我們的生活

12、中,比如在各種智能IC卡,電子寵物中。這些是離不開(kāi)單片機(jī)的。如果沒(méi)有以前的單片機(jī)。這些東西雖然可以做,但是它們卻只能用復(fù)雜的模擬電路。而且,這樣做出來(lái)的成品不僅體積大,成本還很高。同時(shí)也會(huì)由于長(zhǎng)期使用,使得它的部件老化,控制精度達(dá)不到標(biāo)準(zhǔn)值。 SCM,我們將成為這些事情的智能控制者。因?yàn)槲覀冎恍枰粋€(gè)簡(jiǎn)單的單片機(jī)外圍接口電路。但是該方案的核心是由人們自己編寫(xiě)代碼來(lái),燒寫(xiě)程序來(lái)完成的。該產(chǎn)品具有體積小,成本低的優(yōu)勢(shì),長(zhǎng)期使用也無(wú)需擔(dān)心是否準(zhǔn)確,并且它還易于升級(jí)。 在日常生活中的辦公區(qū)和住宅區(qū),單位的文件檔案,財(cái)務(wù)報(bào)表,和一些個(gè)人信息中。都可以使用電子鎖來(lái)完成。很大幅度提升了主材料的安全性,基本可

13、以取代老舊的防盜機(jī)械鎖。目前,許多類(lèi)型的鎖的使用,獨(dú)特的。是適用于住宅區(qū)、辦公區(qū)的鎖,更是一個(gè)值得推廣的產(chǎn)品。 (1)我設(shè)計(jì)的這個(gè)電子密碼鎖的系統(tǒng)可以設(shè)置8位的密碼,密碼可以通過(guò)鍵盤(pán)輸入。如果輸入的密碼正確,則可以將鎖打開(kāi),led等會(huì)閃一下并伴有兩下的滴滴聲。如果輸入的不正確的話(huà),電子密碼鎖就會(huì)發(fā)出滴滴滴滴滴的報(bào)警聲。 (2)密碼可以由用戶(hù)自己設(shè)置。在已經(jīng)將鎖打開(kāi)的狀態(tài)下,用戶(hù)也可以自己修改密碼。 (3)而且我的這個(gè)電子密碼鎖也具備自動(dòng)報(bào)警功能。自動(dòng)報(bào)警為蜂鳴器報(bào)警。 (4)這種情況下可報(bào)警:一是密碼輸入錯(cuò)誤,則報(bào)警。當(dāng)電子密碼鎖進(jìn)入工作狀態(tài)時(shí),用戶(hù)可以通過(guò)按鍵輸入8位的密碼。然后單片機(jī)將用戶(hù)

14、所輸入密碼與用戶(hù)所設(shè)定密碼進(jìn)行比較。如果兩個(gè)密碼比較后,密碼相同則正確。那么發(fā)出開(kāi)鎖信號(hào),則LED指示燈會(huì)亮一下,蜂鳴器響兩聲,將門(mén)打開(kāi),系統(tǒng)不報(bào)警。如果兩個(gè)密碼比較后,密碼不一致則不正確。蜂鳴器發(fā)出滴滴滴滴滴的報(bào)警聲,并要求重新輸入密碼。如果用戶(hù)輸入的密碼累積起來(lái)一共錯(cuò)了3次的話(huà),那么電子密碼鎖就會(huì)被鎖定了。而且,鎖定之后必須斷電重啟后才能再次輸入密碼。 (5)掉電存儲(chǔ)密碼功能,如果用戶(hù)修改完密碼之后,斷電重新啟動(dòng)密碼鎖,輸入的密碼是用戶(hù)之前修改的密碼。2. 系統(tǒng)設(shè)計(jì)2.1系統(tǒng)總設(shè)計(jì)結(jié)構(gòu)圖如下圖2.1:?jiǎn)纹瑱C(jī)顯示 部分鍵盤(pán)輸入部分報(bào)警電路部分密碼存儲(chǔ)部分 系統(tǒng)總設(shè)計(jì)結(jié)構(gòu)圖2.1 本設(shè)計(jì)的主控

15、芯片是AT89C52。單片機(jī)是用來(lái)負(fù)責(zé)控制電子密碼鎖整個(gè)系統(tǒng)電路的執(zhí)行過(guò)程。其中:?jiǎn)纹瑱C(jī):?jiǎn)纹瑱C(jī)這個(gè)部分的話(huà),它的功能包括了寫(xiě)入數(shù)據(jù)和讀取數(shù)據(jù),以及各種命令的控制和數(shù)據(jù)的處理。與此同時(shí)呢,還需要對(duì)各執(zhí)行單元分別進(jìn)行控制。單片機(jī)是本系統(tǒng)的控制中心和數(shù)據(jù)處理中心。鍵盤(pán)部分:這個(gè)部分是由用戶(hù)自己輸入各個(gè)數(shù)據(jù)信息并傳送至單片機(jī)中進(jìn)行數(shù)據(jù)分析和處理。顯示部分:這個(gè)模塊完成的是用戶(hù)所輸入的數(shù)據(jù)信息的顯示以及系統(tǒng)信息的提示顯示。密碼存儲(chǔ)部分:這個(gè)模塊完成的是原始密碼的存儲(chǔ)和用戶(hù)所更改數(shù)據(jù)的存儲(chǔ)。報(bào)警電路部分:這個(gè)模塊的的主要功能是增加系統(tǒng)的安全性能和實(shí)用性。報(bào)警電路的主要功能就是在用戶(hù)進(jìn)行錯(cuò)誤的操作后進(jìn)行一

16、個(gè)報(bào)警提示。還有就是其他的一些部分,它們主要是:電源電路、復(fù)位模塊、晶振模塊、開(kāi)鎖電路。電源模塊的話(huà),它的主要的功能是為單片機(jī)提供工作電源,于此同時(shí)也為整個(gè)電路提供工作電源。復(fù)位模塊它的功能是使系統(tǒng)在出現(xiàn)故障或死機(jī)時(shí)進(jìn)行復(fù)位。開(kāi)鎖電路就是在用戶(hù)輸入正確的密碼的時(shí)候,把電子密碼鎖給打開(kāi)。2.1.1 功能設(shè)計(jì) 此電子密碼鎖的組成部分為:51單片機(jī)最小系統(tǒng),矩陣鍵盤(pán)部分,電源電路部分,報(bào)警電路部分以及復(fù)位電路部分。P3口接的是矩陣鍵盤(pán)電路。XTAL1和XTAL2接晶振電路。p2.0口接的是報(bào)警電路。RST接的是復(fù)位電路。每個(gè)電路都由單片機(jī)控制,來(lái)實(shí)現(xiàn)電子密碼鎖功能。 此電子密碼鎖組成部分: 密碼鎖顯

17、示:當(dāng)我們輸入密碼的時(shí)候,每按下一個(gè)按鍵,液晶屏welcome下面中就會(huì)顯示一個(gè)*號(hào)。如果我們輸入密碼正確,那么LED燈亮,并且伴有滴滴的聲音,1602液晶屏屏幕上就會(huì)顯示Right open。如果我們輸入的密碼錯(cuò)誤,則蜂鳴器會(huì)報(bào)警并且發(fā)出滴滴滴滴滴的聲音,1602液晶屏也會(huì)顯示wrong retry。我的這個(gè)單片機(jī)本來(lái)是5*4的矩陣鍵盤(pán),但是我的這個(gè)畢業(yè)設(shè)計(jì)只用到了上面三排。我設(shè)置的是可以輸入8位數(shù)的密碼,通過(guò)鍵盤(pán)來(lái)輸入密碼。如果密碼輸入正確,則可以打開(kāi)鎖。密碼由用戶(hù)自己設(shè)置,如果用戶(hù)忘記了密碼,則可以用萬(wàn)能密碼打開(kāi)。 而我設(shè)計(jì)的報(bào)警電路:含有蜂鳴器和一個(gè)發(fā)光二極管組成。如果輸入的密碼正確,

18、那么二極管會(huì)亮一下,并且蜂鳴器也會(huì)發(fā)出兩下滴滴的聲音。如果用戶(hù)輸入的密碼錯(cuò)誤,那么蜂鳴器就會(huì)發(fā)出滴滴滴滴滴的聲音,即報(bào)警。 主要實(shí)現(xiàn)功能為: 一、解鎖:輸入密碼->如果正確,1602液晶屏顯示Right open,如果錯(cuò)誤,顯示wrong retry。 二、修改密碼:按修改按鍵->輸入密碼->確定按鍵->再次輸入密碼->確定按鍵->1602液晶屏顯示change success。 三、萬(wàn)能密碼鎖,密碼忘記或被鎖定時(shí)輸入,打開(kāi)電子鎖。 四、如果輸入密碼錯(cuò)誤超過(guò)3次,則會(huì)停止,需開(kāi)機(jī)重啟再試。五、掉電存儲(chǔ)密碼:當(dāng)關(guān)閉電源后,用戶(hù)所修改的密碼會(huì)存儲(chǔ)到EEPROM里

19、面,再次開(kāi)啟電子密碼鎖時(shí),密碼是用戶(hù)之前所修改的密碼。2.2 芯片的選擇 在本次設(shè)計(jì)中,我所選擇的是AT89C52的芯片,AT89C52芯片是最常見(jiàn)的單片機(jī)芯片。AT89C52電磁閥開(kāi)鎖驅(qū)動(dòng)電路 密碼正確 電子密碼鎖工作圖 2.2 2.3 主控芯片AT89C52單片機(jī)的簡(jiǎn)介 AT89C52是一種帶4K字節(jié)FLASH存儲(chǔ)器(FPEROMFlash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS 8位微處理器,俗稱(chēng)單片機(jī)。單片機(jī)的EEPROM擦除可重復(fù)1000次。AT89C052是它的一種精簡(jiǎn)版本。外形及引腳排列如圖所示。2.3.1主

20、要特性兼容MCS51指令系統(tǒng)8kB可反復(fù)擦寫(xiě)(大于1000次)Flash ROM;32個(gè)雙向I/O口;256x8bit內(nèi)部RAM;時(shí)鐘頻率0-24MHz;管腳說(shuō)明 VCC:供電電壓。 GND:接地。 還包含了P0、P1、P2、P3口的基本功能。我就不在這里做出詳細(xì)的介紹了。下面我們主要來(lái)說(shuō)說(shuō)P3口的其他功能。P3口也可作為AT89C52的一些特殊功能口。如下表所示: P3口管腳 備選功能 P3.0 RXD(串行輸入口) P3.1 TXD(串行輸出口) P3.2 /INT0(外部中斷0) P3.3 /INT1(外部中斷1) P3.4 T0(計(jì)時(shí)器0外部輸入) P3.5 T1(計(jì)時(shí)器1外部輸入)

21、P3.6 WR(外部數(shù)據(jù)存儲(chǔ)器寫(xiě)) P3.7 RD(外部數(shù)據(jù)存儲(chǔ)器讀) RST:復(fù)位輸入。振蕩器特性: XTAL1和XTAL2分別為反向放大器的輸入和輸出。 SCON 串行口控制寄存器。它的各個(gè)位的具體定義如下: SM0 SM1 SM2 REN TB8 RB8 TI RI 而且SMO、SM1可以對(duì)應(yīng)四種模式的設(shè)置。串行口工作模式設(shè)置。 SM0 SM1 模式 功能 波特率 0 0 0 同步移位寄存器 fosc/12 0 1 1 8位UART 可變 1 0 2 9位UART fosc/32 或fosc/64 1 1 3 9位UART 可變 下面是AT89C52芯片:

22、AT89C52引腳圖及芯片圖 2.32.4 編程工具 在本次畢業(yè)設(shè)計(jì)中,我所使用的編程工具是KEIL C51 。Keil C51 簡(jiǎn)介: KEIL C51軟件是KeilSoftware有限公司的產(chǎn)品,是產(chǎn)于美國(guó)的C語(yǔ)言。不同的結(jié)構(gòu)功能是51系列單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)的兼容的系統(tǒng)。與匯編語(yǔ)言相比更有優(yōu)勢(shì)。Keil C51的優(yōu)勢(shì)主要在于它的可讀性,可維護(hù)性和易于使用。另一個(gè)重要的一點(diǎn),則是看看是否可以編譯生成的匯編代碼。多數(shù)語(yǔ)句生成的代碼生成的匯編會(huì)比較緊湊,易于理解。在大型軟件的開(kāi)發(fā)中,可以更好地反映真正的高層次的語(yǔ)言。 我們要完成編輯,編譯,連接,調(diào)試和仿真的發(fā)展過(guò)程。在C51的工具包中包含了u

23、Vision和IShell的是Windows和DOS C51集成開(kāi)發(fā)環(huán)境(IDE)。開(kāi)發(fā)人員可以使用IDE或其他編輯器編輯C源文件或程序集。 C51和A51,其中的目標(biāo)文件(.OBJ)分別編譯。然后您創(chuàng)建的目標(biāo)文件是建設(shè)置于連接在一起生成絕對(duì)目標(biāo)文件和庫(kù)files.Abs通孔庫(kù)LIB51 L51文件。調(diào)試器源代碼級(jí)調(diào)試一個(gè)標(biāo)準(zhǔn)的文件OH51 ABS或16進(jìn)制文件dscope51 tscope51??梢酝ㄟ^(guò)模擬器調(diào)試目標(biāo)板直接使用,可以在程序存儲(chǔ)器直接寫(xiě),如EEPROM。3. 系統(tǒng)硬件設(shè)計(jì)3.1 總框圖 總框圖里面包括了我單片機(jī)中所用到的所有電路,下面會(huì)逐個(gè)畫(huà)出來(lái)。如圖3.1 硬件設(shè)計(jì)總原理圖3

24、.13.2 鍵盤(pán)圖 我的單片機(jī)是5*4的矩陣鍵盤(pán),但是因?yàn)樵诒敬萎厴I(yè)設(shè)計(jì)中我只用到上面那三排的按鍵,所以我就只畫(huà)了一個(gè)4*4的按鍵原理圖。它一共用到了7個(gè)引腳,分別是P3.0、P3.1、CSDA(P3.2)、LCDEN(P3.4)、RS(P3.5)、WR(P3.6)、RD(P3.7),如圖3.2 按鍵模塊原理圖3.23.3 顯示模塊 下面是1602顯示屏的原理圖模塊,如圖3.3 1602顯示模塊原理圖3.33.4 蜂鳴器模塊 單片機(jī)的FM口接兩個(gè)電阻及一個(gè)PNP元件,再接一個(gè)FM接地,形成蜂鳴器電路。如圖3.4 蜂鳴器模塊原理圖3.43.5 LED流水燈模塊 八個(gè)LED燈與P2相接。74HC5

25、73鎖存器的1-9引腳分別與單片機(jī)的DB1-DB8相連,引腳11與單片機(jī)AT89C52DIOLA引腳相連。這樣形成一個(gè)led流水燈模塊。如圖3.5 LED流水燈模塊原理圖3.53.6 密碼掉電保護(hù)24C02存儲(chǔ)模塊 24C02的SDA、SCL分別接1個(gè)10K的電阻。SCL是時(shí)鐘信號(hào)引腳,它是在上升沿送入eeprom,下降沿把數(shù)據(jù)讀出來(lái)的。SDA是數(shù)據(jù)的輸入、輸出引腳。A0-A2這三個(gè)引腳是24C02硬件連接的器件地址輸入引腳。而且A2、A1和A0的內(nèi)部都是必須連接著的。 24C02存儲(chǔ)模塊原理圖3.63.7 晶振時(shí)鐘電路 單片機(jī)的XIAL1引腳和XIAL2引腳都分別接一個(gè)30PF的電容,然后再

26、在中間并1個(gè)12MHZ的晶振。這樣就形成AT89C52單片機(jī)的晶振電路。如圖3.7 晶振時(shí)鐘電路原理圖3.73.8 復(fù)位電路設(shè)計(jì)在這里,我用的是電平,而不是脈沖方式。電平復(fù)位時(shí)通過(guò)RST端經(jīng)電阻與電源VCC接通而實(shí)現(xiàn)的。如圖3.8。J13代表的是AT89C52芯片。 復(fù)位電路設(shè)計(jì)原理圖3.83.9 串口引腳功能介紹 單片機(jī)的P3口外接1602顯示屏,用來(lái)當(dāng)做密碼輸入時(shí)顯示的顯示器。AT89C52的INT0引腳外接蜂鳴器。同時(shí),如果INT0引腳被設(shè)置成0的時(shí)候,蜂鳴器會(huì)發(fā)出報(bào)警的聲音。P1口外接發(fā)光二極管用來(lái)當(dāng)做系統(tǒng)工作狀態(tài)提示。 本電路繪制是使用PROTEL 99 SE繪制的。 PROTEL

27、99 SE簡(jiǎn)介: Protel99SE是Protel公司近10年在Windows平臺(tái)上所開(kāi)發(fā)出來(lái)的最新成果??梢詮脑O(shè)計(jì)到輸出物理生產(chǎn)數(shù)據(jù)電器概念實(shí)現(xiàn),而所有的分析,驗(yàn)證和設(shè)計(jì)數(shù)據(jù)管理。但工具的系統(tǒng)中,覆蓋印刷電路板的整個(gè)物理設(shè)計(jì)的核心。該軟件Protel的最新版本可以毫無(wú)障礙地閱讀的OrCAD,加速度(PCAD)等知名EDA公司設(shè)計(jì)文件,使用戶(hù)順利過(guò)渡到新平臺(tái)的EDA。PROTEL99 SE可以分為五個(gè)模塊,其中包括原理圖設(shè)計(jì),PCB設(shè)計(jì),包括信號(hào)完整性分析,自動(dòng)路由設(shè)備,混合信號(hào)仿真,PLD設(shè)計(jì)原理圖。下面是一些用Protel99SE的新功能的大部分的: 該電連接可以產(chǎn)生30種網(wǎng)絡(luò)表的格式。

28、 強(qiáng)大的全局編輯功能。 同時(shí)操作原理圖和PCB圖,再開(kāi)放搜索組件之間的原理圖和PCB地圖,允許雙向交叉。 可以轉(zhuǎn)發(fā)注釋組件標(biāo)記(從示意圖到PCB),也可以反向注解(由PCB至示意圖)。電氣原理圖和PCB的設(shè)計(jì),都可以保持一致性。易于使用的數(shù)字模式的混合仿真(兼容3F5)。支持中國(guó)政法大學(xué)的語(yǔ)言和PLD,杰德生成標(biāo)準(zhǔn)的下載文件的原理圖設(shè)計(jì)。 還包含了放置漢字的功能。 檢驗(yàn)的傳輸線(xiàn)路特性和仿真驗(yàn)證了準(zhǔn)確的計(jì)算算法,信號(hào)完整性分析直接開(kāi)始從印刷電路板。 反射和串?dāng)_仿真波形顯示效果和便捷的測(cè)量工具組合。3.10 硬件成品 這是一整塊的單片機(jī)板。如圖3.10 單片機(jī)板成品圖3.10 下面是1602顯示屏

29、,如圖3.11 1602顯示屏圖3.11開(kāi)始4.軟件設(shè)計(jì)4.1 系統(tǒng)軟件設(shè)計(jì)流程圖:系統(tǒng)喚醒上電流程圖:系統(tǒng)等待密碼輸入 輸入錯(cuò)誤,蜂鳴器報(bào)警,要求重新輸入密碼。從鍵盤(pán)輸入8位數(shù)密碼,確定密碼錯(cuò)誤比較輸入的密碼與EEPROM密碼是否相同錯(cuò)誤次數(shù)累加,若錯(cuò)誤3次,系統(tǒng)鎖定。否修改密碼密碼正確是LED燈亮,蜂鳴器響兩聲,開(kāi)門(mén)斷電重啟輸入新密碼系統(tǒng)返回密碼保存后系統(tǒng)返回再次輸入密碼蜂鳴器報(bào)警提示密碼錯(cuò)誤否判斷兩次輸入的密碼是否一致是系統(tǒng)軟件設(shè)計(jì)流程圖4.14.2 系統(tǒng)軟件設(shè)計(jì)流程 本設(shè)計(jì)的軟件程序設(shè)計(jì)主要有: (1) 初始化程序 這段程序主要做的就是1602的顯示。我們先設(shè)置的是1602液晶屏顯示的

30、模式。然后顯示開(kāi)關(guān),及清屏。還有就是1602顯示屏的顯示光標(biāo)的移動(dòng)。 (2)按鍵功能實(shí)現(xiàn) 密碼輸入按鍵:按鍵功能的是實(shí)現(xiàn)是用戶(hù)先輸入8位密碼,然后按確定鍵。此時(shí),系統(tǒng)會(huì)自動(dòng)判斷用戶(hù)輸入的密碼是否與EEPROM里面所存儲(chǔ)的密碼是不是一樣的。如果用戶(hù)輸入的密碼,和eeprom里面存儲(chǔ)的密碼是一樣的。那么1602顯示屏就會(huì)提示RIGHT,OPEN。那么相反的,如果用戶(hù)輸入的密碼,和eeprom里面存儲(chǔ)的密碼是不一樣的。那么1602顯示屏就會(huì)提示wrong,retry。要是用戶(hù)輸入的密碼,錯(cuò)誤的次數(shù)累計(jì)超過(guò)了3次。那么程序會(huì)被鎖定,需要斷電重啟才能再?gòu)逆I盤(pán)輸入密碼。密碼修改按鍵:用戶(hù)選擇修改密碼,然后

31、用戶(hù)需要先輸入舊密碼。此時(shí),由系統(tǒng)判斷用戶(hù)輸入的密碼是否與EEPROM里面所存儲(chǔ)的密碼是一樣的。如果用戶(hù)輸入的密碼,和eeprom里面存儲(chǔ)的密碼是一樣的。那么1602顯示屏就會(huì)提示RIGHT,OPEN。如果不是一樣的,即用戶(hù)輸入的密碼,和eeprom里面存儲(chǔ)的密碼是不一樣的。那么1602顯示屏就會(huì)提示wrong,retry。要是用戶(hù)輸入的密碼的錯(cuò)誤累計(jì)次數(shù)超過(guò)了3次。那么程序會(huì)被鎖定,需要斷電重啟才能再?gòu)逆I盤(pán)輸入密碼。 (3)密碼修改程序按修改密碼按鍵輸入想要修改的密碼第二次輸入密碼輸入密碼不一致 修改失敗比較兩次輸入的密碼輸入密碼一致修改成功 返回主程序密碼修改程序流程圖5.2.3 (4)報(bào)

32、警程序輸入密碼N比較輸入密碼與存儲(chǔ)密碼是否一致Y蜂鳴器報(bào)警5聲蜂鳴器響兩聲密碼正確,密碼鎖打開(kāi)密碼錯(cuò)誤錯(cuò)誤次數(shù)累加,若錯(cuò)誤3次,系統(tǒng)鎖定。 輸入錯(cuò)誤,蜂鳴器報(bào)警,要求重新輸入密碼。返回?cái)嚯娭貑⑾到y(tǒng)報(bào)警程序流程圖5.2.4 (5)顯示模塊程序系統(tǒng)上電喚醒 清屏 液晶屏亮顯示welcome iInput password 返回 顯示模塊程序流程圖4.2.55. 程序調(diào)試第一,把你已經(jīng)編寫(xiě)好的C語(yǔ)言程序代碼下載到你的軟件調(diào)試工具里面。其次,匯編后就查看所編寫(xiě)完成的代碼是否有錯(cuò)誤。然后再查看編譯時(shí)的錯(cuò)誤提示,分析提示,把這個(gè)程序進(jìn)行修改。修改無(wú)誤后再進(jìn)行單片機(jī)生成機(jī)器代碼hex文件。如果程序可以進(jìn)行編

33、譯,并且沒(méi)有提示錯(cuò)誤。那么就使用STC479將之前完成的51單片機(jī)的代碼燒錄至開(kāi)發(fā)板。再根據(jù)實(shí)際情況,如果有未實(shí)現(xiàn)的功能,則再次將代碼進(jìn)行修改,直到完成所需要的功能為止。5.1 程序調(diào)試用到的軟件及工具 我的這個(gè)畢業(yè)設(shè)計(jì)的調(diào)試軟件主要是有用到KEIL C51,以及51開(kāi)發(fā)板一塊和與其配套的下載燒錄軟件STC479。5.2 調(diào)試過(guò)程首先我們先打開(kāi)KEIL C51軟件,然后新建工程時(shí)選擇ATMEL、89C52并且保存,新建文本框?qū)懭氪a后再點(diǎn)擊保存,并添加到組中。然后開(kāi)始檢查是不是有語(yǔ)法錯(cuò)誤,經(jīng)過(guò)檢查后確認(rèn)沒(méi)有錯(cuò)誤,則生成51單片機(jī)可執(zhí)行的HEX文件。然后用51開(kāi)發(fā)板相匹配的燒錄STC479軟件把

34、HEX文件燒寫(xiě)進(jìn)單片機(jī)內(nèi),燒寫(xiě)成功后,測(cè)試程序是否可以在單片機(jī)上運(yùn)行,并且查看所編寫(xiě)的功能是否有實(shí)現(xiàn)。5.2.1 顯示模塊測(cè)試:第一,我要先測(cè)試的是屏幕是否能顯示,測(cè)試過(guò)程中,剛開(kāi)始是不能顯示的。于是我想通過(guò)修改程序來(lái)改變它的狀態(tài),但是改完代碼發(fā)現(xiàn)還是不能顯示。在最后,我選擇查看自己的硬件是否出了問(wèn)題,最后發(fā)現(xiàn)是在1602液晶屏與單片機(jī)相接時(shí)。引腳插反了,所插的引腳和我代碼所寫(xiě)的引腳是相反的。第二,測(cè)試能顯示之后還要測(cè)試顯示的是否是正常狀態(tài),要求顯示的內(nèi)容必須正確。在測(cè)試過(guò)程中,我發(fā)現(xiàn)屏幕老是會(huì)出現(xiàn)花屏,但是它的內(nèi)容顯示的是正確的。于是我就這個(gè)問(wèn)題作了修改,將屏幕的延時(shí)作了修改,改完之后,會(huì)好

35、一些。但是還是會(huì)出現(xiàn)花屏。5.2.2 鍵盤(pán)模塊測(cè)試:第一,我首先要測(cè)的也是鍵盤(pán)按鍵按下之后,按鍵傳輸至AT89C52中,再?gòu)腁T89C52中傳送至顯示屏。然后通過(guò)查看顯示屏是否會(huì)有反應(yīng)來(lái)確定鍵盤(pán)是否正常。第二,確定正常之后再給鍵盤(pán)定義我所需要它輸出來(lái)的數(shù)字和功能分別是哪些,是否都能實(shí)現(xiàn),最后測(cè)試完畢后發(fā)現(xiàn)基本都是正常的,只是有時(shí)候按鍵會(huì)不夠靈敏。5.2.3 蜂鳴器模塊測(cè)試: 第一,我首先要先用代碼確定蜂鳴器是否可用,確定可用之后,調(diào)試發(fā)出聲音的次數(shù)和我代碼寫(xiě)的次數(shù)是否一致,測(cè)試之后發(fā)現(xiàn)是對(duì)的。 第二,再測(cè)發(fā)出聲音的頻率是否正確,然后再將完整的代碼燒入進(jìn)去測(cè)試,發(fā)現(xiàn)密碼輸入錯(cuò)誤是會(huì)報(bào)警,那么蜂鳴

36、器的測(cè)試結(jié)果正常。5.2.4復(fù)位模塊測(cè)試:首先要確定測(cè)試復(fù)位按鈕可用,將代碼燒寫(xiě)進(jìn)去之后,若出現(xiàn)顯示屏花屏現(xiàn)象時(shí),我們可以選擇按復(fù)位鍵必須回到初始狀態(tài),而不用像我之前一樣,斷電重啟才行。最后的測(cè)試結(jié)果正常。5.2.5 24C02存儲(chǔ)模塊測(cè)試: 第一,我們要先測(cè)試24C02這個(gè)芯片是否能正常使用,使用數(shù)碼管測(cè)試。先將測(cè)試程序即測(cè)試開(kāi)機(jī)次數(shù)代碼,燒錄至單片機(jī)板內(nèi)。然后反復(fù)開(kāi)關(guān)機(jī),查看數(shù)碼管的狀態(tài),次數(shù)是否會(huì)增加。測(cè)試結(jié)果是24C02芯片是可用的。第二,我再將已經(jīng)改寫(xiě)完成的掉電存儲(chǔ)密碼的程序燒錄至單片機(jī)板內(nèi),選擇修改密碼,修改完成后斷電。使用新密碼登陸,看能否登陸。能登陸即代碼改寫(xiě)成功,否則不成功。

37、測(cè)試的結(jié)果是不成功的。在經(jīng)過(guò)多次更改和反復(fù)測(cè)試后,一直都不成功。于是,我向同學(xué)求助。同學(xué)看過(guò)之后發(fā)現(xiàn)我代碼的寫(xiě)入和讀出有問(wèn)題。在同學(xué)的幫助下,我修改了代碼。使得電子密碼鎖掉電之后終于能夠記住掉電前所修改的密碼了。第三,就是測(cè)試整個(gè)電子密碼鎖功能是否正常,在修改的過(guò)程中是否有影響到其他功能的使用。于是,我將電子密碼鎖所有的功能都進(jìn)行了一次測(cè)試,發(fā)現(xiàn)又出現(xiàn)了一個(gè)新的問(wèn)題,那便是密碼輸入錯(cuò)誤后提示再次輸入,按按鍵沒(méi)有反應(yīng),即密碼出錯(cuò)一次就不能再輸入密碼了,只能斷電重啟。于是我就重新查看代碼是否哪里有誤,最后發(fā)現(xiàn),我所定義的數(shù)據(jù)寫(xiě)入的參數(shù)與按鍵輸入密碼的參數(shù)相同。最后我將定義的參數(shù)改了一下就可以正常使

38、用了。 所以,24C02的最后測(cè)試結(jié)果是正常的。 5.3遺留問(wèn)題在最后,還要說(shuō)一下在本次畢業(yè)設(shè)計(jì)中的遺留問(wèn)題。在設(shè)計(jì)過(guò)程中我遇到了很多的問(wèn)題,有的解決了,有的還未解決。下面就是我遺留下來(lái)的問(wèn)題: 1.再輸入密碼的過(guò)程中,我的顯示屏老是會(huì)出現(xiàn)中間跳空了某一個(gè)數(shù)字。我也修改了代碼,延遲數(shù)據(jù)接收的速率,但是效果并不是很明顯。 2.在按鍵按動(dòng)的過(guò)程中,經(jīng)常性的出現(xiàn)花屏現(xiàn)象。我先選擇用延時(shí)來(lái)解決,修改完延時(shí)后,這個(gè)問(wèn)題有所改善,但并沒(méi)有完全解決。我想可能還需要去抖,還有就是我在想也許我的硬件也存在一些接觸問(wèn)題。但由于現(xiàn)在時(shí)間緊迫,只能先將這個(gè)問(wèn)題留在這里了。我覺(jué)得解決這個(gè)問(wèn)題的大致的一個(gè)方案,就是選擇延

39、時(shí),然后去抖或者硬件方面做出的修改。 3.最后還有一個(gè)就是按鍵不是很靈敏 。很多時(shí)候按一下,它會(huì)跳出兩個(gè)數(shù)字,要不然就是沒(méi)有反應(yīng)。我想可能還是和鍵盤(pán)模塊的代碼有關(guān)系。還需要修改按鍵的接收字節(jié)的速率。 4.還有一個(gè)比較嚴(yán)重的問(wèn)題就是,用戶(hù)不需要先輸入密碼就能選擇修改密碼。雖然說(shuō)用戶(hù)不需要進(jìn)入電子密碼鎖就能修改密碼比較奇怪。但是由于時(shí)間的問(wèn)題,我還不能夠?qū)⑺恼5业慕鉀Q方案大概就是在用戶(hù)按修改密碼之前,要先判斷用戶(hù)是否進(jìn)入電子密碼鎖成功。如果用戶(hù)還沒(méi)有進(jìn)入電子密碼鎖,則提示請(qǐng)開(kāi)鎖。如果已經(jīng)進(jìn)入電子密碼鎖,那么久、用戶(hù)就可以自行進(jìn)行密碼的修改。6. 設(shè)計(jì)總結(jié) 在本次畢業(yè)設(shè)計(jì)中,我看到了自己很多的

40、不足之處,首先,對(duì)于自己要做的這個(gè)設(shè)計(jì),沒(méi)有做到完善功能。其次,有些問(wèn)題還是沒(méi)有改正,比如說(shuō)屏幕去斗。很經(jīng)常出現(xiàn)屏幕變花,但是我多次修改,還是沒(méi)有將它改正。在調(diào)試過(guò)程中也出現(xiàn)了很多的問(wèn)題,比如總是出現(xiàn)重復(fù)定義,或者沒(méi)有定義的情況。最最困難的一件事情就是點(diǎn)點(diǎn)后密碼的存儲(chǔ)問(wèn)題。經(jīng)過(guò)多我自己的多次修改,還是沒(méi)有辦法將它改正,應(yīng)此我不得不向同學(xué)們求解。在不斷的求解過(guò)程中,我發(fā)現(xiàn)自己的能力還是很不足的。至少在實(shí)踐上還是與理論上有很大差的。 從本次畢業(yè)設(shè)計(jì)中,告訴了我,要不斷的努力,不斷的去復(fù)習(xí),去學(xué)習(xí)。不管是做什么事,我們都要用盡全力去做去拼。完成畢業(yè)設(shè)計(jì)的過(guò)程中,我的導(dǎo)師-鄭明老師,他給了我很大的鼓勵(lì)

41、,讓我不斷的完善自己,不斷的去學(xué)習(xí),去做的更好,將畢業(yè)設(shè)計(jì)完成得更加的完善。 但是,由于我的能力有限,還是遺留了很多問(wèn)題的。而且因?yàn)闀r(shí)間關(guān)系,所以只能等到日后我自行去解決。如今,電子密碼鎖在社會(huì)上是越來(lái)越廣泛了,隨著科技的發(fā)展,我相信電子密碼鎖會(huì)變得更加的完善,成為保護(hù)人們財(cái)產(chǎn)安全的一大助手。在我們現(xiàn)在生活的社會(huì),哪里都要用到密碼。所以我相信,電子密碼鎖一定會(huì)是一個(gè)很成功的存在。不管什么時(shí)候,都不會(huì)過(guò)時(shí),而我們現(xiàn)在最需要做的就是不斷的去完善它,加強(qiáng)它的功能和安全性。讓人們今后在使用它時(shí),盡量少的出現(xiàn)問(wèn)題。能夠放心的去使用。 最后,我想說(shuō)的是,雖然在設(shè)計(jì)這個(gè)電子密碼鎖的時(shí)候。會(huì)出現(xiàn)很多的難處,很

42、多不理解和不能完成的地方,但是我還是堅(jiān)持下來(lái)了。這件事情讓我明白了一個(gè)道理,遇到事情不能隨隨便便就放棄。如果你選擇了做一件事,就不要隨隨便便放手。因?yàn)槟阌肋h(yuǎn)不知道,你什么時(shí)候會(huì)成功,但是你如果放棄,卻馬上可以知道你一定會(huì)失敗。 參考文獻(xiàn)1 江春來(lái).電梯曳引機(jī)扭振測(cè)試新方法的研究重慶:機(jī)械電子工程,2008 2 康華光.電子技術(shù)基礎(chǔ)(模擬部分)M.北京:高等教育出版社,2006 3 余發(fā)山,王福忠.單片機(jī)原理及應(yīng)用技術(shù)M.徐州:中國(guó)礦業(yè)大學(xué)出版社,20084 潘永雄.新編單片機(jī)原理及應(yīng)用M.西安:西安電子科技大學(xué)出版社,20035 康華光.電子技術(shù)基礎(chǔ)(數(shù)字部分)M.北京:高等教育出版社,200

43、66 百度文庫(kù).存儲(chǔ)芯片24C02中文資料7 張毅剛.MCS51單片機(jī)應(yīng)用設(shè)計(jì)M.哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2004 8 李廣第等.單片機(jī)基礎(chǔ)M.北京:北京航空航天大學(xué)出版社,2001.9 彭為.單片機(jī)典型系統(tǒng)設(shè)計(jì)實(shí)例精講M.北京:電子工業(yè)出版社,2006.10 余發(fā)山,王福忠.單片機(jī)原理及應(yīng)用技術(shù)M.徐州:中國(guó)礦業(yè)大學(xué)出版社,2008 11 劉和平.劉躍.單片機(jī)原理及應(yīng)用.重慶.重慶大學(xué)出版社,200412 陳明熒.89C51單片機(jī)課程設(shè)計(jì)實(shí)訓(xùn)教材.北京.清華大學(xué)出版社,200413 劉瑞新.單片機(jī)原理及應(yīng)用教程.北京.機(jī)械工業(yè)出版社,200314 李朝青.單片機(jī)原理及接口技術(shù).北京.北

44、京航空航天大學(xué)出版社,200215 張立科.單片機(jī)典型外圍器件及應(yīng)用實(shí)例.北京.人民郵電出版社,200616 王忠飛.胥芳 MCS-51單片機(jī)原理及嵌入式系統(tǒng)應(yīng)用.西安電大出版社,2007致 謝首先,在我的本次論文設(shè)計(jì)過(guò)程中,鄭明老師給予了我很大的幫助。鄭明導(dǎo)師從選題構(gòu)思到最后定稿的各個(gè)環(huán)節(jié)都給予了我細(xì)心指引與教導(dǎo)。在此我表示衷心的感謝。鄭明老師是一個(gè)很負(fù)責(zé)任的老師,從我第一天上他的課開(kāi)始,我就發(fā)現(xiàn)了。他嚴(yán)謹(jǐn)?shù)慕虒W(xué)態(tài)度,是最值得我學(xué)習(xí)的地方。在我的論文出現(xiàn)比較多問(wèn)題的時(shí)候,他都很認(rèn)真的指導(dǎo)我。教導(dǎo)我怎么做,怎么去修改才能做得更好。還有就是要感謝我的同學(xué)們,在我遇到不懂的問(wèn)題時(shí),他們都給了我很多

45、的幫助,尤其是在寫(xiě)代碼的方面。最后,我要感謝各科老師和同學(xué)們這些年來(lái)的幫助和陪伴,因?yàn)橛兴麄冊(cè)冢刮业拇髮W(xué)生涯變得這么的多姿多彩。在畢業(yè)答辯之前,我還要感謝各位評(píng)委老師在這么忙碌的時(shí)間里,還要抽出時(shí)間來(lái)幫我審批畢業(yè)論文。并且參與我論文答辯的評(píng)議。在此我還要感謝各位老師的耐心指導(dǎo)。感謝各位老師在我學(xué)習(xí)生涯中給與的鼓勵(lì)和幫助,在今后的生活中,我會(huì)不斷的改正自己,提升自己,使得自己能夠?qū)⒚考露甲龅母谩W詈?,還要感謝我的學(xué)校-閩江學(xué)院,它給了我一個(gè)難忘的回憶,一個(gè)有關(guān)我青春故事的回憶。在這個(gè)學(xué)校里,我收獲了很多東西,有知識(shí),有友情。還有很多很多我們忘不掉的回憶。我的大學(xué)生活雖然在這里停步了,但我相

46、信,我的未來(lái)不會(huì)停下。 附錄Main.c/*- 名稱(chēng):液晶顯示密碼鎖 論壇: 編寫(xiě):wangyd 日期:2015.3 修改:無(wú) 內(nèi)容:-*/#include<reg52.h> /包含頭文件,一般情況不需要改動(dòng),頭文件包含特殊功能寄存器的定義#include<stdio.h>#include"1602.h"#include"delay.h"#include"keyboard.h"#include"spk.h"#include<intrins.h> /包含_nop_()函數(shù)定義的頭文

47、件/#include"i2c.h"sbit SDA=P20; /將串行數(shù)據(jù)總線(xiàn)SDA位定義在為P3.5引腳sbit SCL=P21; #defineOP_READ0xa1/ 器件地址以及讀取操作,0xa1即為1010 0001B#defineOP_WRITE 0xa0/ 器件地址以及寫(xiě)入操作,0xa1即為1010 0000Bunsigned int password8=1,2,3,4,5,6,7,8;/可以更改此密碼做多組測(cè)試unsigned char Admpassword8=8,8,8,8,8,8,8,8;/可以更改此密碼做多組測(cè)試/定義密碼,實(shí)際上密碼需要存在eeprom中,可以通過(guò)程序更改。請(qǐng)用戶(hù)自行添加/*函數(shù)功能:延時(shí)1ms(3j+2)*i=(3×33+2)×10=1010(微秒),可以認(rèn)為是1毫秒*/void delay1ms() unsigned char i,j; for(i=0;i<10;i+) for(j=0;j<33;j+) ; /*函數(shù)功能:延時(shí)若干毫秒入口參數(shù):n*/ void delaynms(unsigned char n) unsigned char i;for(i=0;i<n;i

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論