基于51單片機(jī)的電子密碼鎖的設(shè)計(jì)_第1頁(yè)
基于51單片機(jī)的電子密碼鎖的設(shè)計(jì)_第2頁(yè)
基于51單片機(jī)的電子密碼鎖的設(shè)計(jì)_第3頁(yè)
基于51單片機(jī)的電子密碼鎖的設(shè)計(jì)_第4頁(yè)
基于51單片機(jī)的電子密碼鎖的設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩24頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、目錄目錄I1 緒論11.1 引言11.2 電子密碼鎖的背景11.3 鍵盤(pán)式電子密碼鎖的特點(diǎn)12 系統(tǒng)設(shè)計(jì)22.1系統(tǒng)總設(shè)計(jì)結(jié)構(gòu)圖22.2 開(kāi)鎖機(jī)構(gòu)的設(shè)計(jì)32.2.1 主控芯片(AT89C51單片機(jī))的簡(jiǎn)介33 系統(tǒng)硬件設(shè)計(jì)53.1 鍵盤(pán)設(shè)計(jì)53.2 系統(tǒng)電路設(shè)計(jì)63.2.1鍵盤(pán)電路及連線圖63.2.2 數(shù)碼管顯示電路及連線圖73.2.3 開(kāi)鎖和報(bào)警電路及連線圖(由LED燈和揚(yáng)聲器電路代替)73.3 整體電路圖的繪制74 軟件設(shè)計(jì)94.1 系統(tǒng)軟件設(shè)計(jì)思路94.2 系統(tǒng)軟件設(shè)計(jì)總流程圖105 程序調(diào)試115.1 程序調(diào)試需要用到的軟件和工具115.2 調(diào)試過(guò)程116 設(shè)計(jì)總結(jié)11致謝12參考文獻(xiàn)

2、13附錄141 緒論1.1 引言在這個(gè)信息和科技高速發(fā)展的時(shí)代,人們的生活水平越來(lái)越高,隨之應(yīng)運(yùn)而生的人們的安全意識(shí)也越來(lái)越強(qiáng),然而傳統(tǒng)的機(jī)械鎖由于設(shè)計(jì)和工藝簡(jiǎn)單,操作和攜帶不便,已經(jīng)不能滿足人們對(duì)于安全保證和生活便利的需求,于是電子密碼鎖本著它自身的保密性高、操作簡(jiǎn)單、靈活好用等特性逐漸進(jìn)入人們的視野,并已被廣大群眾接納和使用。鎖是用以關(guān)住某個(gè)確定的空間或范圍或某種器物的,必須以鑰匙或密碼打開(kāi)的器件。鎖,從古至今,發(fā)展到現(xiàn)在已有近千年的歷史了,人們對(duì)它的結(jié)構(gòu)、原理也隨著時(shí)間的增加研究的近乎透徹,因此,開(kāi)鎖的方法和工具早已不僅僅局限于配套的鑰匙,種類也層出不窮?,F(xiàn)代社會(huì)中,由于各種矛盾沖突十分

3、劇烈,人們的思想道德觀念,價(jià)值觀念,文化修養(yǎng)水平等參差不齊,人們的思想境界良莠不齊,善良、正直的人們能夠自覺(jué)規(guī)范自已的行為,不是自己的東西不會(huì)眷戀,沒(méi)有鑰匙就不會(huì)亂闖亂動(dòng)。但是,生活中同樣還存在著一些道德觀念較差的人,總有著不勞而獲的“夢(mèng)想”,他們?cè)谑艿秸T惑的時(shí)候,往往會(huì)想方設(shè)法利用各種手段撬門開(kāi)鎖,使廣大居民防不勝防。之所以出現(xiàn)這種情況,除了人們的道德觀外,還有一個(gè)很重要的原因,就是傳統(tǒng)鎖具都存在致命的弱點(diǎn),例如,鎖芯采用常見(jiàn)的銅、鋁、鋅等材料,抵抗不了強(qiáng)力破壞;再者,鎖具制作工藝,技術(shù)落后,無(wú)法阻止先進(jìn)技術(shù)手段的開(kāi)啟。目前,市場(chǎng)上的鎖具各種各樣,形狀千變?nèi)f化,然而都是大同小異,技術(shù)原理簡(jiǎn)單

