




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、目錄1緒論11.1本設(shè)計(jì)的研究背景與研究目的11.2國(guó)內(nèi)外研究現(xiàn)狀22電子密碼鎖的總體設(shè)計(jì)方案32.1方案論證32.1.1方案一采用單片機(jī)控制方案32.1.2方案二采用數(shù)字電路控制方案42.1.3方案三采用EDA控制方案52.2方案比較以及可行性53電子密碼鎖硬件電路的設(shè)計(jì)63.1中央控制模塊的設(shè)計(jì)63.1.1主控芯片STC89C52單片機(jī)的簡(jiǎn)介63.1.2時(shí)鐘電路的設(shè)計(jì)73.1.3復(fù)位電路的設(shè)計(jì)83.2鍵盤(pán)輸入模塊的設(shè)計(jì)93.2.1矩陣鍵盤(pán)工作原理93.2.2單片機(jī)鍵盤(pán)掃描法103.3LCD顯示密碼模塊的設(shè)計(jì)103.3.1LCD1602簡(jiǎn)介113.3.2LCD1602液晶顯示模塊與單片機(jī)連接
2、電路123.4開(kāi)鎖模塊的設(shè)計(jì)133.5報(bào)警模塊的設(shè)計(jì)133.6硬件電路總體設(shè)計(jì)144電子密碼鎖的軟件設(shè)計(jì)154.1主程序流程介紹154.2鍵盤(pán)模塊流程圖164.3顯示模塊流程圖184.4修改密碼流程圖194.5開(kāi)鎖和報(bào)警模塊流程圖205電子密碼鎖的系統(tǒng)調(diào)試及分析225.1硬件電路調(diào)試及結(jié)果分析225.2軟件調(diào)試及功能分析225.2.1調(diào)試過(guò)程225.2.2仿真結(jié)果分析245.3系統(tǒng)調(diào)試266結(jié)論及展望286.1結(jié)論286.2展望28謝辭29參考文獻(xiàn)30附錄32附1部分代碼32附2總電路圖40I電子密碼鎖的設(shè)計(jì)與制作1緒論1.1本設(shè)計(jì)的研究背景與研究目的隨著人們生活水平的提高和社會(huì)科技的進(jìn)步,鎖
3、已發(fā)展到了密碼鎖、磁性鎖、電子鎖、激光鎖、聲控鎖等等。在傳統(tǒng)鑰匙的基礎(chǔ)上,加了一組或多組密碼,不同聲音,不同磁場(chǎng),不同聲波,不同光束光波,不同圖像。(如指紋、眼底視網(wǎng)膜等)來(lái)控制鎖的開(kāi)啟。從而大大提高了鎖的安全性,使不法之徒無(wú)從下手,人們也就能對(duì)自身財(cái)產(chǎn)安全有了更多的保障。因此電子密碼防盜鎖作為防盜衛(wèi)士的作用日趨重要,而如何實(shí)現(xiàn)家庭防盜這一問(wèn)題也變的尤其的突出,傳統(tǒng)的機(jī)械鎖由于其構(gòu)造的簡(jiǎn)單,被撬的事件屢見(jiàn)不鮮,而電子密碼防盜鎖用密碼代替鑰匙,不但省去了佩戴鑰匙的煩惱,也從根本上解決了普通門(mén)鎖保密性差的缺點(diǎn)。當(dāng)今安全信息系統(tǒng)應(yīng)用越來(lái)越廣泛,特別在保護(hù)機(jī)密、維護(hù)隱私和財(cái)產(chǎn)保護(hù)方面起到重大作用,而基
4、于電子密碼鎖的安全系統(tǒng)是其中的組成部分,因此研究它具有重大的現(xiàn)實(shí)意義。單片機(jī)又稱(chēng)單片微控制器,它不是完成某一個(gè)邏輯功能的芯片,而是把一個(gè)計(jì)算機(jī)系統(tǒng)集成到一個(gè)芯片上。相當(dāng)于一個(gè)微型的計(jì)算機(jī),和計(jì)算機(jī)相比,單片機(jī)只缺少了I/O設(shè)備。概括的講,一塊芯片就成了一臺(tái)計(jì)算機(jī)。隨著電子技術(shù)和計(jì)算機(jī)技術(shù)的飛速發(fā)展,單片機(jī)性能不斷完善,性?xún)r(jià)比顯著提高,技術(shù)日趨完善。由于單片機(jī)具有體積小、重量輕、價(jià)格便宜、功耗低、控制功能強(qiáng)及運(yùn)算速度快等特點(diǎn),因而在國(guó)民經(jīng)濟(jì)建設(shè)、軍事及家用電器等各個(gè)領(lǐng)域均得到了廣泛的應(yīng)用。它主要是作為控制部分的核心部件。它是一種在線(xiàn)式實(shí)時(shí)控制計(jì)算機(jī),在線(xiàn)式就是現(xiàn)場(chǎng)控制,需要的是有較強(qiáng)的抗干擾能力
5、,較低的成本,這也是和離線(xiàn)式計(jì)算機(jī)的(比如家用PC)的主要區(qū)別。單片機(jī)由運(yùn)算器、控制器、存儲(chǔ)器、輸入輸出設(shè)備構(gòu)成。因?yàn)樗w積小,通常都藏在被控機(jī)械的“肚子”里。它在整個(gè)裝置中,起著有如人類(lèi)頭腦的作用,它出了毛病,整個(gè)裝置就癱瘓了。本設(shè)計(jì)利用單片機(jī)及附加器件實(shí)現(xiàn)數(shù)據(jù)傳送和控制算法,來(lái)完成某一實(shí)際功能,檢驗(yàn)并提高同學(xué)對(duì)整體電路設(shè)計(jì)和把握能力,了解單片機(jī)系統(tǒng)設(shè)計(jì)流程,以及電路板的實(shí)際制作和調(diào)試能力。同時(shí)也加強(qiáng)對(duì)數(shù)字電路、單片機(jī)和微機(jī)原理等課程知識(shí)的實(shí)際應(yīng)用能力,也為同類(lèi)產(chǎn)品的進(jìn)一步發(fā)展奠定理論和實(shí)踐基礎(chǔ)。1.2國(guó)內(nèi)外研究現(xiàn)狀隨著人們對(duì)安全的重視和科技的發(fā)展,許多電子智能鎖已在國(guó)內(nèi)外相繼面世。但是這些
6、產(chǎn)品的特點(diǎn)是針對(duì)特定的指紋和有效卡,只能適用于保密要求的箱、柜、門(mén)等。而且指紋識(shí)別器,若在公共場(chǎng)所使用存在容易機(jī)械損壞,IC卡還存在容易丟失、損壞等特點(diǎn)。加上其成本較高,一定程度上限制了這類(lèi)產(chǎn)品的普及和推廣。電子鎖,由于其保密性高,使用靈活性好,安全系數(shù)高,受到了廣大用戶(hù)的歡迎。鑒于目前的技術(shù)水平與市場(chǎng)的接收程度,電子密碼鎖是這類(lèi)電子防盜產(chǎn)品的主流。目前,在西方發(fā)達(dá)國(guó)家,電子密碼鎖的技術(shù)相對(duì)先進(jìn),種類(lèi)齊全,電子密碼鎖已被廣泛應(yīng)用于智能門(mén)禁系統(tǒng)中,通過(guò)多種更加安全,更加可靠的技術(shù)實(shí)現(xiàn)大門(mén)的管理。在我國(guó)電子鎖整體水平尚處于國(guó)際上70年代左右,電子密碼鎖的成本還很高,市場(chǎng)上仍以按鍵電子鎖為主,按鍵式
7、和卡片鑰匙式電子鎖已引進(jìn)國(guó)際先進(jìn)水平,現(xiàn)國(guó)內(nèi)有幾個(gè)廠(chǎng)生產(chǎn)供應(yīng)市場(chǎng)。但國(guó)內(nèi)自行研制開(kāi)發(fā)的電子鎖,其市場(chǎng)結(jié)構(gòu)尚未形成,應(yīng)用還不廣泛。國(guó)內(nèi)的不少企業(yè)也引進(jìn)了世界上先進(jìn)的技術(shù),發(fā)展前景非常可觀(guān)。2電子密碼鎖的總體設(shè)計(jì)方案2.1方案論證2.1.1方案一采用單片機(jī)控制方案選用單片機(jī)STC89C52 作為本設(shè)計(jì)的核心元件,利用單片機(jī)靈活的編程設(shè)計(jì)和豐富的IO端口,及其控制的準(zhǔn)確性,實(shí)現(xiàn)基本的密碼鎖功能。在單片機(jī)的外圍電路外接輸入鍵盤(pán)用于密碼的輸入和一些功能的控制,外接LCD顯示器用于顯示作用??驁D如下圖2.1所示。復(fù)位電路振蕩電路鍵盤(pán)電路開(kāi)鎖電路AT9C 51單片機(jī)報(bào)警電路顯示電路 圖2.1 系統(tǒng)框圖1)中
8、央控制部分采用 STCT89C52 單片機(jī),該型單片機(jī)有 8KB 的 ROM, 512B 的 RAM,5個(gè)中斷源, 3個(gè)16 位定時(shí)器/計(jì)數(shù)器。 2)顯示部分采用1602LCD顯示屏組成顯示電路來(lái)提示信息。當(dāng)輸入密碼時(shí),只顯示*,當(dāng)密碼位數(shù)輸入完畢按下確認(rèn)鍵之后,對(duì)輸入的密碼進(jìn)行比較,正確就發(fā)出叮當(dāng)聲,同時(shí)門(mén)打開(kāi);若密碼輸入不正確時(shí)顯示錯(cuò)誤,并計(jì)次錄數(shù),當(dāng)次數(shù)超過(guò)三次就觸動(dòng)蜂鳴器發(fā)出報(bào)警聲。3)鍵盤(pán)輸入部分本設(shè)計(jì)所采用鍵盤(pán)為4×4行列式。每一條水平線(xiàn)(行線(xiàn))與垂直線(xiàn)(列線(xiàn))的交叉處不相通,而是通過(guò)一個(gè)按鍵來(lái)連通,利用這種行列式矩陣結(jié)構(gòu)只需要 4 條行線(xiàn)和 4條列線(xiàn),即可組成4
9、5;4個(gè)按鍵的鍵盤(pán)。在行線(xiàn)所接的單片機(jī)4個(gè)I/O 口作為輸出端,而列線(xiàn)所接的I/O口則作為輸入端。當(dāng)按鍵沒(méi)有被按下時(shí)所有的輸出端都是高電平,代表無(wú)鍵按下。一旦有鍵按下,則輸入線(xiàn)就會(huì)被拉低,這樣通過(guò)讀入輸入線(xiàn)的狀態(tài)就可知是否有鍵按下。按鍵功能分配分為數(shù)字鍵和功能鍵,數(shù)字鍵主要是用于密碼輸入,功能鍵主要是用于修改密碼、確認(rèn)密碼、刪除密碼等。4) 報(bào)警電路部分當(dāng)輸入密碼錯(cuò)誤超過(guò)3次,就會(huì)觸動(dòng)報(bào)警電路中蜂鳴器。5)開(kāi)鎖電路部分用發(fā)光二極管代替開(kāi)鎖的電路,發(fā)光表示開(kāi)鎖。2.1.2方案二采用數(shù)字電路控制方案用以74LS112雙JK觸發(fā)器構(gòu)成的數(shù)字邏輯電路作為密碼鎖的核心控制,共設(shè)了9個(gè)用戶(hù)輸入鍵,其中只有
10、4個(gè)是有效的密碼按鍵,其它的都是干擾按鍵,若按下干擾鍵,鍵盤(pán)輸入電路自動(dòng)清零,原先輸入的密碼無(wú)效,需要重新輸入;如果用戶(hù)輸入密碼的時(shí)間超過(guò)10秒(一般情況下,用戶(hù)不會(huì)超過(guò)10秒,若用戶(hù)覺(jué)得不便,還可以修改)電路將報(bào)警20秒,若電路連續(xù)報(bào)警三次,電路將鎖定鍵盤(pán)2分鐘,防止他人的非法操作。電路由兩大部分組成:密碼鎖電路和備用電源(UPS),其中設(shè)置UPS電源是為了防止因?yàn)橥k娫斐傻拿艽a鎖電路失效,使用戶(hù)免遭麻煩。密碼鎖電路包含:鍵盤(pán)輸入、密碼修改、密碼檢測(cè)、開(kāi)鎖電路、執(zhí)行電路、報(bào)警電路、鍵盤(pán)輸入次數(shù)鎖定電路。電路框圖如圖2.2所示。密碼修改電路鍵盤(pán)輸入電路報(bào)警電路開(kāi)鎖電路執(zhí)行電路密碼校驗(yàn)電路圖2.
11、2 密碼鎖電路2.1.3方案三采用EDA控制方案1)整體結(jié)構(gòu)設(shè)計(jì)電子密碼鎖包括鍵盤(pán)控制、 密碼設(shè)置和報(bào)警提示三大功能模塊。2)硬件描述語(yǔ)言VHDL描述電路首先在合適的路徑下建立本設(shè)計(jì)的文件夾。 然后用VHDL語(yǔ)言編輯。最后仿真測(cè)試及編程下載配置。 2.2方案比較以及可行性方案一采用基于單片機(jī)實(shí)現(xiàn)的電子密碼鎖,其中硬件電路設(shè)計(jì)具有按鍵有效提示、輸入錯(cuò)誤提示、控制開(kāi)鎖電平、控制報(bào)警電路、修改密碼電路等多種功能。密碼鎖內(nèi)部的單片機(jī)是核心處理設(shè)備,單片機(jī)有體積小、質(zhì)量輕、價(jià)格便宜諸多優(yōu)點(diǎn)。單片機(jī)軟件部分軟件的設(shè)計(jì)主要是 51 單片機(jī)的程序編寫(xiě)且單片機(jī)是靠程序運(yùn)行的,如果需要修改只需要修改程序,不需要將
12、整個(gè)硬件電路做整修,這不僅以節(jié)約資源而且可以節(jié)約時(shí)間,提高工作效率。因?yàn)橥ㄟ^(guò)不同的程序可以實(shí)現(xiàn)不同的功能,尤其是特殊的獨(dú)特的一些功能。這是別的器件需要費(fèi)很大力氣才能做到的,有些則是花大力氣也很難做到的,但是單片機(jī)卻可以輕松解決。通過(guò)編寫(xiě)的程序可以實(shí)現(xiàn)高智能,高效率,以及高可靠性,比起數(shù)電中邏輯器件這個(gè)優(yōu)點(diǎn)顯而易見(jiàn),因此方案一比方案二合適。對(duì)比方案三,雖然都可通過(guò)編程來(lái)實(shí)現(xiàn)各種功能,但是單片機(jī)是軟件編程,而EDA技術(shù)是在軟件平臺(tái)下,用硬件描述語(yǔ)言VHDL來(lái)實(shí)現(xiàn)的。設(shè)計(jì)者在EDA軟件平臺(tái)上,用硬件描述語(yǔ)言VHDL完成設(shè)計(jì)文件。對(duì)于我個(gè)人來(lái)說(shuō),EDA方面的知識(shí)有限,不太會(huì)運(yùn)用,因此我個(gè)人不選擇這個(gè)方
13、案。綜上,本次設(shè)計(jì)最優(yōu)選擇為方案一即采用AT89C51為核心的單片機(jī)控制,其方案的可行性如下:n 單片機(jī)價(jià)格實(shí)惠,因而畢業(yè)設(shè)計(jì)成本不高。n 單片機(jī)型號(hào)、種類(lèi)多,在市場(chǎng)上容易購(gòu)買(mǎi)。n 電路的安裝和調(diào)試都比較容易方便,比較易于實(shí)現(xiàn)。 3電子密碼鎖硬件電路的設(shè)計(jì)本設(shè)計(jì)主要由中央控制模塊、鍵盤(pán)輸入模塊、LCD顯示密碼模塊、開(kāi)鎖電路模塊、蜂鳴器報(bào)警電路模塊五大模塊組成。3.1中央控制模塊的設(shè)計(jì)中央控制主要由STC89C52單片機(jī)構(gòu)成,輔以復(fù)位電路和時(shí)鐘電路。3.1.1主控芯片STC89C52單片機(jī)的簡(jiǎn)介1)STC89C52單片機(jī)的主要特性如下: 1) 增強(qiáng)型 8051 單片機(jī),6 時(shí)鐘/機(jī)器周期和 12
14、 時(shí)鐘/機(jī)器周期可以任意選擇,指令代碼完全兼容傳統(tǒng) 8051。 2) 用戶(hù)應(yīng)用程序空間為 8K 字節(jié),片上集成 512 字節(jié) RAM 。3) 通用 I/O 口(32個(gè)),P1/P2/P3/P4 是準(zhǔn)雙向口/電阻上拉, P0 口是漏極開(kāi)路輸出,作為總線(xiàn)擴(kuò)展用時(shí),不用加上拉電阻,作為 I/O 口用時(shí),需加上拉電阻。 2)STC89C52RC 引腳功能說(shuō)明:1) VCC(40 引腳):電源電壓 2) VSS(20 引腳):接地 3) P0 端口(P0.0P0.7,3932 引腳) :P0 口是一個(gè)漏極開(kāi)路的 8 位雙向 I/O 口。作為輸出端口,每個(gè)引腳能驅(qū)動(dòng)8個(gè)TTL 負(fù)載,對(duì)端口 P0 寫(xiě)入每個(gè)
15、引腳能驅(qū)動(dòng) 寫(xiě)入“1”時(shí),可 以作為高阻抗輸入。4) P1 端口(P1.0P1.7,18 引腳) :P1 口是一個(gè)內(nèi)部帶上拉電阻的 8 位雙向 I/O 口。P1 口作輸入口使用時(shí),因?yàn)橛袃?nèi)部上拉電阻,那些被外部拉低的引腳會(huì)輸出一個(gè)電流。 5) P2 端口(P2.0P2.7,2128 引腳) :P2 口是一個(gè)內(nèi)部帶上拉電阻的 8 位雙向 I/O 端口。P2 作為輸入口使用時(shí),因?yàn)橛袃?nèi)部的上拉電阻,那些被外部信號(hào)拉低的引腳會(huì) 輸出一個(gè)電流(I)。6) P3 端口(P3.0P3.7,1017 引腳) :P3 口是一個(gè)帶內(nèi)部上拉電阻的 8 位雙向 I/O 端口。7) RST(9 引腳) :復(fù)位輸入,當(dāng)
16、輸入連續(xù)兩個(gè)機(jī)器周期以上高電平時(shí)為有效, 用來(lái)完成單片機(jī)的復(fù)位初始化操作。8) ALE/ ROG (30 引腳) 地址鎖存控制信號(hào) :(ALE) 是訪(fǎng)問(wèn)外部程序存儲(chǔ)器時(shí), 鎖存低 8 位地址的輸出脈沖。 圖3.1 STC單片機(jī)管腳圖3.1.2時(shí)鐘電路的設(shè)計(jì)時(shí)鐘信號(hào)用來(lái)提供單片機(jī)片內(nèi)的各種微操作的時(shí)間基準(zhǔn),時(shí)鐘信號(hào)通常用兩種電路形式得到:內(nèi)部振蕩和外部振蕩。MCS-51單片機(jī)內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反向放大器,引腳XTAL1和XTAL2分別是此放大電器的輸入端和輸出端,由于采用內(nèi)部方式時(shí),電路簡(jiǎn)單,所得的時(shí)鐘信號(hào)比較穩(wěn)定,實(shí)際使用中常采用這種方式,如圖2-2所示在其外接晶體振蕩器(簡(jiǎn)稱(chēng)晶
17、振)或陶瓷諧振器就構(gòu)成了內(nèi)部振蕩方式,片內(nèi)高增益反向放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起可構(gòu)成一個(gè)自激振蕩器并產(chǎn)生振蕩時(shí)鐘脈沖。圖3.1.2中外接晶體以及電容C2和C3構(gòu)成并聯(lián)諧振電路,它們起穩(wěn)定振蕩頻率、快速起振的作用,其值為30pF左右,晶振頻率選11.0592MHz ,其連接電路如圖3.2所示。圖3.2 晶振電路3.1.3復(fù)位電路的設(shè)計(jì)單片機(jī)在啟動(dòng)時(shí)都需要復(fù)位,以使CPU及系統(tǒng)各部件處于確定的初始狀態(tài),并從初態(tài)開(kāi)始工作。89系列單片機(jī)的復(fù)位信號(hào)是從RST引腳輸入到芯片內(nèi)的施密特觸發(fā)器中的。當(dāng)系統(tǒng)處于正常工作狀態(tài)時(shí),且振蕩器穩(wěn)定后,如果RST引腳上有一個(gè)高電平并維持2個(gè)機(jī)器周
18、期(24個(gè)振蕩周期)以上,則CPU就可以響應(yīng)并將系統(tǒng)復(fù)位。單片機(jī)系統(tǒng)的復(fù)位方式有:手動(dòng)按鈕復(fù)位和上電復(fù)位,其連接電路如圖3.3所示。 1)手動(dòng)按鈕復(fù)位 手動(dòng)按鈕復(fù)位需要人為在復(fù)位輸入端RST上加入高電平(圖1)。一般采用的辦法是在RST端和正電源VCC之間接一個(gè)按鈕。當(dāng)人為按下按鈕時(shí),則VCC的+5V電平就會(huì)直接加到RST端。手動(dòng)按鈕復(fù)位的電路如所示。由于人的動(dòng)作再快也會(huì)使按鈕保持接通達(dá)數(shù)十毫秒,所以,完全能夠滿(mǎn)足復(fù)位的時(shí)間要求。 2)上電復(fù)位 上電復(fù)位電路只要在RST復(fù)位輸入引腳上接電容至VCC端,下接一個(gè)電阻到地即可。對(duì)于CMOS型單片機(jī),由于在RST內(nèi)部有一個(gè)下拉電阻,故可將外部電阻去掉
19、,而將外接電容減至1?F。上電復(fù)位的工作過(guò)程是在加電時(shí),復(fù)位電路通過(guò)電 容加給RST端一個(gè)短暫的高電平信號(hào),此高電平信號(hào)隨著VCC對(duì)電容的充電過(guò)程而逐漸回落,即RST端的高電平持續(xù)時(shí)間取決于電容的充電時(shí)間。為了保證系統(tǒng)能夠可靠地復(fù)位,RST端的高電平信號(hào)必須維持足夠長(zhǎng)的時(shí)間。上電時(shí),VCC的上升時(shí)間約為10ms,而起振蕩器的起時(shí)間取決于振蕩頻率,如晶振頻率為10MHz,起振時(shí)間為1ms;晶振頻率為1MHz,起振時(shí)間則為10ms。在圖2的復(fù)位電路中,當(dāng)VCC掉電時(shí),必然會(huì)使RST端電壓迅速下降到0V以下,但是,由于內(nèi)部電路的限制作用,這個(gè)負(fù)電壓將不會(huì)對(duì)器件產(chǎn)生損害。另外,在復(fù)位期間,端口引腳處于
20、隨機(jī)狀態(tài),復(fù)位后,系統(tǒng)將端口置為全“l(fā)”態(tài)。如果系統(tǒng)在上電時(shí)得不到有效的復(fù)位,則程序計(jì)數(shù)器PC將得不到一個(gè)合適的初值,因此,CPU可能會(huì)從一個(gè)未被定義的位置開(kāi)始執(zhí)行程序。 圖3.3 手動(dòng)按鈕復(fù)位電路3.2鍵盤(pán)輸入模塊的設(shè)計(jì)3.2.1矩陣鍵盤(pán)工作原理矩陣鍵盤(pán)又稱(chēng)為行列式鍵盤(pán),它是用4條I/O線(xiàn)作為行線(xiàn),4條I/O線(xiàn)作為列線(xiàn),組成鍵盤(pán)的。在行線(xiàn)和列線(xiàn)的每一個(gè)交叉點(diǎn)上,設(shè)置一個(gè)按鍵。這樣鍵盤(pán)中按鍵的個(gè)數(shù)是4×4個(gè)。這種行列式鍵盤(pán)結(jié)構(gòu)能夠有效地提高單片機(jī)系統(tǒng)中I/O口的利用率。行列式鍵盤(pán)的工作方式是先利用列線(xiàn)發(fā)送掃描字,然后讀取行線(xiàn)的狀態(tài),查看是否有按鍵按下。鍵盤(pán)部分提供一種掃描的工作方式能
21、對(duì)鍵盤(pán)不斷掃描、自動(dòng)消抖、自動(dòng)識(shí)別按下的鍵,并給出編碼。在顯示部分,它可以為發(fā)光二極管、熒光管及其他顯示器提供按掃描方式工作的顯示接口,而且為顯示器提供多路復(fù)用信號(hào),可以顯示多達(dá)16位的字符或數(shù)字。鍵盤(pán)中有無(wú)按鍵按下是由列線(xiàn)送入全掃描字、行線(xiàn)讀入行線(xiàn)狀態(tài)來(lái)判斷的,其方法是由列線(xiàn)逐列置低電平后,檢查行輸入狀態(tài)來(lái)判斷,其方法是依次給列線(xiàn)送低電平,然后檢查所有行線(xiàn)狀態(tài),如果全為1,則所按下的鍵不在此列,如果不全為1,則所按下的鍵必在此列,而且是在與0電平線(xiàn)相交的交點(diǎn)上的那個(gè)鍵。3.2.2單片機(jī)鍵盤(pán)掃描法掃描法是在判定有鍵按下后逐列果行(或列)的狀態(tài)出現(xiàn)非全1狀態(tài),如果(或列)的狀態(tài)出現(xiàn)非全1狀態(tài),這
22、時(shí)0狀態(tài)的行、列交點(diǎn)的鍵就是所按下的鍵。掃描法的特點(diǎn)是逐行(或逐列)掃描查詢(xún),這時(shí)相應(yīng)行(或列)應(yīng)有上拉電阻接高電平。行列式鍵盤(pán)掃描程序就是采用掃描法來(lái)確定哪個(gè)鍵按下的。 確定矩陣式鍵盤(pán)上哪個(gè)鍵被按下時(shí)運(yùn)用掃描法,又稱(chēng)為逐行(或列)掃描查詢(xún)法,是一種最常用的按鍵識(shí)別方法,過(guò)程如下:1)判斷鍵盤(pán)中有無(wú)鍵按下,將全部行線(xiàn)Y0Y3置為低電平,然后檢測(cè)列線(xiàn)的狀態(tài)。只要有一列的電平為低,則表示鍵盤(pán)中有鍵被按下,而且閉合的鍵位于低電平線(xiàn)與4根行線(xiàn)相交叉的4個(gè)按鍵之中。若所有列線(xiàn),均為高電平,則鍵盤(pán)中無(wú)鍵按下。2)判斷閉合鍵所在的位置,在確認(rèn)有鍵按下后,即可進(jìn)入確定具體閉合鍵的過(guò)程。其方法是:依次將行線(xiàn)置為
23、為低電平,即在置某根行線(xiàn)為低電平時(shí),其他線(xiàn)為高電平,在確定某根行線(xiàn)位置為低電平后,再逐行檢測(cè)各列線(xiàn)的電平狀態(tài),若某列為則該列線(xiàn)與置為低電平的行線(xiàn)交叉處的按鈕就是閉合的按鍵,其連接電路如圖3.4所示。圖3.4 矩陣鍵盤(pán)電路與單片機(jī)連接圖3.3LCD顯示密碼模塊的設(shè)計(jì)顯示模塊主要由LCD1602顯示屏組成,他顯示的是鍵盤(pán)輸入的密碼,以及密碼正確與錯(cuò)誤的提示。當(dāng)輸入密碼時(shí),出于安全性的考慮,顯示的密碼是有*號(hào)代替,為暗密。當(dāng)輸入六位密碼后按下確認(rèn)鍵,系統(tǒng)會(huì)與存于ROM的密碼對(duì)比, 若密碼錯(cuò)誤,顯示屏?xí)@示Error,若密碼正確,顯示屏?xí)@示Right。3.3.1LCD1602簡(jiǎn)介1) 1602功能介
24、紹1602液晶也叫1602字符型液晶它是一種專(zhuān)門(mén)用來(lái)顯示字母、數(shù)字、符號(hào)等的點(diǎn)陣型液晶模塊它有若干個(gè)5X7或者5X11等點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以顯示一個(gè)字符。每位之間有一個(gè)點(diǎn)距的間隔每行之間也有間隔起到了字符間距和行間距的作用,正因?yàn)槿绱怂运荒茱@示圖形。1602LCD是指顯示的內(nèi)容為16X2,即可以顯示兩行,每行16個(gè)字符液晶模塊(顯示字符和數(shù)字)。 2) 1602LCD 采用標(biāo)準(zhǔn)的 14腳(無(wú)背光)或 16腳(帶背光)接口,各引腳接口說(shuō)明如下表3.1所示: 表 3.1引腳功能說(shuō)明編號(hào)符號(hào)引腳說(shuō)明編號(hào)符號(hào)引腳說(shuō)明1VSS電源地9D2數(shù)據(jù)2VDD電源正極10D3數(shù)據(jù)3VL液晶顯示
25、偏壓11D4數(shù)據(jù)4RS數(shù)據(jù)/命令選擇12D5數(shù)據(jù)5R/W讀/寫(xiě)選擇13D6數(shù)據(jù)6E使能信號(hào)14D7數(shù)據(jù)7D0數(shù)據(jù)15BLA背光源正極8D1數(shù)據(jù)16BLK背光源負(fù)極其引腳圖如下圖所示:圖3.5 LCD1602引腳圖3) LCD寄存器的選擇表3.2 LCD寄存器的選擇ER/WRS功能說(shuō)明110寫(xiě)入命令寄存器111寫(xiě)入數(shù)據(jù)寄存器110讀取忙碌標(biāo)志及RAM地址111讀取RAM數(shù)據(jù)0X1不動(dòng)作3.3.2LCD1602液晶顯示模塊與單片機(jī)連接電路圖3.6 連接電路3.4開(kāi)鎖模塊的設(shè)計(jì)通過(guò)單片機(jī)送給開(kāi)鎖執(zhí)行機(jī)構(gòu),電路驅(qū)動(dòng)原本是利用電磁鎖吸合原理來(lái)進(jìn)行開(kāi)鎖的的。本設(shè)計(jì)為節(jié)約資源,通過(guò)P3.0接一個(gè)發(fā)光二極管作
26、為電磁閥線(xiàn)圈,當(dāng)發(fā)光二級(jí)管亮則表示實(shí)現(xiàn),密碼正確門(mén)開(kāi),若二極管不亮則表示輸入的密碼不正確,門(mén)不開(kāi),其連接電路如圖3.7所示。圖3.7 開(kāi)鎖電路3.5報(bào)警模塊的設(shè)計(jì)報(bào)警模塊由蜂鳴器和單片機(jī)組成。選擇一只壓電式蜂鳴器,壓電式蜂鳴器工作時(shí)約需要100mA驅(qū)動(dòng)電流。蜂鳴器電路如圖3.5所示。當(dāng)89C51的P3.3口輸出為高電平時(shí),蜂鳴器產(chǎn)生蜂鳴音,89C51輸出為低電平時(shí),蜂鳴器不發(fā)聲,其連接電路如圖3.5所示。圖3.8 報(bào)警電路3.6硬件電路總體設(shè)計(jì)本次設(shè)計(jì)的各大模塊在上述章節(jié)中已仔細(xì)介紹了,將各大模塊融合在一起后組成電子密碼鎖硬件電路,鍵盤(pán)輸入模塊和LCD顯示模塊是最主要的兩大模塊,鍵盤(pán)主要是完成
27、密碼的輸入、修改密碼、消除密碼等等任務(wù)。而顯示模塊則是主要完成輸入密碼的顯示以及密碼輸入正確或者錯(cuò)誤的提示。而剩余的就是報(bào)警模塊、開(kāi)鎖模塊以及單片機(jī)的最小系統(tǒng)。開(kāi)鎖顧名思義就是密碼輸入正確后打開(kāi)大門(mén),而報(bào)警主要是為安全著想,當(dāng)有人非法入侵時(shí)便于抓住犯人。單片機(jī)最小系統(tǒng)則是單片機(jī)正常運(yùn)行的保障。總的硬件電路如圖3.9所示。圖3.9 總的硬件電路4電子密碼鎖的軟件設(shè)計(jì)電子密碼鎖的軟件設(shè)計(jì)是整個(gè)電子密碼鎖可靠安全運(yùn)行的關(guān)鍵,密碼鎖軟件程序分為主程序、延時(shí)子程序、LCD顯示子程序、修改密碼子程序、掃描鍵盤(pán)輸入子程序、報(bào)警子程序。密碼通過(guò)矩陣鍵盤(pán)輸入,并且在液晶顯示屏上顯示,如果輸入密碼正確,則可以直接
28、開(kāi)鎖。如果不正確,并且3次以上輸入不正確,則啟動(dòng)報(bào)警系統(tǒng),觸發(fā)蜂鳴器發(fā)聲。如果要修改密碼,則需要在輸入基礎(chǔ)密碼判別正確后,輸入修改后的密碼,通過(guò)系統(tǒng)確認(rèn)后方可修改密碼。為了完成上述任務(wù),在進(jìn)行軟件設(shè)計(jì)時(shí),通常把整個(gè)過(guò)程分成若干個(gè)部分,每一部分叫做一個(gè)模塊。而本次設(shè)計(jì)分為四大模塊,分別是鍵盤(pán)輸入模塊、LCD顯示模塊、開(kāi)鎖和報(bào)警模塊以及修改密碼模塊,通過(guò)主程序來(lái)實(shí)現(xiàn)控制。4.1主程序流程介紹主程序主要內(nèi)容是各子程序模塊的調(diào)用,并利用各模塊進(jìn)行電子密碼鎖功能的實(shí)現(xiàn),即是鍵盤(pán)輸入密碼并在LCD液晶顯示屏上顯示密碼,當(dāng)密碼輸入完成后,單片機(jī)會(huì)將輸入進(jìn)的密碼與原單片機(jī)內(nèi)部所儲(chǔ)存的密碼進(jìn)行對(duì)比,如若密碼正確
29、,則代表電磁吸合器的發(fā)光二極管會(huì)顯示紅色,同時(shí)LCD液晶顯示屏?xí)@示出right;如若密碼錯(cuò)誤,會(huì)啟動(dòng)計(jì)數(shù)器計(jì)數(shù),當(dāng)錯(cuò)誤次數(shù)超過(guò)三次時(shí),報(bào)警系統(tǒng)會(huì)啟動(dòng)即是蜂鳴器會(huì)發(fā)出報(bào)警聲,以提醒保安。流程圖如圖4.1所示。開(kāi)始初始化有鍵按下?調(diào)用顯示啟動(dòng)定時(shí)識(shí)別按鍵按鍵數(shù)=6?超時(shí)?比較密碼開(kāi)門(mén)結(jié)束自動(dòng)清除<3次?報(bào)警NNYYYYNN圖4.1 主程序流程圖4.2鍵盤(pán)模塊流程圖鍵盤(pán)輸入模塊主要包含鍵盤(pán)的掃描、延時(shí)去抖、找到鍵值以及返回鍵值。鍵盤(pán)掃描時(shí)循環(huán)的,程序編寫(xiě)是會(huì)使其進(jìn)入是循環(huán),這樣可以檢驗(yàn)出是否有按鍵按下,如果無(wú)按鍵按下就會(huì)進(jìn)入等待有按鍵按下的狀態(tài),如果有按鍵按下的話(huà)就進(jìn)入延時(shí)去抖的步驟,這樣可
30、以肯定的確定掃描到的按鍵是否被按下。經(jīng)過(guò)去抖之后就是確定按鍵的位置即是第幾行和第幾列,找到按鍵后,就是確定鍵值并返回按鍵值,每一次掃描到有鍵按下后,最后都要有釋放閉合按鍵的步驟,這是為了避免影響下一次鍵盤(pán)的掃描和按鍵值的讀取。流程圖如圖4.2所示。鍵盤(pán)掃描返回鍵值閉合鍵釋放計(jì)算鍵值找到閉合鍵延時(shí)去抖有鍵閉合?YN圖4.2 鍵盤(pán)掃描流程圖按鍵的消抖子程序所示:if(press_on!=0XF0)/-按鍵消抖-(時(shí)間自定)delay(50);press_on=KEY_IO; 確定鍵值的子程序如下所示:switch(row) case 0xe0:row=0;break;case 0xd0:row=1
31、;break;case 0xb0:row=2;break;case 0x70:row=3;break; switch(col) case 0x07:col=0;break;case 0x0b:col=1;break;case 0x0d:col=2;break;case 0x0e:col=3;break; recieve=key_valuerowcol; 4.3顯示模塊流程圖LCD顯示模塊的軟件設(shè)計(jì)主要包含開(kāi)始、初始化LCD、清除LCD、寫(xiě)LCD四個(gè)過(guò)程。其中寫(xiě)包含寫(xiě)數(shù)據(jù)和寫(xiě)字符。寫(xiě)數(shù)據(jù)的部分程序:/寫(xiě)數(shù) (5位數(shù)據(jù))void printf_data(uchar row,uchar col,uc
32、har count,uint dat) uchar sh1,sh2,sh3,sh4,sh5; sh5=dat/10000; sh4=dat%10000/1000; sh3=dat%1000/100; sh2=dat%100/10; sh1=dat%10; write_adr(0x0c); switch(row) case 1:row=0x80;break; case 2:row=0xc0;break; default:break; write_adr(row+col-1); delay(500); if(count>=5) write_data(sh5+48); if(count>
33、=4) write_data(sh4+48); if(count>=3) write_data(sh3+48); if(count>=2) write_data(sh2+48); if(count>=1) write_data(sh1+48);寫(xiě)字符的小程序?yàn)椋?寫(xiě)一段字符void printf_char(uchar row,uchar col,uchar Inbuffer31) uchar i; write_adr(0x0c); switch(row) case 1:row=0x80;break;流程圖如圖4.3所示:初始化LCD開(kāi)始清除LCD寫(xiě)LCD結(jié)束圖4.3 LCD顯
34、示流程圖4.4修改密碼流程圖修改密碼模塊主要是在輸入密碼正確之后,按下14鍵即是修改密碼鍵就能進(jìn)入修改密碼界面,其流程分為四個(gè)步驟,分別為按下14鍵并啟動(dòng)定時(shí)、輸入修改的密碼、按下確認(rèn)鍵11鍵、LCD的顯示。修改密碼的部分程序如下:/改密碼void ch_word(void)unsigned char recieve=0xff,b10,j=0;LCD_CLR();printf_char(1,1,"new_password%d");while(recieve!=11)recieve=keypad();delay(10000);if(recieve<=9&&
35、;recieve>=0)bj=recieve;printf_data(2,j+1,1,recieve);j+;else if(recieve=12)if(j!=0) aj='0'printf_char(2,j," %d"); j-; 流程圖如圖4.4所示:按下14鍵啟動(dòng)定時(shí)輸入密碼存入緩沖按下確認(rèn)1111鍵比較密碼調(diào)用LED調(diào)用顯示圖4.4 修改密碼流程圖4.5開(kāi)鎖和報(bào)警模塊流程圖開(kāi)鎖和報(bào)警模塊主要任務(wù)是把從鍵盤(pán)輸入到單片機(jī)的密碼和本身保存在單片機(jī)中的密碼進(jìn)行對(duì)比,如果正確就開(kāi)鎖,如果錯(cuò)誤的話(huà)就進(jìn)行計(jì)數(shù)并顯示在LCD液晶顯示屏上,當(dāng)輸入密碼的錯(cuò)誤次數(shù)達(dá)
36、到3次就進(jìn)入報(bào)警模式,啟動(dòng)蜂鳴器報(bào)警。其流程圖如圖4.5所示。圖4.5 報(bào)警流程圖5電子密碼鎖的系統(tǒng)調(diào)試及分析5.1硬件電路調(diào)試及結(jié)果分析硬件調(diào)試首先檢查電路板焊接是否有誤,檢查有是否出現(xiàn)虛焊、漏焊、線(xiàn)路短接、元器件引腳是否錯(cuò)誤焊接等等問(wèn)題,然后檢查電路中某些元器件是否起作用,最后利用一些小程序測(cè)試LCD1602是否完好無(wú)損。檢測(cè)單片機(jī)是否工作可通過(guò)觀(guān)察示波器顯示的波形是否衰減,或者利用萬(wàn)用表測(cè)一下18,19腳的電壓,應(yīng)該有個(gè)2-3V就說(shuō)明起振了,另外,ALE如果有信號(hào)或者有電壓也說(shuō)明單片機(jī)工作了。我采用利用萬(wàn)用表側(cè)18、19腳的電壓,其結(jié)果顯示為2.3V。檢測(cè)電路有無(wú)虛焊可用萬(wàn)用表的二極管檔
37、來(lái)檢測(cè),當(dāng)把萬(wàn)用表的紅黑兩表筆接觸在焊接線(xiàn)路的兩端后,萬(wàn)用表發(fā)出聲音,則說(shuō)明沒(méi)有虛焊。檢查電路是否短路也是利用同一原理。5.2軟件調(diào)試及功能分析軟件調(diào)試即是把已經(jīng)寫(xiě)好的C語(yǔ)言程序載入到軟件調(diào)試工具,檢查軟件是否有設(shè)法錯(cuò)誤,再根據(jù)軟件提示對(duì)本程序進(jìn)行修改,直到?jīng)]有錯(cuò)誤再生成單片機(jī)能運(yùn)行的機(jī)器碼,再用51開(kāi)發(fā)板或其它單片機(jī)寫(xiě)入工具把機(jī)器碼寫(xiě)入單片機(jī)進(jìn)行實(shí)際的程序調(diào)試,根據(jù)實(shí)際情況再對(duì)程序的不足加以修改,直到滿(mǎn)足設(shè)計(jì)要求。本設(shè)計(jì)采用Proteus和KEIL軟件進(jìn)行仿真、調(diào)試,首先在在Proteus軟件上進(jìn)行硬件電路的描繪,其次在KEIL軟件編寫(xiě)電子密碼鎖的源程序,源程序經(jīng)過(guò)匯編后產(chǎn)生Hex文件,最后
38、將生成的目標(biāo)文件添加到單片機(jī)中仿真調(diào)試。5.2.1調(diào)試過(guò)程首先打開(kāi)KEIL C51主程序,新建工程,新建文本框?qū)懭氤绦?,保存,檢查是否有語(yǔ)法錯(cuò)誤,經(jīng)反復(fù)檢查無(wú)誤后匯編,生成51單片機(jī)可執(zhí)行的HEX文件。然后用與51開(kāi)發(fā)板相匹配的寫(xiě)入軟件把HEX文件寫(xiě)入單片機(jī)。圖5.1 KEIL c51調(diào)試介面圖5.2 程序?qū)懭虢缑?.2.2仿真結(jié)果分析當(dāng)系統(tǒng)通電進(jìn)入初始化狀態(tài)后,LCD顯示屏?xí)@示W(wǎng)elcome,結(jié)果如圖5.3所示。圖5.3 系統(tǒng)初始化當(dāng)進(jìn)入輸入密碼階段時(shí),依次按下按鍵上的數(shù)字鍵1,2,3,4,5,6后,LCD顯示屏顯示如圖5.4所示。圖5.4 輸入密碼階段仿真圖當(dāng)按下確定鍵11鍵后,顯示屏上
39、顯示正確且二極管燈亮,表示密碼正確開(kāi)門(mén),如圖5.5所示。圖5.5 輸入密碼正確時(shí)仿真圖按下確認(rèn)鍵后,二極管不亮且顯示屏上顯示Error,表示密碼輸入錯(cuò)誤,門(mén)的鎖不會(huì)打開(kāi)。如圖5.6所示。圖5.6 輸入密碼錯(cuò)誤仿真圖當(dāng)需要修改密碼時(shí),只需按下14鍵即可進(jìn)入到修改密碼界面,修改成功后顯示success,修改錯(cuò)誤后顯示屏?xí)@示fail。圖5.7 修改密碼仿真圖圖5.8 修改失敗仿真圖5.3系統(tǒng)調(diào)試系統(tǒng)調(diào)試即是將源程序在KEIL軟件里運(yùn)行產(chǎn)生的可執(zhí)行文件HEX寫(xiě)入到單片機(jī)中,然后通電初始化,檢查是否能實(shí)現(xiàn)仿真中達(dá)到的效果。如果都無(wú)誤寫(xiě)入程序后還是有問(wèn)題就要檢查程序是否有問(wèn)題。其結(jié)果分析如下所示:?jiǎn)纹瑱C(jī)
40、寫(xiě)入程序后并通電初始化后,LCD顯示屏顯示welcome如圖5.9所示。圖5.9 初始化硬件電路當(dāng)通過(guò)4*4矩陣鍵盤(pán)輸入密碼且密碼正確后,LCD顯示屏顯示right如圖5.10所示。圖5.10 密碼正確界面當(dāng)通過(guò)4*4矩陣鍵盤(pán)輸入密碼且密碼錯(cuò)誤后,LCD顯示屏顯示error以及輸入錯(cuò)誤的次數(shù),如圖5.11所示。圖5.11 密碼錯(cuò)誤界面當(dāng)用戶(hù)需要修改密碼時(shí),按下14鍵即可進(jìn)入修改密碼界面,LCD顯示屏顯示new-password如圖5.12所示。圖5.12 修改密碼界面6結(jié)論及展望6.1結(jié)論本次設(shè)計(jì)通過(guò)硬件電路設(shè)計(jì)、軟件編程、硬件調(diào)試、軟件調(diào)試以及系統(tǒng)調(diào)試完成了設(shè)計(jì)要求,達(dá)到了設(shè)計(jì)目的。本次設(shè)計(jì)
41、最終的結(jié)果如下:n 電子密碼鎖通過(guò)鍵盤(pán)能成功進(jìn)行輸入密碼;n LCD液晶顯示屏上能顯示輸入的密碼;n 能判斷輸入的密碼是否正確并且能顯示判斷結(jié)果;n 能在密碼輸入正確后開(kāi)門(mén);n 能在密碼輸入錯(cuò)誤次數(shù)達(dá)到三次以上后進(jìn)行報(bào)警;n 能在開(kāi)門(mén)后通過(guò)一按鍵對(duì)原有密碼進(jìn)行更改;n 能用*代替顯示輸入的密碼數(shù)字,隱藏了密碼,這實(shí)現(xiàn)了密碼保護(hù)。但是在實(shí)現(xiàn)上述功能時(shí),也存在許多不足。第一,在密碼輸入正確時(shí)除了要使代表電磁吸合器的發(fā)光二極管發(fā)光以外,還應(yīng)該加上語(yǔ)音模塊,提示門(mén)開(kāi),這樣更人性化一些。第二,密碼輸入錯(cuò)誤次數(shù)小于三次時(shí),也應(yīng)該采取措施提醒。第三,密碼修改部分,本次設(shè)計(jì)實(shí)現(xiàn)的不是很好,密碼能進(jìn)行修改但是只
42、能修改第一個(gè)密碼。第四,本次設(shè)計(jì)的電子密碼鎖,安全方面還可以提高進(jìn)步。本設(shè)計(jì)中的報(bào)警系統(tǒng)只是一個(gè)簡(jiǎn)單的系統(tǒng),要應(yīng)用于實(shí)際生活還需要進(jìn)一步改進(jìn)。6.2展望電子鎖是信息化時(shí)代發(fā)展的產(chǎn)物,應(yīng)時(shí)而生,我相信隨著科技的不斷發(fā)展,將來(lái)的電子鎖一定更加完美,更加人性化,更加便宜,更加安全。本次設(shè)計(jì)中還有待完善的地方還很多。首先,修改密碼可進(jìn)一步完善,實(shí)現(xiàn)有不管多少戶(hù)住戶(hù)和多少個(gè)密碼,都能修改密碼。其次,也是最重要的安全防問(wèn)題,報(bào)警途徑很多,有視屏監(jiān)視和發(fā)出報(bào)警聲提醒值班的保安等等。未來(lái),電子密碼鎖需要大面積占據(jù)市場(chǎng)首先必須要突破的就是安全問(wèn)題,如果解決了這個(gè)問(wèn)題,電子密碼鎖就能在鎖的行業(yè)所向披靡。最后本次設(shè)
43、計(jì)還可以精進(jìn)的地方就是輸入密碼錯(cuò)誤時(shí)的處理方法。在輸入密碼錯(cuò)誤次數(shù)在三次以?xún)?nèi)時(shí),也應(yīng)該采取措施。比如禁止輸入三秒或者也用發(fā)聲模塊提醒,只要發(fā)聲頻率不一致就可區(qū)分。謝辭本次設(shè)計(jì)題目是在和我的指導(dǎo)老師孫曉玲老師交流后定下的,選此題原因在于雖然電子密碼鎖在之前就已近在市場(chǎng)上出現(xiàn),但是始終沒(méi)有廣泛應(yīng)用到人們的日常生活中,因此電子密碼鎖就具有繼續(xù)研究的必要。所以在和孫老師商議過(guò)后,我就選擇了電子密碼鎖這個(gè)設(shè)計(jì)題目。從前期努力查找資料,到中期設(shè)計(jì)思路的討論和修改,及最后的反復(fù)斟酌,我都無(wú)比的感謝我的指導(dǎo)老師孫老師。她在此期間對(duì)我的幫助是我能及時(shí)準(zhǔn)確完成畢業(yè)設(shè)計(jì)任務(wù)的必要條件。在硬件調(diào)試和軟件調(diào)試的過(guò)程中,
44、我遇到了相當(dāng)多的困難,而幫助我解決困難的同學(xué)是我必須要要感謝的。幫助我編寫(xiě)程序并進(jìn)行調(diào)試的彭同學(xué),在我對(duì)某些程序一籌莫展的時(shí)候,伸出了援救之手,在編寫(xiě)程序過(guò)程中少走了許多彎路,對(duì)于他給予我的幫助,我真心的表示感謝。再來(lái)就是幫助我進(jìn)行硬件調(diào)試的徐同學(xué)和胡同學(xué),他們?cè)谖译娐钒搴附雍煤?,但是未能成功?shí)現(xiàn)電子密碼鎖功能的時(shí)候,及時(shí)伸出了援救之手,把我從無(wú)助、迷茫中解救出來(lái),最終完美的完成畢業(yè)設(shè)計(jì),對(duì)大學(xué)四年畫(huà)上了圓滿(mǎn)的句號(hào)。在論文的不斷修改中孫老師總是認(rèn)真仔細(xì)的幫助我檢查并修改論文,使我的論文不斷完善。再次對(duì)您表示感謝,師恩偉大,無(wú)以回報(bào)。在這里還要深深的對(duì)您說(shuō)上一句抱歉,因?yàn)槲业膽猩⒑托傅。钅M(fèi)盡
45、苦心并且?guī)捉W詈笠兄x的是電信院所有的老師與領(lǐng)導(dǎo),我永遠(yuǎn)都不會(huì)忘記你們的良苦用心以及諄諄教誨。參考文獻(xiàn)1 王千. 實(shí)用電子電路大全M. 電子工業(yè)出版社, 2004, 28-362 彭為. 單片機(jī)典型系統(tǒng)設(shè)計(jì)實(shí)例精講M. 電子工業(yè)出版社,2 006, 69-883 張榮. 基于單片機(jī)的智能系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)M. 電子工業(yè)出版社, 2005, 35-384 朱勇. 單片機(jī)原理與應(yīng)用技術(shù)M. 清華大學(xué)出版社, 2006, 14-165 潘永雄. 新編單片機(jī)原理與應(yīng)用M. 西安電子科技大學(xué)出版社, 2003, 78-866 葉啟明. 單片機(jī)制作的新型安全密碼鎖J. 家庭電子, 2005, (10):
46、7 郭海英. 基于單片機(jī)的電子安全密碼鎖的設(shè)計(jì)M. 現(xiàn)代電子技術(shù), 2005,(13)8 李明喜. 新型電子密碼鎖的設(shè)計(jì)J. 機(jī)電產(chǎn)品開(kāi)發(fā)與創(chuàng)新, 2004, (03):9 彭為. 單片機(jī)典型系統(tǒng)設(shè)計(jì)實(shí)例精講M. 北京:電子工業(yè)出版社, 2006, 35-3810 ATmega.ATmega8L-8AC, 2006, (01), 63-6411 Wireless World, 1998, 42-4512 石文軒, 宋薇. 基于單片機(jī)MCS一51的智能密碼鎖設(shè)計(jì)J. 武漢工程職業(yè)技術(shù)學(xué)院學(xué)報(bào), 2004, (01): 76-3513 祖龍起, 劉仁杰. 一種新型可編程密碼鎖J. 大連輕工業(yè)學(xué)院學(xué)
47、報(bào),2002, (01): 54-5714 葉啟明. 單片機(jī)制作的新型安全密碼鎖J. 家庭電子, 2005, (10): 98-11115 郭海英. 基于單片機(jī)的電子安全密碼鎖的設(shè)計(jì)M. 現(xiàn)代電子技術(shù), 2005, (13), 76-9616 李明喜. 新型電子密碼鎖的設(shè)計(jì)J. 機(jī)電產(chǎn)品開(kāi)發(fā)與創(chuàng)新, 2004, (03): 45-6617 董繼成. 一種新型安全的單片機(jī)密碼鎖J. 電子技術(shù), 2004, (03): 122-13418 R. Dye. Visual Object-Orientated ProgrammingJ. Dr. Dobbs MacintoshJournal, 1991,
48、56(1):213-234 19 李朝青.單片機(jī)原理及接口技術(shù)(簡(jiǎn)明修訂版)M.北京:北京航空航天大學(xué)出版社,199820 李全利.單片機(jī)原理及接口技術(shù)M.高等教育出版社,200321 PROTEL99 SE電路設(shè)計(jì)與制板M.機(jī)械工業(yè)出版社,200722 楊將新,李華軍,劉到駿等.單片機(jī)程序設(shè)計(jì)及應(yīng)用(從基礎(chǔ)到實(shí)踐)J電子工業(yè)出版社,200623 Steven F.Barrett.Daneil J.Pack.Embedded SystemM.北京:電子工業(yè)出版社,200624 周立功.LPC900系列Flash單片機(jī)應(yīng)用技術(shù)J.北京航空航天大學(xué)出版社, 200425 黃智偉.全國(guó)大學(xué)生電子設(shè)計(jì)
49、競(jìng)賽訓(xùn)練教程M.北京:電子工業(yè)出版社, 2005附錄附1部分代碼#define key_data P1code unsigned char key_value44=1,2,3,4,5,6,7,8,9,0,11,12,13,14,15,16;/-鍵值初始化(可自行賦予鍵值)uchar keypad(void) uchar row,col;uchar recieve=0xff;key_data=0XF0;delay(100);if(key_data!=0xf0) delay(100); if(key_data!=0xf0) row=key_data; key_data=0x0f; delay(10
50、); col=key_data; switch(row) case 0xe0:row=0;break;case 0xd0:row=1;break;case 0xb0:row=2;break;case 0x70:row=3;break; switch(col) case 0x07:col=0;break;case 0x0b:col=1;break;case 0x0d:col=2;break;case 0x0e:col=3;break; recieve=key_valuerowcol; return recieve;#include "reg51.h"#include &quo
51、t;lcd1602.c"#include "keydriver.c"sbit P3_0=P30;sbit P3_3=P33;/sbit P3_0=P30;unsigned char count,i;unsigned char a10;unsigned char password410=1,2,3,4,5,6,7,8,9,0, 2,4,5,6,7,8,2,3,4,7, 4,5,6,3,2,1,1,7,8,9, 0,9,8,7,6,5,4,3,2,1;/報(bào)告結(jié)果void report(unsigned char flag)a10=0;if(flag=0)printf_char(1,10,"right%d") ;P3_0=0; delay(60000);delay(60000);P3_0=1;LCD_CLR();elseprintf_char(1,10,"error%d") ;if(count>=3)P3_3
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 長(zhǎng)期臥床離婚協(xié)議書(shū)
- 合伙貸款買(mǎi)貨車(chē)協(xié)議書(shū)
- 農(nóng)產(chǎn)品幫扶采購(gòu)協(xié)議書(shū)
- smt合作開(kāi)廠(chǎng)協(xié)議書(shū)
- 茶葉企業(yè)訂購(gòu)協(xié)議書(shū)
- 采礦勞務(wù)施工協(xié)議書(shū)
- 餐廳設(shè)施移交協(xié)議書(shū)
- 道路開(kāi)挖押金協(xié)議書(shū)
- 被迫墮胎補(bǔ)償協(xié)議書(shū)
- Brand KPIs for second-hand apparel online shops Kleinanzeigen (eBay-Kleinanzeigen) in Germany-外文版培訓(xùn)課件(2025.2)
- 環(huán)保行業(yè)大氣污染治理和廢棄物處理方案
- 產(chǎn)科護(hù)理風(fēng)險(xiǎn)管理與預(yù)防
- 2025年山東黃金集團(tuán)夏季校園招聘668人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 大眾汽車(chē)整車(chē)開(kāi)發(fā)流程
- 《華為國(guó)際化之路》課件
- 南京工業(yè)大學(xué)浦江學(xué)院《工程財(cái)務(wù)管理》2023-2024學(xué)年第一學(xué)期期末試卷
- TSG特種設(shè)備安全技術(shù)規(guī)范TSG08-2017
- 胖東來(lái)生鮮蔬果實(shí)操培訓(xùn)
- 《高血壓精準(zhǔn)化診療中國(guó)專(zhuān)家共識(shí)(2024)》解讀
- 2025屆吉林省長(zhǎng)春市高中名校高三第四次模擬考試英語(yǔ)試卷含解析
- 自然辯證法論述題146題帶答案(可打印版)
評(píng)論
0/150
提交評(píng)論