版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 2012 年4月摘 要隨著電子產(chǎn)品向智能化和微型化的不斷發(fā)展,單片機(jī)已成為電子產(chǎn)品研制和開(kāi)發(fā)中首選的控制器。隨著人們生活水平的提高,如何實(shí)現(xiàn)家庭防盜這一問(wèn)題也變的尤其的突出,傳統(tǒng)的機(jī)械鎖由于其構(gòu)造的簡(jiǎn)單,安全性能低,無(wú)法滿(mǎn)足人們的需要。本文從經(jīng)濟(jì)實(shí)用的角度出發(fā),采用美國(guó)atmel公司的單片機(jī)at89s51與低功耗cmos型e2prom at24c02作為主控芯片與數(shù)據(jù)存儲(chǔ)器單元,結(jié)合外圍的鍵盤(pán)輸入、顯示、報(bào)警、開(kāi)鎖等電路,用匯編語(yǔ)言編寫(xiě)主控芯片的控制程序,設(shè)計(jì)了一款可以多次更改密碼具有報(bào)警功能的電子密碼鎖。該密碼鎖具有設(shè)計(jì)方法合理,簡(jiǎn)單易行,成本低,安全實(shí)用等特點(diǎn),符合住宅、辦公室用鎖要求,
2、具有推廣價(jià)值。關(guān)鍵詞: at89c51,電子密碼鎖,單片機(jī),防盜,報(bào)警56abstractwith intelligent electronics and miniaturization to the constant development of electronic products has become a single-chip development and the development of the controller of choice. with the improvement of living standards, how to achieve security of
3、the family also become prominent in particular, the traditional mechanical lock because of its simple structure, low security, unable to meet the needs of the people. this article from the economical and practical point of view, the use of the united states atmel corporation at89c51 with low-power s
4、ingle-chip cmos-based chip e2prom at24c02 as control units and data memory, combined with the external keyboard input, display, alarm, unlock, such as circuits, with preparation of master chip assembly language of the control procedures, design can be repeated a warning to change your password with
5、key lock function. the locks have a reasonable design, simple, low cost, practical features such as security, in line with the residential, office lock request with the promotion of the value.keywords: at89c51,electronic locks,single-chip,anti-theft,alarm目 錄摘 要iabstractii引 言1第一章 總體設(shè)計(jì)方案21.1 系統(tǒng)結(jié)構(gòu)21.2
6、系統(tǒng)組成21.3 設(shè)計(jì)方案選擇3第二章 硬件系統(tǒng)設(shè)計(jì)42.1 單片機(jī)at89c51簡(jiǎn)介42.2 設(shè)計(jì)原理52.3 電路總體構(gòu)成52.4電源部分72.4.1直流穩(wěn)壓電源電路72.4.2密碼鎖電源電路72.5 鍵盤(pán)輸入82.6密碼存儲(chǔ)部分102.6.1 at24c02102.6.2密碼存儲(chǔ)電路102.7復(fù)位部分112.7.1 復(fù)位電路的介紹112.7.2復(fù)位電路122.8晶振部分132.8.1晶體振蕩器介紹132.8.2晶振電路132.9顯示部分142.9.1 lcd1602顯示器142.9.2顯示電路152.10報(bào)警部分162.11 開(kāi)鎖部分17第三章 軟件系統(tǒng)設(shè)計(jì)183.1主程序模塊183.2
7、 鍵盤(pán)掃描模塊193.3 密碼修改模塊193.4 密碼比較判斷模塊213.5自動(dòng)報(bào)警模塊22第四章 總結(jié)與體會(huì)23參考文獻(xiàn)24附錄 電子密碼鎖程序清單25引 言隨著社會(huì)物質(zhì)財(cái)富的日益增長(zhǎng)和人們生活水平的提高,安全成為現(xiàn)代居民最關(guān)心的問(wèn)題之一。而鎖自古以來(lái)就是把守門(mén)戶(hù)的鐵將軍,人們對(duì)它要求甚高,即要安全可靠地防盜,又要使用方便,這也是制鎖者長(zhǎng)期以來(lái)研制的主題。傳統(tǒng)的門(mén)鎖既要備有大量的鑰匙,又要擔(dān)心鑰匙丟失后的麻煩。另外,如:賓館、辦公大樓、倉(cāng)庫(kù)、保險(xiǎn)柜等由于人員的變動(dòng),開(kāi)鎖的鑰匙也不再是只有一人擁有。購(gòu)得新居的家庭,由于裝修施工等入住時(shí)也要把原有的鎖膽更換,況且鑰匙隨身攜帶也諸多不便。隨著單片機(jī)
8、的問(wèn)世,出現(xiàn)了帶微處理器的智能密碼鎖,它除具有電子密碼鎖的功能外,還引人了智能化管理、專(zhuān)家分析系統(tǒng)等功能,從而使密碼鎖具有很高的安全性、可靠性。目前西方發(fā)達(dá)國(guó)家已經(jīng)大量地應(yīng)用智能門(mén)禁系統(tǒng)。可以通過(guò)多種的更加安全更加方便可靠的方法來(lái)實(shí)現(xiàn)大門(mén)的管理。但電子密碼鎖在我國(guó)的應(yīng)用還不廣泛,成本還很高,希望通過(guò)不斷的努力使電子密碼鎖能夠在我國(guó)得到廣泛應(yīng)用,這也是一個(gè)國(guó)家生活水平提高的表現(xiàn)。電子密碼鎖是一種通過(guò)密碼輸入來(lái)控制電路或是芯片工作,從而控制機(jī)械開(kāi)關(guān)的閉合,完成開(kāi)鎖、閉鎖任務(wù)的電子產(chǎn)品。它的種類(lèi)很多,有簡(jiǎn)易的電路產(chǎn)品,也有基于芯片的性?xún)r(jià)比較高的產(chǎn)品?,F(xiàn)在應(yīng)用較廣的電子密碼鎖是以芯片為核心,通過(guò)編程來(lái)
9、實(shí)現(xiàn)的。其性能和安全性已大大超過(guò)了機(jī)械鎖,特點(diǎn)如下:1. 保密性好,編碼量多,遠(yuǎn)遠(yuǎn)大于彈子鎖。隨機(jī)開(kāi)鎖成功率幾乎為零。2. 密碼可變。 用戶(hù)可以經(jīng)常更改密碼,防止密碼被盜,同時(shí)也可以避免因人員的更替而使鎖的密級(jí)下降。3. 誤碼輸入保護(hù)。當(dāng)輸入密碼多次錯(cuò)誤時(shí),報(bào)警系統(tǒng)自動(dòng)啟動(dòng)。4. 電子密碼鎖操作簡(jiǎn)單易行,一學(xué)即會(huì)。本設(shè)計(jì)采用單片機(jī)為主控芯片,結(jié)合外圍電路,組成電子密碼鎖,用戶(hù)想要打開(kāi)鎖,必先通過(guò)提供的鍵盤(pán)輸入正確的密碼才能將鎖打開(kāi),密碼輸入錯(cuò)誤有提示,為了提高安全性,當(dāng)密碼輸入錯(cuò)誤三次將報(bào)警。密碼可以由用戶(hù)自己修改設(shè)定,鎖打開(kāi)后才能修改密碼。修改密碼之前必須再次輸入密碼,在輸入新密碼時(shí)候需要二
10、次確認(rèn),以防止誤操作。第一章 總體設(shè)計(jì)方案一個(gè)單片機(jī)應(yīng)用系統(tǒng)的硬件電路設(shè)計(jì)包含兩部分內(nèi)容:一是系統(tǒng)擴(kuò)展,即單片機(jī)內(nèi)部的功能單元,如rom、ram、i/o、定時(shí)器/計(jì)數(shù)器、中斷系統(tǒng)等不能滿(mǎn)足應(yīng)用系統(tǒng)的要求時(shí),必須在片外進(jìn)行擴(kuò)展,選擇適當(dāng)?shù)男酒?,設(shè)計(jì)相應(yīng)的電路。二是系統(tǒng)的配置,即按照系統(tǒng)功能要求配置外圍設(shè)備,如鍵盤(pán)、顯示器、打印機(jī)、a/d、d/a轉(zhuǎn)換器等,要設(shè)計(jì)合適的接口電路。 1.1 系統(tǒng)結(jié)構(gòu) 本系統(tǒng)是用以at89c51為核心的單片機(jī)控制,主要是由單片機(jī)系統(tǒng)、矩陣鍵盤(pán)、lcd顯示和報(bào)警系統(tǒng)組成。利用單片機(jī)靈活的編程設(shè)計(jì)和豐富的io端口,及其控制的準(zhǔn)確性,不但能實(shí)現(xiàn)基本的密碼鎖功能,還能添加調(diào)電存
11、儲(chǔ)、聲光提示甚至添加遙控控制功能。1.2 系統(tǒng)組成本系統(tǒng)由單片機(jī)系統(tǒng)、矩陣鍵盤(pán)、lcd顯示、密碼存儲(chǔ)、復(fù)位電路、晶振電路、開(kāi)鎖部分和報(bào)警系統(tǒng)組成。系統(tǒng)能完成開(kāi)鎖、超時(shí)報(bào)警、修改用戶(hù)密碼基本的密碼鎖的功能。矩陣鍵盤(pán)主要判斷鍵盤(pán)上有無(wú)鍵按下、去抖動(dòng)影響、逐列掃描鍵盤(pán)以確定被按鍵的位置號(hào)即行列號(hào)、形成鍵值并將鍵值存入指定的數(shù)據(jù)緩沖區(qū)中、判斷閉合的鍵是否釋放等功能。密碼修改部分要求密碼要輸入兩次,程序?qū)纱屋斎氲拿艽a比較一致時(shí),即用此密碼代替原先的密碼,如果兩次輸入的密碼不一致,則重復(fù)操作。這樣就避免了修改密碼的隨機(jī)性。自動(dòng)報(bào)警部分是三次輸入的密碼不一致就會(huì)發(fā)生報(bào)警信息,這樣能有效的避免一些不法分子的
12、行為,保護(hù)自身的利益。顯示部分主要是采用lcd顯示,是一種數(shù)字顯示技術(shù)。與傳統(tǒng)的陰極射線管(crt)相比,lcd占用空間小,低功耗,低輻射,無(wú)閃爍,降低視覺(jué)疲勞。不足:與同大小的crt相比,價(jià)格更加昂貴。1.3 設(shè)計(jì)方案選擇方案一:采用數(shù)字電路控制用以74ls112雙jk觸發(fā)器構(gòu)成的數(shù)字邏輯電路作為密碼鎖的核心控制,共設(shè)了9個(gè)用戶(hù)輸入鍵,其中只有4個(gè)是有效的密碼按鍵,其它的都是干擾按鍵,若按下干擾鍵,鍵盤(pán)輸入電路自動(dòng)清零,原先輸入的密碼無(wú)效,需要重新輸入;如果用戶(hù)輸入密碼的時(shí)間超過(guò)10秒(一般情況下,用戶(hù)不會(huì)超過(guò)10秒,若用戶(hù)覺(jué)得不便,還可以修改)電路將報(bào)警20秒,若電路連續(xù)報(bào)警三次,電路將鎖
13、定鍵盤(pán)2分鐘,防止他人的非法操作。采用數(shù)字電路設(shè)計(jì)的方案好處就是設(shè)計(jì)簡(jiǎn)單但控制的準(zhǔn)確性和靈活性差。故不采用。方案二:采用以單片機(jī)為核心的控制方案由于單片機(jī)種類(lèi)繁多,各種型號(hào)都有其一定的應(yīng)用環(huán)境,因此在選用時(shí)要多加比較,合理選擇,以期獲得最佳的性?xún)r(jià)比。一般來(lái)說(shuō)在選取單片機(jī)時(shí)從下面幾個(gè)方面考慮:性能、存儲(chǔ)器、運(yùn)行速度、i/o口、定時(shí)/計(jì)數(shù)器、串行接口、模擬電路功能、工作電壓、功耗、封裝形式、抗干擾性、保密性,除了以上的一些的還有一些最基本的比如:中斷源的數(shù)量和優(yōu)先級(jí)、工作溫度范圍、有沒(méi)有低電壓檢測(cè)功能、單片機(jī)內(nèi)有無(wú)時(shí)鐘振蕩器、有無(wú)上電復(fù)位功能等。在開(kāi)發(fā)過(guò)程中單片機(jī)還受到:開(kāi)發(fā)工具、編程器、開(kāi)發(fā)成本
14、、開(kāi)發(fā)人員的適應(yīng)性、技術(shù)支持和服務(wù)等等因素?;谝陨弦蛩乇驹O(shè)計(jì)選用單片機(jī)at89s51作為本設(shè)計(jì)的核心元件,利用單片機(jī)靈活的編程設(shè)計(jì)和豐富的i/o端口,及其控制的準(zhǔn)確性,實(shí)現(xiàn)基本的密碼鎖功能。在單片機(jī)的外圍電路外接輸入鍵盤(pán)用于密碼的輸入和一些功能的控制,外接at24c02芯片用于密碼的存儲(chǔ),外接lcd1602顯示器用于顯示作用。當(dāng)用戶(hù)需要開(kāi)鎖時(shí),先按鍵盤(pán)開(kāi)鎖鍵之后按鍵盤(pán)的數(shù)字鍵09輸入密碼。密碼輸完后按下確認(rèn)鍵,如果密碼輸入正確則開(kāi)鎖,不正確顯示密碼錯(cuò)誤重新輸入密碼,當(dāng)三次密碼錯(cuò)誤則發(fā)出報(bào)警;當(dāng)用戶(hù)需要修改密碼時(shí),先按下鍵盤(pán)設(shè)置鍵后輸入原來(lái)的密碼,只有當(dāng)輸入的原密碼正確后才能設(shè)置新密碼。新密碼
15、輸入無(wú)誤后按確認(rèn)鍵使新密碼將得到存儲(chǔ),密碼修改成功。通過(guò)比較以上兩種方案,單片機(jī)方案有較大的活動(dòng)空間,控制靈活準(zhǔn)確性好且保密性強(qiáng)不但能實(shí)現(xiàn)所要求的功能而且能在很大的程度上擴(kuò)展功能,而且還可以方便的對(duì)系統(tǒng)進(jìn)行升級(jí),所以我們采用后一種方案作為此次設(shè)計(jì)的方案。第二章 硬件系統(tǒng)設(shè)計(jì)2.1 單片機(jī)at89c51簡(jiǎn)介at89c51是一種帶4k字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(fperomflash programmable and erasable read only memory)的低電壓,高性能cmos8位微處理器,俗稱(chēng)單片機(jī)。at89c2051是一種帶2k字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)
16、的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件采用atmel高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的mcs-51指令集和輸出管腳相兼容。由于將多功能8位cpu和閃爍存儲(chǔ)器組合在單個(gè)芯片中,atmel的at89c51是一種高效微控制器,at89c2051是它的一種精簡(jiǎn)版本。at89c單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。圖2.1 at89c51引腳圖2.2 設(shè)計(jì)原理電源電路及ups矩陣鍵盤(pán)控制 89c51 單片機(jī)復(fù)位電路延時(shí)報(bào)警控制電路密碼存儲(chǔ)電路開(kāi)鎖控制電路晶振電路顯示電路圖2.2 總體設(shè)計(jì)框圖本設(shè)計(jì)主要由單片機(jī)、矩陣鍵盤(pán)、液晶顯示器和密碼存儲(chǔ)等部分組成。其中矩陣鍵盤(pán)用
17、于輸入數(shù)字密碼和進(jìn)行各種功能的實(shí)現(xiàn)。由用戶(hù)通過(guò)連接單片機(jī)的矩陣鍵盤(pán)輸入密碼,后經(jīng)過(guò)單片機(jī)對(duì)用戶(hù)輸入的密碼與自己保存的密碼進(jìn)行對(duì)比,從而判斷密碼是否正確,然后控制引腳的高低電平傳到開(kāi)鎖電路或者報(bào)警電路控制開(kāi)鎖還是報(bào)警,實(shí)際使用時(shí)只要將單片機(jī)的負(fù)載由繼電器換成電子密碼鎖的電磁鐵吸合線圈即可,當(dāng)然也可以用繼電器的常開(kāi)觸點(diǎn)去控制電磁鐵吸合線圈。本系統(tǒng)共有兩部分構(gòu)成,即硬件部分與軟件部分。其中硬件部分由電源輸入部分、鍵盤(pán)輸入部分、密碼存儲(chǔ)部分、復(fù)位部分、晶振部分、顯示部分、報(bào)警部分、開(kāi)鎖部分組成,軟件部分對(duì)應(yīng)的由主程序、初始化程序、lcd顯示程序、鍵盤(pán)掃描程序、啟動(dòng)程序、關(guān)閉程序、建功能程序、密碼設(shè)置程
18、序、eeprom讀寫(xiě)程序和延時(shí)程序等組成。其原理框圖如圖2.2所示。2.3 電路總體構(gòu)成由于單片機(jī)種類(lèi)繁多,各種型號(hào)都有其一定的應(yīng)用環(huán)境,因此在選用時(shí)要多加比較,合理選擇,以期獲得最佳的性?xún)r(jià)比?;谝陨弦蛩乇驹O(shè)計(jì)選用單片機(jī)at89s51作為本設(shè)計(jì)的核心元件,利用單片機(jī)靈活的編程設(shè)計(jì)和豐富的i/o端口,及其控制的準(zhǔn)確性,實(shí)現(xiàn)基本的密碼鎖功能。在確定了選用什么型號(hào)的單片機(jī)后,就要確定在外圍電路,其外圍電路包括電源輸入部分、鍵盤(pán)輸入部分、密碼存儲(chǔ)部分、復(fù)位部分、晶振部分、顯示部分、報(bào)警部分、開(kāi)鎖部分組成,根據(jù)實(shí)際情況鍵盤(pán)輸入部分選擇4*4矩陣鍵盤(pán),顯示部分選擇字符型液晶顯示lcd1602,密碼存儲(chǔ)部
19、分選用at24c02芯片來(lái)完成,密碼輸入正確則開(kāi)鎖成功,密碼三次輸入錯(cuò)誤就會(huì)報(bào)警;當(dāng)用戶(hù)需要修改密碼時(shí),先按下鍵盤(pán)設(shè)置鍵后輸入原來(lái)的密碼,只有當(dāng)輸入的原密碼正確后才能設(shè)置新密碼。新密碼輸入無(wú)誤后按確認(rèn)鍵使新密碼將得到存儲(chǔ),密碼修改成功。其原理圖如圖2.3所示:圖2.3 設(shè)計(jì)總體電路圖2.4電源部分2.4.1直流穩(wěn)壓電源電路在電子電路中,通常都需要電壓穩(wěn)定的直流電源供電。直流電源部分為系統(tǒng)各部分提供穩(wěn)定、可靠的直流電源。它由變壓,整流,濾波,穩(wěn)壓四個(gè)部分組成。1、電源變壓器。由于各種電子設(shè)備要求直流穩(wěn)壓電源提供不同幅值的直流電壓,而市電提供的交流電壓一般為220v(或380v),因此需要利用變壓
20、器先將市電的電壓變換成所需要的交流電壓,再將變換后的交流電壓整流、濾波和穩(wěn)壓,最后獲得所需要的直流電壓。2、整流電路。整流電路是利用具有單向?qū)щ娦缘恼髌骷ㄈ缯鞫O管、晶閘管),將大小、方向變化的正弦交流電變換成單向脈動(dòng)的直流電。這種單向脈動(dòng)直流電壓含有很大的紋波成分,一般不能實(shí)用。3、濾波電路。濾波電路的主要任務(wù)是將整流后的單向脈動(dòng)直流電壓中的紋波成分盡可能濾除掉,使其變成平滑的直流電。濾波電路通常由電容、電感等儲(chǔ)能元件組成。4、穩(wěn)壓電路。它能在電網(wǎng)電壓和負(fù)載電流的變化時(shí),保持輸出直流電壓的穩(wěn)定。它是直流穩(wěn)壓電源的重要組成部分,決定著直流電源的重要性能指標(biāo)2.4.2密碼鎖電源電路圖2.4
21、 電源輸入電路原理圖密碼鎖主控制部分電源需要用5v直流電源供電,其電路如圖2.4所示,把頻率為50hz、有效值為220v的單相交流電壓轉(zhuǎn)換為幅值穩(wěn)定的5v直流電壓。其主要原理是把單相交流電經(jīng)過(guò)電源變壓器、整流電路、濾波電路、穩(wěn)壓電路轉(zhuǎn)換成穩(wěn)定的直流電壓。由于輸入電壓為電網(wǎng)電壓,一般情況下所需直流電壓的數(shù)值和電網(wǎng)電壓的有效值相差較大,因而電源變壓器的作用顯現(xiàn)出來(lái)起到降壓作用。降壓后還是交流電壓,所以需要整流電路把交流電壓轉(zhuǎn)換成直流電壓。由于經(jīng)整流電路整流后的電壓含有較大的交流分量,會(huì)影響到負(fù)載電路的正常工作。需通過(guò)低通濾波電路濾波,使輸出電壓平滑。穩(wěn)壓電路的功能是使輸出直流電壓基本不受電網(wǎng)電壓波
22、動(dòng)和負(fù)載電阻變化的影響,從而獲得穩(wěn)定性足夠高的直流電壓。本電路使用集成穩(wěn)壓芯片7805解決了電源穩(wěn)壓?jiǎn)栴}。2.5 鍵盤(pán)輸入矩陣式鍵盤(pán)的結(jié)構(gòu)與工作原理:在鍵盤(pán)中按鍵數(shù)量較多時(shí),為了減少i/o口的占用,通常將按鍵排列成矩陣形式,如圖2.5所示。在矩陣式鍵盤(pán)中,每條水平線和垂直線在交叉處不直接連通,而是通過(guò)一個(gè)按鍵加以連接。這樣,一個(gè)端口(如p1口)就可以構(gòu)成4*4=16個(gè)按鍵,比之直接將端口線用于鍵盤(pán)多出了一倍,而且線數(shù)越多,區(qū)別越明顯,比如再多加一條線就可以構(gòu)成20鍵的鍵盤(pán),而直接用端口線則只能多出一鍵(9鍵)。由此可見(jiàn),在需要的鍵數(shù)比較多時(shí),采用矩陣法來(lái)做鍵盤(pán)是合理的。圖2.5 鍵盤(pán)輸入原理圖
23、矩陣式結(jié)構(gòu)的鍵盤(pán)顯然比直接法要復(fù)雜一些,識(shí)別也要復(fù)雜一些,上圖中,列線通過(guò)電阻接正電源,并將行線所接的單片機(jī)的i/o口作為輸出端,而列線所接的i/o口則作為輸入。這樣,當(dāng)按鍵沒(méi)有按下時(shí),所有的輸出端都是高電平,代表無(wú)鍵按下。行線輸出是低電平,一旦有鍵按下,則輸入線就會(huì)被拉低,這樣,通過(guò)讀入輸入線的狀態(tài)就可得知是否有鍵按下了。具體的識(shí)別及編程方法如下所述。矩陣式鍵盤(pán)的按鍵識(shí)別方法:確定矩陣式鍵盤(pán)上何鍵被按下介紹一種“行掃描法”。行掃描法行掃描法又稱(chēng)為逐行(或列)掃描查詢(xún)法,是一種最常用的按鍵識(shí)別方法,如圖2.5所示鍵盤(pán),介紹過(guò)程如下。判斷鍵盤(pán)中有無(wú)鍵按下將全部行線y0-y3置低電平,然后檢測(cè)列線
24、的狀態(tài)。只要有一列的電平為低,則表示鍵盤(pán)中有鍵被按下,而且閉合的鍵位于低電平線與4根行線相交叉的4個(gè)按鍵之中。若所有列線均為高電平,則鍵盤(pán)中無(wú)鍵按下。判斷閉合鍵所在的位置在確認(rèn)有鍵按下后,即可進(jìn)入確定具體閉合鍵的過(guò)程。其方法是:依次將行線置為低電平,即在置某根行線為低電平時(shí),其它線為高電平。在確定某根行線位置為低電平后,再逐行檢測(cè)各列線的電平狀態(tài)。若某列為低,則該列線與置為低電平的行線交叉處的按鍵就是閉合的按鍵。下面給出一個(gè)具體的例子:如圖2.5所示。89c51單片機(jī)的p1口用作鍵盤(pán)i/o口,鍵盤(pán)的列線接到p1口的低4位,鍵盤(pán)的行線接到p1口的高4位。列線p1.0-p1.3分別接有4個(gè)上拉電阻
25、到正電源+5v,并把列線p1.0-p1.3設(shè)置為輸入線,行線p1.4-p.17設(shè)置為輸出線。4根行線和4根列線形成16個(gè)相交點(diǎn)。檢測(cè)當(dāng)前是否有鍵被按下。檢測(cè)的方法是p1.4-p1.7輸出全“0”,讀取p1.0-p1.3的狀態(tài),若p1.0-p1.3為全“1”,則無(wú)鍵閉合,否則有鍵閉合。去除鍵抖動(dòng)。當(dāng)檢測(cè)到有鍵按下后,延時(shí)一段時(shí)間再做下一步的檢測(cè)判斷。若有鍵被按下,應(yīng)識(shí)別出是哪一個(gè)鍵閉合。方法是對(duì)鍵盤(pán)的行線進(jìn)行掃描。p1.4-p1.7按下述4種組合依次輸出:p1.7 1 1 1 0p1.6 1 1 0 1p1.5 1 0 1 1p1.4 0 1 1 1在每組行輸出時(shí)讀取p1.0-p1.3,若全為“
26、1”,則表示為“0”這一行沒(méi)有鍵閉合,否則有鍵閉合。由此得到閉合鍵的行值和列值,然后可采用計(jì)算法或查表法將閉合鍵的行值和列值轉(zhuǎn)換成所定義的鍵值為了保證鍵每閉合一次cpu僅作一次處理,必須卻除鍵釋放時(shí)的抖動(dòng)。2.6密碼存儲(chǔ)部分2.6.1 at24c02at24c02是美國(guó)atmel公司的低功耗cmos型e2prom,內(nèi)含2568位存儲(chǔ)空間,具有工作電壓寬(2.55.5 v)、擦寫(xiě)次數(shù)多(大于10000次)、寫(xiě)入速度快(小于10 ms)、抗干擾能力強(qiáng)、數(shù)據(jù)不易丟失、體積小等特點(diǎn)。而且他是采用了i2c總線式進(jìn)行數(shù)據(jù)讀寫(xiě)的串行器件,占用很少的資源和io線,并且支持在線編程,進(jìn)行數(shù)據(jù)實(shí)時(shí)的存取十分方便。
27、at24c02正是運(yùn)用了i2c規(guī)程,使用主從機(jī)雙向通信,主機(jī)(通常為單片機(jī))和從機(jī)(at24c02)均可工作于接收器和發(fā)送器狀態(tài)。主機(jī)產(chǎn)生串行時(shí)鐘信號(hào)(通過(guò)scl引腳)并發(fā)出控制字,控制總線的傳送方向,并產(chǎn)生開(kāi)始和停止的條件。無(wú)論是主機(jī)還是從機(jī),接收到一個(gè)字節(jié)后必須發(fā)出一個(gè)確認(rèn)信號(hào)ack。at24c02的控制字由8位二進(jìn)制數(shù)構(gòu)成,在開(kāi)始信號(hào)發(fā)出以后,主機(jī)便會(huì)發(fā)出控制字,以選擇從機(jī)并控制總線傳送的方向。圖2.6(a)at24c02管腳圖2.6.2密碼存儲(chǔ)電路圖2.6(b)中at24c02的1、2、3腳是三條地址線,用于確定芯片的硬件地址。在at89c51試驗(yàn)開(kāi)發(fā)板上它們都接地,第8腳和第4腳分別
28、為正、負(fù)電源。第5腳sda為串行數(shù)據(jù)輸入/輸出,數(shù)據(jù)通過(guò)這條雙向i2c總線串行傳送,在at89c51試驗(yàn)開(kāi)發(fā)板上和單片機(jī)的p3.7連接。第6腳scl為串行時(shí)鐘輸入線,在at89c51試驗(yàn)開(kāi)發(fā)板上和單片機(jī)的p3.6連接。sda和scl都需要和正電源間各接一個(gè)5.1k的電阻上拉。第7腳需要接地。圖2.6(b)密碼存儲(chǔ)電路原理圖at24c02中帶有片內(nèi)地址寄存器。每寫(xiě)入或讀出一個(gè)數(shù)據(jù)字節(jié)后,該地址寄存器自動(dòng)加1,以實(shí)現(xiàn)對(duì)下一個(gè)存儲(chǔ)單元的讀寫(xiě)。所有字節(jié)均以單一操作方式讀取。為降低總的寫(xiě)入時(shí)間,一次操作可寫(xiě)入多達(dá)8個(gè)字節(jié)的數(shù)據(jù)。2.7復(fù)位部分2.7.1 復(fù)位電路的介紹復(fù)位操作有上電自動(dòng)復(fù)位和按鍵手動(dòng)復(fù)位
29、兩種方式:1、上電自動(dòng)復(fù)位上電自動(dòng)復(fù)位時(shí)在加電瞬間電容通過(guò)充電來(lái)實(shí)現(xiàn)的,其電路如圖2.7a所示。在通電瞬間,電容c通過(guò)電阻r充電,rst端出現(xiàn)正脈沖,用以復(fù)位。只要電源vcc的上升時(shí)間不超過(guò)1ms,就可以實(shí)現(xiàn)自動(dòng)上電復(fù)位,即接通電源就完成了系統(tǒng)的復(fù)位初始化。關(guān)于參數(shù)的選定,在振蕩穩(wěn)定后應(yīng)保證復(fù)位高電平持續(xù)時(shí)間(即正脈沖寬度)大于2個(gè)機(jī)器周期。當(dāng)采用的晶體頻率為6mhz時(shí),可取c為22f,r為k;當(dāng)采用晶體為12mhz時(shí),可取c為10f,r為8.2k.如果上述電路復(fù)位不僅要使點(diǎn)單片機(jī)復(fù)位,而且還要使單片機(jī)的一些外圍芯片也同時(shí)復(fù)位,那么上述電阻、電容參考值應(yīng)作少許調(diào)整。對(duì)于coms型的89c51,
30、由于在rst端內(nèi)部有一個(gè)下拉電阻,故可將外部電阻去掉,而將外界電容減至1f。2、手動(dòng)復(fù)位所謂手動(dòng)復(fù)位,是指通過(guò)接通以按鈕開(kāi)關(guān),使單片機(jī)進(jìn)入復(fù)位狀態(tài)。系統(tǒng)上電運(yùn)行以后,若需要復(fù)位,一般是通過(guò)手動(dòng)復(fù)位來(lái)實(shí)現(xiàn)的。通常采用手動(dòng)復(fù)位和上電自動(dòng)復(fù)位組合,其電路如圖2.7所示。 圖2.7(a )上電復(fù)位 圖2.7(b )按鍵電平復(fù)位復(fù)位電路雖然簡(jiǎn)單,但其作用非常重要。一個(gè)單片機(jī)系統(tǒng)能否正常運(yùn)行,首先要檢查是否能復(fù)位成功。初步檢查可用示波器探頭監(jiān)視r(shí)st引腳,按下復(fù)位鍵,觀察是否有足夠幅度的波形輸出(瞬時(shí)的),還可以通過(guò)改變復(fù)位電路阻容值進(jìn)行實(shí)驗(yàn)。2.7.2復(fù)位電路此次設(shè)計(jì)主要采用按鍵電平復(fù)位,單片機(jī)復(fù)位是使
31、cpu和系統(tǒng)中的其他功能部件都處在一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開(kāi)始工作,例如復(fù)位后pc0000h,使單片機(jī)從第個(gè)單元取指令。無(wú)論是在單片機(jī)剛開(kāi)始接上電源時(shí),還是斷電后或者發(fā)生故障后都要復(fù)位。在復(fù)位期間(即rst為高電平期間),p0口為高組態(tài),p1p3口輸出高電平;外部程序存儲(chǔ)器讀選通信號(hào)psen無(wú)效。地址鎖存信號(hào)ale也為高電平。根據(jù)實(shí)際情況選擇如圖4-6所示的復(fù)位電路。該電路在最簡(jiǎn)單的復(fù)位電路下增加了手動(dòng)復(fù)位按鍵,在接通電源瞬間,電容c1上的電壓很小,復(fù)位下拉電阻r上的電壓接近電源電壓,即rst為高電平,在電容充電的過(guò)程中rst端電壓逐漸下降,當(dāng)rst端的電壓小于某一數(shù)值后,cpu脫離復(fù)
32、位狀態(tài),由于電容c1足夠大,可以保證rst高電平有效時(shí)間大于24個(gè)振蕩周期,cpu能夠可靠復(fù)位。增加手動(dòng)復(fù)位按鍵是為了避免死機(jī)時(shí)無(wú)法可靠復(fù)位。當(dāng)復(fù)位按鍵按下后電容c1通過(guò)r5放電。當(dāng)電容c1放電結(jié)束后,rst端的電位由r5與r6分壓比決定。由于r53?報(bào)警程序nyny返回確認(rèn)程序再次輸新密碼兩次新密碼輸入相同?ny圖3.3 密碼修改流程圖3.4 密碼比較判斷模塊初始化按開(kāi)鎖鍵輸入密碼確認(rèn)程序所輸入密碼正確?y開(kāi)鎖成功開(kāi)鎖程序輸入次數(shù)加1次數(shù)3?報(bào)警程序返回nyn該模塊的功能是將鍵盤(pán)輸入的密碼與設(shè)定的密碼進(jìn)行比較,如果密碼正確則開(kāi)鎖;若不正確,則密碼輸入次數(shù)計(jì)數(shù)單元計(jì)數(shù)如達(dá)不到3次,返回鍵盤(pán)掃描
33、模塊;若計(jì)數(shù)已達(dá)3次,則調(diào)用自動(dòng)報(bào)警模塊。圖3.4 密碼判斷流程3.5自動(dòng)報(bào)警模塊該模塊采用軟件延時(shí)的方法, 改變單片機(jī)p2.1引腳輸出波形的頻率,就可以調(diào)整控制蜂鳴器音調(diào),產(chǎn)生各種不同音色、音調(diào)的聲音,達(dá)到現(xiàn)場(chǎng)報(bào)警的目的另外,改變p2.1輸出電平的高低電平占空比,則可以控制蜂鳴器的聲音大小。snd:setb p2.1 ;p2.1輸出高電平,啟動(dòng)蜂鳴器鳴叫mov r7,#1eh ;延時(shí)30msdl:mov r6,#0f9hdl1:djnz r6,dl1;小循壞延時(shí)1msdjnz r7,dlclr p2.1 ;p2.1輸出低電平,停止蜂鳴器鳴叫ret第四章 總結(jié)與體會(huì)在大學(xué)學(xué)習(xí)的這段期間內(nèi),知識(shí)
34、是通過(guò)一門(mén)門(mén)獨(dú)立的課程傳授給我們的。而實(shí)際問(wèn)題能夠順利的得到解決,不但需要多方面的知識(shí),而且還需要對(duì)這些知識(shí)綜合地加以運(yùn)用。所以此次畢業(yè)設(shè)計(jì)既是學(xué)習(xí)的過(guò)程,也是實(shí)踐的過(guò)程,不僅對(duì)所學(xué)的知識(shí)加以了鞏固和延伸。也讓我學(xué)會(huì)慎密、全面的考慮問(wèn)題,抓住主要矛盾加以解決的思維方法和圍繞問(wèn)題多方設(shè)法以求得解決的頑強(qiáng)意志。大學(xué)生活使我從一個(gè)懵懂無(wú)知的少年變成了可以勇敢面對(duì)人生的強(qiáng)者,無(wú)論是在思想上還是在專(zhuān)業(yè)課的學(xué)習(xí)上,電子電氣系的老師和同學(xué)們給予了我極大的幫助,在這里我要對(duì)老師們無(wú)私的關(guān)懷和幫助表示衷心的感謝!對(duì)幫助過(guò)我的同學(xué)們表示真摯的感謝! 參考文獻(xiàn)1 石文軒,宋薇.基于單片機(jī)mcs一51的智能密碼鎖設(shè)計(jì)
35、m.武漢工程職業(yè)技術(shù)學(xué)院學(xué)報(bào),2004,(01);2 祖龍起,劉仁杰.一種新型可編程密碼鎖j.大連輕工業(yè)學(xué)院學(xué)報(bào),2002,(01);3 葉啟明.單片機(jī)制作的新型安全密碼鎖j.家庭電子,2005,(10);4 郭海英.基于單片機(jī)的電子安全密碼鎖的設(shè)計(jì)m.現(xiàn)代電子技術(shù),2005,(13);5 李明喜.新型電子密碼鎖的設(shè)計(jì)j.機(jī)電產(chǎn)品開(kāi)發(fā)與創(chuàng)新,2004,(03);6 董繼成.一種新型安全的單片機(jī)密碼鎖j.電子技術(shù),2004,(03);7 祖龍起,劉仁杰,孫乃凌.一種新穎的電子密碼鎖j.電子世界,2001,(10);8 李明喜.新型電子密碼鎖的設(shè)計(jì)j.機(jī)電產(chǎn)品開(kāi)發(fā)與創(chuàng)新,2004,(03);9 楊
36、茂濤.一種電子密碼鎖的實(shí)現(xiàn)j.福建電腦,2004,(08);10 瞿貴榮.實(shí)用電子密碼鎖j.家庭電子,2000,(07);11 atmega.atmega8l-8ac,2006,(01);12 wireless world,1998,vol、84,no、1509,p69;13 王千.實(shí)用電子電路大全m,電子工業(yè)出版社,2001,p101;14 何立民.單片機(jī)應(yīng)用技術(shù)選編m,北京:北京航空大學(xué)出版社,1998;15 李華.mcs-51系列單片機(jī)使用接口技術(shù)m,北京航空航天大學(xué)出版社,1993;16 彭為.單片機(jī)典型系統(tǒng)設(shè)計(jì)實(shí)例精講m,北京:電子工業(yè)出版社,2006;17 潘永雄.新編單片機(jī)原理與
37、應(yīng)用m,西安:西安電子科技大學(xué)出版社,2003;18 童詩(shī)白,華成英.模擬電子技術(shù)基礎(chǔ)m,北京:高等教育出版社,2000;19 閻石主.數(shù)字電子技術(shù)基礎(chǔ)m,北京:高等教育出版社,1998;20 李朝青.單片機(jī)原理及接口技術(shù) m,北京:北京航空航天大學(xué)出版社,2005;21 李瀚蓀.電路分析基礎(chǔ)m,北京:高等教育出版社1991;22 周潤(rùn)景,袁偉亭,景曉松。prtoeus在mcs-51&arm7系統(tǒng)中的應(yīng)用百例m,北京:電子工業(yè)出版社,2006;附錄 電子密碼鎖程序清單s1ok *;顯示緩沖區(qū);led1 equ 6fhbuff equ 6ehtimers1 equ 6dh ;輸入回車(chē)的次數(shù)tim
38、ers2 equ 6ch ;報(bào)警的次數(shù)timers equ 6bh ;輸入數(shù)字的位數(shù);led6 equ 6ah;密碼緩沖區(qū)ps1 equ 69hps2 equ 68hps3 equ 67hps4 equ 66hps5 equ 65hps6 equ 64h;at24c02讀取緩沖區(qū)at1 equ 63hat2 equ 62hat3 equ 61hat4 equ 60hat5 equ 5fhat6 equ 5eh;按鍵標(biāo)志位f_1 bit 20hf_2 bit 21hf_3 bit 22hf_4 bit 23hbuf_full bit 24h ;密碼已經(jīng)夠六位的標(biāo)志位,為1表示滿(mǎn)ch_state
39、bit 25h ;系統(tǒng)更改的狀態(tài)標(biāo)志位,為1表示busyflag1 bit 26h ;功能鍵標(biāo)志位,為1表示功能按鍵。f_f1 bit 27hf_f2 bit 28hpsw_f bit 29h ;密碼是否正確的標(biāo)志位;口資源定義spk bit p2.1jdq bit p2.3sda bit p2.4 ;定義串口數(shù)據(jù)端scl bit p2.5;發(fā)光二極管燈l1 bit p1.0l2 bit p1.1l3 bit p1.2;org 0000hajmp mainorg 000bh;ajmp timer0org 001bh;ajmp timer1org 0030hmain:mov sp, #70hmo
40、v tmod, #11hmov th0, #3chmov tl0, #0b0hmov th1, #3chmov tl1, #0b0hclr f_1 ;清除標(biāo)志位clr f_2clr f_3clr f_4clr buf_fullclr ch_stateclr flag1clr f_f1clr f_f2clr psw_fmov buff,#00h ;調(diào)用lcall initps ;初始化環(huán)境lcall initatlcall xsa ;調(diào)用默認(rèn)顯示mov timers1,#00hnopmov ps1, #11h ;初始化密碼830620mov ps2, #0ahmov ps3, #02hmov p
41、s4, #13hmov ps5, #0bhmov ps6, #02hstart:nop ;程序開(kāi)始lcall ch_key ;檢查鍵盤(pán)ajmp start ;返回ch_key:lcall ks ;檢查有沒(méi)有按鍵按下jnz lk1ajmp ch_keylk1:lcall t12msacall ksjnz lk2retlk2:noplcall sbie ;按鍵識(shí)別子程序mov buff, a ;送緩沖區(qū)以識(shí)別是數(shù)字鍵還是功能鍵?lcall ch_kf ;判斷按鍵功能。jb flag1 ,key_fun ;標(biāo)志為1,則為功能鍵;*數(shù)字按鍵輸入并且存放到緩沖區(qū)內(nèi)等待比較*g:nop ;設(shè)一標(biāo)志,辨別輸
42、入是否滿(mǎn);setb tr0inc timers ;輸入數(shù)字的位數(shù)mov a, timersclr csubb a, #01hjnz ps_2mov ps1, buff ;依照順序存放密碼ajmp nextps_2:mov a, timerssubb a, #02hclr cjnz ps_3mov ps2, buffajmp nextps_3:mov a, timersclr csubb a, #03hjnz ps_4mov ps3, buffajmp nextps_4:mov a, timersclr csubb a, #04jnz ps_5mov ps4, buffajmp nextps_5
43、:mov a, timersclr csubb a, #05jnz ps_6mov ps5, buffajmp nextps_6:mov a, timersclr csubb a, #06hjnz ch_keymov ps6, buffnext:lcall xscmov r7, timers ;比較輸入的次數(shù)。cjne r7, #06h ,fullfull:jc next9setb buf_fullmov timers,#06hclr l3nopclr p2.1lcall t100msdsetb p2.1nopajmp ch_keynext9:clr p2.1 ;密碼輸入一位,鳴叫一聲。clr
44、 l3lcall t100msd ;延時(shí)100mssetb l3setb p2.1ajmp ch_key;*功能按鍵比較并且跳轉(zhuǎn)*key_fun:clr flag1clr cmov a, buffsubb a, #03h ;按鍵cl跳轉(zhuǎn)jnz en_cajmp clen_c:clr cmov a, buff ;按鍵en跳轉(zhuǎn)subb a, #00hjnz f1_cajmp enf1_c:clr cmov a, buffsubb a, #1bhjnz f2_cajmp fu1f2_c:clr cmov a, buffsubb a, #1ahjnz f3_cajmp fu2f3_c:clr cmov
45、 a, buffsubb a, #19hjnz f4_cajmp fu3f4_c:clr cmov a, buffsubb a, #18hjz fu4exit8:nopljmp ch_key; *開(kāi)門(mén)子程序 *cl:nopsetb l3mov buff, #00h ;消密碼緩沖mov timers,#00hlcall initps ;消除at緩沖,加調(diào)電存儲(chǔ)后一定要加上lcall xsclcall bplcall bplcall t100msdlcall bpclr flag1ajmp ch_keyfu4:noplcall bplcall t100msdlcall bplcall t100msdlcall bplcall t100msdlcall bplcall t100msdlcall bpclr flag1ajmp ch_keyfu3:noplcall bplcall t100msdlcall bplcall killxs ;關(guān)閉顯示clr fla
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度新能源儲(chǔ)能系統(tǒng)承包安裝合同4篇
- 2024美容美發(fā)產(chǎn)品購(gòu)銷(xiāo)簡(jiǎn)單合同范本
- 2025年度深層水文地質(zhì)勘探打井勞務(wù)服務(wù)合同4篇
- 2024版智能家居設(shè)備租賃合同
- 2024私人房屋買(mǎi)賣(mài)合同范本53299
- 2024銷(xiāo)售無(wú)標(biāo)簽油煙機(jī)合同范本
- 2024版金融信息服務(wù)框架合同
- 2024運(yùn)營(yíng)總監(jiān)企業(yè)創(chuàng)新機(jī)制與激勵(lì)機(jī)制合同3篇
- 2025年度停車(chē)場(chǎng)照明設(shè)施改造承包合同4篇
- 2021-2026年中國(guó)飲料瓶智能回收機(jī)市場(chǎng)調(diào)查研究及行業(yè)投資潛力預(yù)測(cè)報(bào)告
- 拆遷評(píng)估機(jī)構(gòu)選定方案
- 床旁超聲監(jiān)測(cè)胃殘余量
- 上海市松江區(qū)市級(jí)名校2025屆數(shù)學(xué)高一上期末達(dá)標(biāo)檢測(cè)試題含解析
- 綜合實(shí)踐活動(dòng)教案三上
- 《新能源汽車(chē)電氣設(shè)備構(gòu)造與維修》項(xiàng)目三 新能源汽車(chē)照明與信號(hào)系統(tǒng)檢修
- 2024年新課標(biāo)《義務(wù)教育數(shù)學(xué)課程標(biāo)準(zhǔn)》測(cè)試題(附含答案)
- 醫(yī)院培訓(xùn)課件:《靜脈中等長(zhǎng)度導(dǎo)管臨床應(yīng)用專(zhuān)家共識(shí)》
- 趣味知識(shí)問(wèn)答100道
- 中國(guó)國(guó)際大學(xué)生創(chuàng)新大賽與“挑戰(zhàn)杯”大學(xué)生創(chuàng)業(yè)計(jì)劃競(jìng)賽(第十一章)大學(xué)生創(chuàng)新創(chuàng)業(yè)教程
- 鋼管豎向承載力表
- 2024年新北師大版八年級(jí)上冊(cè)物理全冊(cè)教學(xué)課件(新版教材)
評(píng)論
0/150
提交評(píng)論