4、,實(shí)際使用上卻都不具備真正安全的防盜功能。面對(duì)這一殘酷的現(xiàn)狀,鎖具也進(jìn)入了必須革新的時(shí)代。1.2 電子密碼鎖的背景隨著社會(huì)科技的進(jìn)步,鎖已發(fā)展到了密碼鎖、磁性鎖、電子鎖、激光鎖、聲控鎖等等。在傳統(tǒng)鑰匙的基礎(chǔ)上,加了一組或多組密碼,不同聲音,不同磁場(chǎng),不同聲波,不同光束光波,不同圖像。(如指紋、眼底視網(wǎng)膜等)來(lái)控制鎖的開(kāi)啟。從而大大提高了鎖的安全性,使不法之徒無(wú)從下手,人們也就能對(duì)自身財(cái)產(chǎn)安全有了更多的保障。當(dāng)今安全信息系統(tǒng)應(yīng)用越來(lái)越廣泛,特別在保護(hù)機(jī)密、維護(hù)隱私和財(cái)產(chǎn)保護(hù)方面起到重大作用,而基于電子密碼鎖的安全系統(tǒng)是其中的組成部分,因此研究它具有重大的現(xiàn)實(shí)意義2。1.3 鍵盤(pán)式電子密碼鎖的特點(diǎn)

5、電子鎖可以在日常生活和現(xiàn)代辦公中,住宅與辦公室的安全防范、單位的文件檔案、財(cái)務(wù)報(bào)表以及一些個(gè)人資料的保存等多種場(chǎng)合使用。大大提高了主人物資的安全性,安全可以代替老式機(jī)械鎖。目前使用的密碼鎖種類繁多,各具特色。從目前的技術(shù)水平和市場(chǎng)認(rèn)可程度看,使用最為廣泛的電子密碼鎖是鍵盤(pán)是電子密碼鎖,該產(chǎn)品主要應(yīng)用于保險(xiǎn)箱、保險(xiǎn)柜和金庫(kù),還有一部分應(yīng)用于保管箱和運(yùn)鈔車。鍵盤(pán)式電子密碼在鍵盤(pán)上輸入,與打電話差不多,因而易于掌握,其突出優(yōu)點(diǎn)是“密碼”是記在被授權(quán)人腦子里的數(shù)字和字符,既準(zhǔn)確又可靠,不會(huì)丟失(除了忘記),難以被竊(除非自己泄露)。 在輸入密碼的過(guò)程中,為了限制試探密碼的企圖,通常輸入錯(cuò)誤碼若干次或若

6、干時(shí)間內(nèi)輸入不正確,即“封鎖”鍵盤(pán),不再接受輸入操作??傊?,盡管新式電子防盜鎖層出不窮,但鍵盤(pán)式電子密碼防盜鎖仍然在自己的基礎(chǔ)上發(fā)展,不僅在市場(chǎng)上居于主流地位,而且,還經(jīng)常作為其他類型電子防盜鎖的輔助輸入手段4。2 系統(tǒng)設(shè)計(jì)2.1系統(tǒng)總設(shè)計(jì)結(jié)構(gòu)圖密碼輸入設(shè)備數(shù)碼管顯示單片機(jī)AT89C51開(kāi)鎖機(jī)構(gòu)圖 2.1系統(tǒng)總設(shè)計(jì)結(jié)構(gòu)圖本設(shè)計(jì)由主控芯片51單片機(jī),鍵盤(pán),LED顯示屏和開(kāi)鎖電路組成。單片負(fù)責(zé)控制整個(gè)系統(tǒng)的執(zhí)行過(guò)程。2.2 開(kāi)鎖機(jī)構(gòu)的設(shè)計(jì)通過(guò)單片機(jī)送給開(kāi)鎖執(zhí)行機(jī)構(gòu)(本設(shè)計(jì)用LED燈和揚(yáng)聲器代替繼電器打開(kāi)電磁閥的開(kāi)鎖執(zhí)行機(jī)構(gòu))實(shí)現(xiàn)開(kāi)鎖或警報(bào)的表示過(guò)程。AT89C51單片機(jī)開(kāi)鎖驅(qū)動(dòng)電路開(kāi)鎖/警報(bào)圖 2

7、.2密碼鎖開(kāi)鎖結(jié)構(gòu)示意圖當(dāng)用戶輸入的密碼正確而且是在規(guī)定的時(shí)間及次數(shù)輸入之內(nèi),單片機(jī)便輸出開(kāi)鎖信號(hào)送到開(kāi)鎖驅(qū)動(dòng)電路,達(dá)到開(kāi)門的目的(此處用LED發(fā)光二極管亮一秒鐘做為提示,同時(shí)發(fā)出“叮咚”聲)。2.2.1 主控芯片(AT89C51單片機(jī))的簡(jiǎn)介AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳

8、相兼容1。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器。主要特性3: 與MCS-51 兼容 4K字節(jié)可編程閃爍存儲(chǔ)器 壽命:1000寫(xiě)/擦循環(huán) 數(shù)據(jù)保留時(shí)間:10年 全靜態(tài)工作:0Hz-24MHz 三級(jí)程序存儲(chǔ)器鎖定 1288位內(nèi)部RAM 32可編程I/O線 兩個(gè)16位定時(shí)器/計(jì)數(shù)器 5個(gè)中斷源 可編程串行通道 低功耗的閑置和掉電模式 片內(nèi)振蕩器和時(shí)鐘電路管腳說(shuō)明6: VCC:供電電壓。 GND:接地。 P0口:P0口為一個(gè)8位漏級(jí)開(kāi)路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫(xiě)1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)

9、據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫(xiě)入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。 P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫(xiě)“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)

10、部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫(xiě)時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。 P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫(xiě)入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。 P3口也可作為AT89C51的一些特殊功能口,如下表所示: P3.0 RXD(串行輸入口) P3.1 TXD(串行輸出口) P3.2 /INT0(外部中斷0) P3.3 /INT1(外部中斷1) P3.4 T0(記時(shí)器0外部輸入) P3.5 T1(記時(shí)器1外部輸入) P3.6 /WR(外部數(shù)據(jù)

11、存儲(chǔ)器寫(xiě)選通) P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通) P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。 RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。 ALE/PROG:當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無(wú)效。 /PSEN:外部程序存儲(chǔ)

12、器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。 /EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。XTAL2:來(lái)自反向振蕩器的輸出。圖 2.3 AT89C51芯片圖3 系統(tǒng)硬件設(shè)計(jì)3.1 鍵盤(pán)設(shè)計(jì)本實(shí)驗(yàn)采用44行列式矩陣鍵盤(pán),用數(shù)字鍵輸入密碼,ENTER鍵確認(rèn);如果密碼輸入錯(cuò)誤,用DEL鍵清

13、除;密碼輸入完畢并且確認(rèn)后,如果需要重新輸入,先按Esc退出,然后重新輸入;若用戶想要自行更改密碼,需要先正確輸入密碼并確認(rèn)后,按ALT進(jìn)行修改,再按ENTER進(jìn)行確認(rèn),密碼更改完畢。44行列式鍵盤(pán)的按鍵功能分布如圖3.1所示 9 8 7 ALT Esc 6 5 4 DEL 3 1 2ENTER 0 圖 3.1 鍵盤(pán)按鍵功能分布圖3.2 系統(tǒng)電路設(shè)計(jì) 本系統(tǒng)電路主芯片AT89C51(內(nèi)含晶振和復(fù)位電路),外接上拉電阻,數(shù)碼管顯示器,揚(yáng)聲器、LED燈和外接電阻組成開(kāi)鎖電路。3.2.1鍵盤(pán)電路及連線圖 每一條行線和列線交叉處通過(guò)一個(gè)按鍵來(lái)連接,利用這種行列式矩陣結(jié)構(gòu)只需要N條行線和M條列線就可組成

14、N*M個(gè)按鍵。 在這種行列式矩陣鍵盤(pán)非鍵盤(pán)編碼的單片機(jī)中,鍵盤(pán)處理程序先執(zhí)行等待按鍵并有無(wú)鍵盤(pán)按下的程序段。確認(rèn)有鍵盤(pán)按下后,下一步執(zhí)行識(shí)別哪一個(gè)鍵按下。對(duì)照4*4鍵盤(pán),首先識(shí)別鍵盤(pán)中有無(wú)鍵盤(pán)按下,然后判斷鍵盤(pán)中哪一個(gè)鍵被按下,使通過(guò)將列線逐列置低電平后,檢查行輸入狀態(tài)來(lái)實(shí)現(xiàn)的。方法是:依次給列線送低電平,然后檢查行輸入狀態(tài)來(lái)實(shí)現(xiàn)。如果全為1,則所按下鍵不在此列,如果不全為1則按下的鍵必在此列。而且是與零電平線相交的交點(diǎn)上的鍵。理想的按鍵信號(hào)是一個(gè)標(biāo)準(zhǔn)脈沖,但鍵的按下和釋放都需要一個(gè)過(guò)程來(lái)實(shí)現(xiàn),在這一過(guò)程中是處于高低電平之間一種不穩(wěn)定狀態(tài),稱為抖動(dòng)。抖動(dòng)時(shí)間的長(zhǎng)短,頻率的高低與按鍵機(jī)械特征有關(guān)

15、,一般在5到10ms之間。這就有可能造成CPU對(duì)一次按鍵過(guò)程進(jìn)行多次處理。為了避免這種情況應(yīng)采取措施消除抖動(dòng)。消抖常見(jiàn)有兩種方法,硬件消抖:如用濾波器,雙穩(wěn)態(tài)電路等。另一種用軟件來(lái)實(shí)現(xiàn),即當(dāng)發(fā)現(xiàn)有鍵按下時(shí),間隔10ms以上時(shí)間,才能進(jìn)行下一次查詢,這樣就讓過(guò)了抖動(dòng)過(guò)程,鍵的釋放進(jìn)行同樣處理。本設(shè)計(jì)為減少電路復(fù)雜程度,減少成本。采用軟件消抖的方法5。 圖 3.2 鍵盤(pán)電路 如圖左上角為AT89C51的P3口,與鍵盤(pán)電路相連,構(gòu)成鍵盤(pán)輸入電路。3.2.2 數(shù)碼管顯示電路及連線圖本實(shí)驗(yàn)采用共陰極數(shù)碼管,即將所有發(fā)光二極管的陰極接到一起形成公共陰極(COM)的數(shù)碼管。共陰數(shù)碼管在應(yīng)用時(shí)應(yīng)將公共極COM

16、接到地線GND上,當(dāng)某一字段發(fā)光二極管的陽(yáng)極為高電平時(shí),相應(yīng)字段就點(diǎn)亮。當(dāng)某一字段的陽(yáng)極為低電平時(shí),相應(yīng)字段就不亮。 圖3.3 數(shù)碼管顯示電路為了增加單片機(jī)的驅(qū)動(dòng),數(shù)碼管鏈接上拉電阻,然后再接AT89C51的P3口,輸入任何密碼時(shí)都以顯示“8”表示輸入的位數(shù)(如圖表示輸入3位密碼)。3.2.3 開(kāi)鎖和報(bào)警電路及連線圖(由LED燈和揚(yáng)聲器電路代替)AT89C51單片機(jī)的P1.0口連接LED燈和一個(gè)外接電阻,P1.7口連接提示和警報(bào)的揚(yáng)聲器(如圖3.4所示,LED燈亮表示密碼正確,并且同時(shí)揚(yáng)聲器發(fā)出“叮咚”提示音)。 圖 3.4 開(kāi)鎖電路3.3 整體電路圖的繪制用Prteus軟件繪制完整的電路圖。

17、 密碼正確并且確認(rèn)之后的整體電路及顯示情況,如圖3.5。圖3.5 密碼正確系統(tǒng)電路及顯示圖 密碼錯(cuò)誤后的整體電路及顯示情況,如圖3.6。 圖 3.6 密碼錯(cuò)誤系統(tǒng)電路及顯示圖4 軟件設(shè)計(jì)4.1 系統(tǒng)軟件設(shè)計(jì)思路任何應(yīng)用系統(tǒng)的正常工作和使用,除去需要完整的硬件設(shè)備外,還需要一套與之相對(duì)應(yīng)的、設(shè)計(jì)合理的軟件相配合。隨著電子信息的發(fā)展,微機(jī)應(yīng)用早已普遍,許多原來(lái)的硬件工作都可以通過(guò)軟件編程來(lái)代替,從而使一些復(fù)雜的硬件電路簡(jiǎn)單化。 電子密碼鎖工作的主要過(guò)程是通過(guò)鍵盤(pán)輸入密碼,同時(shí)LED顯示密碼輸入情況,按下確認(rèn)鍵后判斷密碼的正確性,做出開(kāi)鎖或報(bào)警處理。當(dāng)輸入密碼輸入錯(cuò)誤時(shí),系統(tǒng)報(bào)警。初始設(shè)定密碼之后,

18、如果按下密碼的位數(shù)超過(guò)設(shè)置的密碼位數(shù)時(shí),若只超過(guò)一位,數(shù)碼管以最后一位顯示不全給出提示,若繼續(xù)輸入,系統(tǒng)揚(yáng)聲器報(bào)警。(本設(shè)計(jì)中初始密碼為12345五位,當(dāng)按下的密碼為6位時(shí),還,未按下Enter確認(rèn),數(shù)碼管就會(huì)以不全七段碼顯示給出警報(bào),若繼續(xù)按下,系統(tǒng)就會(huì)發(fā)出“滴滴滴”的警報(bào)聲)。按鍵按其功能分為兩種,其中一種為功能鍵另一種為數(shù)字鍵。輸入密碼后,直到所有密碼輸入完畢按下確認(rèn)功能鍵之后,才完成密碼輸入過(guò)程。進(jìn)入密碼的判斷比較處理狀態(tài)并給出相應(yīng)的處理過(guò)程。如圖4.1為輸入密碼超出原始設(shè)定位數(shù)時(shí)的數(shù)碼管的顯示。圖 4.1 密碼超出設(shè)定時(shí)數(shù)碼顯示圖4.2 系統(tǒng)軟件設(shè)計(jì)總流程圖開(kāi)始輸入密碼密碼輸入完畢密

19、碼比較密碼正確密碼錯(cuò)誤密碼修改燈閃爍,發(fā)出“嘀嘀嘀”聲,并鎖鍵盤(pán)3s燈亮并發(fā)出“叮咚”圖 4.1系統(tǒng)軟件設(shè)計(jì)總流程圖5 程序調(diào)試把寫(xiě)好的C語(yǔ)言程序載入軟件調(diào)試工具,檢查軟件是否有設(shè)法錯(cuò)誤,再根據(jù)軟件提示對(duì)本程序進(jìn)行修改,直到?jīng)]有錯(cuò)誤再生成單片機(jī)能運(yùn)行的機(jī)器碼,再用Prteus工具把機(jī)器碼導(dǎo)入單片機(jī)進(jìn)行實(shí)際的程序調(diào)試,根據(jù)實(shí)際情況再對(duì)程序的不足加以修改,直到滿足設(shè)計(jì)要求。5.1 程序調(diào)試需要用到的軟件和工具調(diào)試改程序用到Keil軟件和Prteus工具。5.2 調(diào)試過(guò)程 打開(kāi)KEIL C51主程序,新建工程,新建文本框?qū)懭氤绦?,保存,檢查是否有語(yǔ)法錯(cuò)誤,經(jīng)反復(fù)檢查無(wú)誤后匯編,生成51單片機(jī)可執(zhí)行的

20、HEX文件。然后用Prteus工具軟件把HEX文件寫(xiě)入單片機(jī)。6 設(shè)計(jì)總結(jié)經(jīng)過(guò)這次課程設(shè)計(jì)的整個(gè)過(guò)程,我們深刻的體會(huì)到了實(shí)踐是檢驗(yàn)和鞏固我們學(xué)習(xí)成果最有力的標(biāo)準(zhǔn)。在一段理論學(xué)習(xí)之后,我們需要我們需要把自己的理論框架應(yīng)用于實(shí)踐,因?yàn)槿魏沃R(shí)都來(lái)源于實(shí)踐,又歸于實(shí)踐,只有通過(guò)實(shí)踐我們才能更好地掌握所學(xué)到的知識(shí)。在這次課程設(shè)計(jì)期間,我們每一個(gè)人通過(guò)這個(gè)過(guò)程的努力都有了不小的發(fā)展和收獲。在學(xué)習(xí)中,我們不再只是盲目的用筆練習(xí)、用腦記憶,而是用實(shí)際操作來(lái)驗(yàn)證和體驗(yàn)所學(xué)到的東西。同樣的,在精神上,我們學(xué)會(huì)了勇往直前,不因挫折而后退,面對(duì)問(wèn)題學(xué)會(huì)了自己去尋找解決方法,而不是擱置不理或者一味求助于人。通過(guò)實(shí)踐,

21、我們不僅鞏固了課本知識(shí),而且也獲得了一些書(shū)本上無(wú)法教給我們的經(jīng)驗(yàn),對(duì)軟硬件的設(shè)計(jì)和組合都有了前所未有的新的認(rèn)識(shí)。致謝 在本次設(shè)計(jì)中,陳老師和楊老師對(duì)于我們的選題講解給予了悉心教導(dǎo),為我們爭(zhēng)取實(shí)驗(yàn)設(shè)備和場(chǎng)地,中途的評(píng)定和建議更是給了我們肯定和支持,讓我們更有信心,使我們能順利地完成此次設(shè)計(jì),在此衷心的表示感謝。另外,在完成課程設(shè)計(jì)的過(guò)程中,還得到眾多朋友和同學(xué)的關(guān)心支持和幫助,尤其是同組組員周敏同學(xué),始終能夠跟我密切合作,共同解決問(wèn)題,給了我莫大的幫助,在此,謹(jǐn)向老師同學(xué)和朋友致以衷心的感謝和崇高的敬意!參考文獻(xiàn)1 石文軒,宋薇.基于單片機(jī)MCS一51的智能密碼鎖設(shè)計(jì)M.武漢工程職業(yè)技術(shù)學(xué)院學(xué)報(bào)

22、,2004 ,(01)2祖龍起,劉仁杰.一種新型可編程密碼鎖J.大連輕工業(yè)學(xué)院學(xué)報(bào),2002,(01) 3楊將新,李華軍,劉到駿等.單片機(jī)程序設(shè)計(jì)及應(yīng)用(從基礎(chǔ)到實(shí)踐)J電子工業(yè)出版社,20064 葉啟明.單片機(jī)制作的新型安全密碼鎖J.家庭電子,2005,(10) 5張毅剛,彭喜元,姜守達(dá),喬立巖.新編MCS51單片機(jī)應(yīng)用設(shè)計(jì).哈爾濱工業(yè)大學(xué)出版社6夏繼強(qiáng):?jiǎn)纹瑱C(jī)實(shí)驗(yàn)與實(shí)踐教程,北京航空航天大學(xué)出版社,2001附錄軟件程序#include unsigned char ps=1,2,3,4,5; unsigned char code dispbit=0xfe,0xfd,0xfb,0xf7, 0x

23、ef,0xdf,0xbf,0x7f; unsigned char code dispcode=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f, 0x77,0x7c,0x39,0x5e,0x79,0x71, 0x00,0x40,0x73,0xff; unsigned char dispbuf8=18,16,16,16,16,16,16,16; unsigned char dispcount; unsigned char flashcount; unsigned char temp; unsigned char key; unsigned ch

24、ar keycount; unsigned char pslen=5; unsigned char getps6; bit keyoverflag; bit errorflag; bit rightflag; unsigned int second3; unsigned int aa,bb; unsigned int cc,dd,ee; bit okflag; bit alarmflag; bit hibitflag; unsigned char oka,okb; void main(void) unsigned char i,j; TMOD=0x01; TH0=(65536-500)/256

25、; TL0=(65536-500)%256; TR0=1; ET0=1; EA=1; while(1) if(ee&(key=15)ee=0 ;dispbuf0=18; dispbuf1=16;dispbuf2=16 ;dispbuf3=16 ;dispbuf4=16;dispbuf5=16 ;dispbuf6=16 ;dispbuf7=16 ; keycount=0;if(dd) P3_3=0; P3_5=1 ; P3_4=1; while(1) if(!P3_5) dispbuf0=18; dispbuf1=16;dispbuf2=16 ;dispbuf3=16 ;dispbuf4=16;

26、dispbuf5=16 ;dispbuf6=16 ;dispbuf7=16 ; keycount=0; dd=0; break ; if(!P3_4) ee=1; dd=0; dispbuf0=18; dispbuf1=16;dispbuf2=16 ;dispbuf3=16 ;dispbuf4=16;dispbuf5=16 ;dispbuf6=16 ;dispbuf7=16 ; keycount=0; break ; P3=0xff; P3_4=0; temp=P3; temp=temp & 0x0f; if (temp!=0x0f) for(i=10;i0;i-) for(j=248;j0;

27、j-); temp=P3; temp=temp & 0x0f; if (temp!=0x0f) temp=P3; temp=temp & 0x0f; switch(temp) case 0x0e: key=7; break; case 0x0d: key=8; break; case 0x0b: key=9; break; case 0x07: key=10; break; temp=P3; P1_1=P1_1; if(key=0) & (key10) if(keycount6) keycount=6; keyoverflag=1;/key overflow else if(key=12)/d

28、elete key if(keycount0) keycount-; getpskeycount=0; dispbufkeycount+2=16; else keyoverflag=1; else if(key=15)&(!ee)/enter key if(keycount!=pslen) errorflag=1; rightflag=0; second3=0; else for(i=0;i0;i-) for(j=248;j0;j-); temp=P3; temp=temp & 0x0f; if (temp!=0x0f) temp=P3; temp=temp & 0x0f; switch(te

29、mp) case 0x0e: key=4; break; case 0x0d: key=5; break; case 0x0b: key=6; break; case 0x07: key=11; break; temp=P3; P1_1=P1_1; if(key=0) & (key10) if(keycount6) keycount=6; keyoverflag=1;/key overflow else if(key=12)/delete key if(keycount0) keycount-; getpskeycount=0; dispbufkeycount+2=16; else keyoverflag=1; else

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論