<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于AT89C51RC的紅外遙控密碼鎖的設(shè)計(jì)與實(shí)現(xiàn)

          基于AT89C51RC的紅外遙控密碼鎖的設(shè)計(jì)與實(shí)現(xiàn)

          作者: 時(shí)間:2011-09-16 來(lái)源:網(wǎng)絡(luò) 收藏
            1 引言

            根據(jù)用戶的要求和需要,主要為了解決當(dāng)前市場(chǎng)上無(wú)遙控密碼鎖的問(wèn)題,以提高門禁系統(tǒng)的可靠性和安全性,適應(yīng)市場(chǎng)需要而設(shè)計(jì)的該紅外系統(tǒng)。該系統(tǒng)具有普通電子密碼鎖功能的同時(shí),還增加了遙控功能。該鎖采用6位數(shù)作為密碼,總密碼組有106組,完全滿足用戶對(duì)密碼安全性高的要求。該系統(tǒng)具有較強(qiáng)的實(shí)際應(yīng)用價(jià)值,所涉及的技術(shù)包括:紅外載波數(shù)據(jù)傳輸技術(shù)、單片機(jī)控制技術(shù)、紅外遙控系統(tǒng)編碼及譯碼技術(shù)、電路設(shè)計(jì)與演示板制作技術(shù)等。

            2 系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn)(單元電路設(shè)計(jì))

            2.1 硬件結(jié)構(gòu)圖:

            系統(tǒng)以單片機(jī)為核心。系統(tǒng)結(jié)構(gòu)框圖如圖1所示。本系統(tǒng)的功能設(shè)計(jì)目標(biāo)應(yīng)該包括以下幾個(gè)方面:紅外發(fā)射功能模塊,紅外線接收轉(zhuǎn)換模塊、單片機(jī)模塊、蜂鳴器報(bào)警功能模塊、LED數(shù)碼管顯示模塊、按鍵功能模塊,開(kāi)鎖功能模塊等。下面詳細(xì)介紹一下各單元的硬件電路和實(shí)現(xiàn)的功能。 

            

             圖1 硬件結(jié)構(gòu)圖

            2.1.1電源部分設(shè)計(jì)

            本系統(tǒng)的電源部分使用LM7805芯片進(jìn)行穩(wěn)壓后提供單片機(jī)5V的電壓。其電源部分電路的設(shè)計(jì)如圖2所示。

            紅外遙控密碼鎖的設(shè)計(jì)與實(shí)現(xiàn)

            圖2 紅外遙控密碼電源部分的電路原理圖

            該電源部分電路,使用四個(gè)1N4004二極管構(gòu)成整流橋,可以輸入直流或是交流9V電源,然后再通過(guò)7805穩(wěn)定到5V供單片機(jī)工作。固定式三端穩(wěn)壓電源7805是由輸出腳Vo,輸入腳Vi和接地腳GND組成,它的穩(wěn)壓值為+5V,它屬于LM78XX系列的穩(wěn)壓器,輸入端接電容可以進(jìn)一步的濾波,輸出端也要接電容可以改善負(fù)載的瞬間影響,電路的穩(wěn)定性也比較好?!?.1.2 紅外接收頭部分和LED顯示部分設(shè)計(jì)

            紅外信號(hào)接收部分是使用KS38BL紅外接收頭實(shí)現(xiàn)的,其電路如圖3所示?!D3是紅外線遙控器信號(hào)接收頭的簡(jiǎn)易電路,它可接收載波頻率從33~57KHz的遙控器信號(hào)。100Ω電阻起到限流的作用,470uF電容濾波減少干擾。以邏輯筆接觸紅外線接收模塊的信號(hào)輸出端(OUT),便可以偵測(cè)當(dāng)按下紅外線遙控器某一按鍵時(shí),紅外線數(shù)字信號(hào)的發(fā)射。若有發(fā)射紅外線數(shù)字信號(hào)則經(jīng)過(guò)紅外線接收模塊取出數(shù)字信號(hào)數(shù)據(jù),邏輯筆脈沖LED便會(huì)閃動(dòng)。這樣可以檢測(cè)到當(dāng)前有沒(méi)有紅外信號(hào)發(fā)射最簡(jiǎn)單的方法。

            紅外遙控密碼鎖的設(shè)計(jì)與實(shí)現(xiàn)

            圖3 紅外線接受部分

            如圖4所示,系統(tǒng)的顯示是使用MAX7219實(shí)現(xiàn)的8位穩(wěn)定靜態(tài)顯示,MAX7219是串行共陰極數(shù)碼管動(dòng)態(tài)掃描顯示驅(qū)動(dòng)芯片,僅使用3線串行接口傳送數(shù)據(jù),可直接與單片機(jī)接口,用戶還可以方便地修改其內(nèi)部參數(shù)以實(shí)現(xiàn)多位LED顯示,因此可以方便地使用單片機(jī)的串口送出顯示數(shù)據(jù),并且其占用的時(shí)間少,方便編程及對(duì)信號(hào)的檢測(cè)。

            紅外遙控密碼鎖的設(shè)計(jì)與實(shí)現(xiàn)

            圖4 利用MAX7219設(shè)計(jì)顯示部分

            2.1.5密碼存儲(chǔ)部分的電路設(shè)計(jì)

            為了保存用戶設(shè)置的密碼,該系統(tǒng)使用AT24C04用來(lái)保存用戶設(shè)置的密碼,單片機(jī)的P3.6接AT24C04的SCLK口作為它的串行移位時(shí)鐘,的P3.7接AT24C04的SDA口作為它的串行數(shù)據(jù)或地址輸入輸出。該電路要注意的是SCLK、SDA必須加上一上接電阻,阻值為10K。用戶設(shè)置的密碼存放在AT24C04中,當(dāng)需要更改或讀取用戶密碼時(shí),只需對(duì)AT24C04里的數(shù)據(jù)更改或讀取。由于主芯片AT89C51RC沒(méi)有I2C總線,故本系統(tǒng)采用軟件程序模擬I2C總線時(shí)序來(lái)完成AT89S51來(lái)與AT24C04的連接。

           2.1.6 報(bào)警電路設(shè)計(jì)

            本系統(tǒng)設(shè)計(jì)時(shí)考慮到防盜而設(shè)計(jì)了報(bào)警電路,由蜂鳴器發(fā)聲進(jìn)行報(bào)警,蜂鳴器接在CPU的引腳P0.4上,通過(guò)PNP型三極管做電流放大,因此可以通過(guò)單片機(jī)控制蜂鳴器的頻率及蜂鳴時(shí)間。當(dāng)輸入錯(cuò)誤的密碼進(jìn)行開(kāi)鎖時(shí),系統(tǒng)會(huì)報(bào)警,由P0.4口輸出低電平使得PNP型三極管導(dǎo)通,蜂鳴器兩端加電,由蜂鳴器發(fā)出1秒的報(bào)警聲,當(dāng)連續(xù)三次出現(xiàn)密碼錯(cuò)誤時(shí),則系統(tǒng)會(huì)長(zhǎng)時(shí)間報(bào)警,此舉為了防止別人非法試探開(kāi)鎖。

            2.1.7 本機(jī)處理與遙控處理功能選擇電路設(shè)計(jì)

            本系統(tǒng)設(shè)計(jì)了一個(gè)自鎖按鍵用來(lái)選擇本機(jī)處理或者遙控處理,在設(shè)置密碼時(shí)一定要處于本機(jī)處理狀態(tài)下,而開(kāi)鎖則可以選擇遙控開(kāi)鎖也可以選擇本機(jī)開(kāi)鎖,當(dāng)此按鍵按下時(shí),紅燈亮表示選擇了本機(jī)處理,此時(shí)可以設(shè)置密碼,修改密碼,也可以本機(jī)開(kāi)鎖,而不能遙控開(kāi)鎖;當(dāng)此開(kāi)關(guān)開(kāi)沒(méi)按下時(shí),紅燈滅選擇遙控開(kāi)鎖,此時(shí)可以通過(guò)遙控器輸入密碼進(jìn)行開(kāi)鎖,在遙控開(kāi)鎖時(shí)不能進(jìn)行本機(jī)開(kāi)鎖以及設(shè)置密碼。

            3 系統(tǒng)軟件設(shè)計(jì)

            本系統(tǒng)有遙控處理和本機(jī)處理兩種工作狀態(tài),兩種工作狀態(tài)相互獨(dú)立。通過(guò)自鎖開(kāi)關(guān)K可以選擇當(dāng)前工作狀態(tài),當(dāng)K閉合時(shí)選擇本機(jī)處理,斷開(kāi)時(shí)選擇遙控處理。遙控處理部分只有開(kāi)鎖功能,所以設(shè)計(jì)相對(duì)簡(jiǎn)單,而本機(jī)處理部分可以實(shí)現(xiàn)開(kāi)鎖、設(shè)置和修改密碼等所有的功能。

            要完成本系統(tǒng)功能,首先要需要解決對(duì)紅外信號(hào)的譯碼問(wèn)題,并在存儲(chǔ)式示波儀上觀察其具體波形,這就要要求了解其編碼規(guī)則。一般的編碼發(fā)射的一幀碼含有一個(gè)引導(dǎo)碼,用戶碼和鍵數(shù)據(jù)碼。引導(dǎo)碼由一個(gè)較長(zhǎng)的載波波形和一段關(guān)斷時(shí)間構(gòu)成,它作為隨后發(fā)射的碼的引導(dǎo)。用戶碼和鍵數(shù)據(jù)碼是由邏輯“0”和邏輯“1”組成的具有規(guī)定長(zhǎng)度的字符串。

          邏輯“0”和邏輯“1”是用高低電平的不同組合來(lái)表示的,那么可以用單片機(jī)的兩個(gè)定時(shí)計(jì)數(shù)器,對(duì)其高低電平進(jìn)行計(jì)數(shù),具體是這樣的:當(dāng)單片機(jī)檢測(cè)到第一個(gè)低電平,則定時(shí)計(jì)數(shù)器T0立即開(kāi)始計(jì)數(shù),等到檢測(cè)到高電平出現(xiàn),T0停止計(jì)數(shù),T1又立即開(kāi)始計(jì)數(shù),在T1計(jì)數(shù)的同時(shí),對(duì)T0的計(jì)數(shù)保存,再次出現(xiàn)低電平,T1停止計(jì)數(shù),T0又開(kāi)始計(jì)數(shù),在T0計(jì)數(shù)的同時(shí)保存T1的計(jì)數(shù),這樣就有了一組低和高的組合,通過(guò)判斷這個(gè)組合屬于哪個(gè)范圍即可譯碼“0”或者“1”,如此循環(huán),直到譯出所有的位。這樣我們就可以根據(jù)譯碼所得的值命令單片機(jī)系統(tǒng)去完成相應(yīng)的操作。要注意的是:只有鍵數(shù)據(jù)碼參與解碼,客戶碼是事先(由某公司或個(gè)人)規(guī)定好了的。

            軟件部分的設(shè)計(jì)基于匯編語(yǔ)言,采用模塊化設(shè)計(jì)思想。以主程序?yàn)楹诵脑O(shè)置了很多功能模塊子程序,是大量的功能在子程序中實(shí)現(xiàn)的主流程,如圖5所示?!?/P>

            紅外遙控密碼鎖的設(shè)計(jì)與實(shí)現(xiàn)

              圖5 主流程圖

            軟件工作流程包括6個(gè)部分:系統(tǒng)的初始化、AT24C04的讀寫操作、校對(duì)開(kāi)鎖、出錯(cuò)報(bào)警處理、對(duì)接收的信號(hào)進(jìn)行譯碼。初始化主要包括: MAX7219芯片、中斷和定時(shí)器的初始化,以及系統(tǒng)參數(shù)等的初始化;對(duì)AT24C04的讀寫操作主要完成對(duì)原先密碼進(jìn)行更改或相關(guān)設(shè)置的目的,然后將更新后的密碼保存到其中。校對(duì)開(kāi)鎖是要對(duì)輸入的密碼和保存在存儲(chǔ)器中的密碼相比較,相同著通過(guò),否則要進(jìn)入出錯(cuò)報(bào)警階段。出錯(cuò)報(bào)警主要處理輸入的密碼和保存在AT24C04中密碼不同時(shí)要進(jìn)行報(bào)警1秒鐘,如果報(bào)警后再次輸入密碼后再次報(bào)警達(dá)到3次,即3次都輸入的是錯(cuò)誤密碼,那么系統(tǒng)將長(zhǎng)時(shí)間報(bào)警并自鎖一個(gè)小時(shí)。譯碼部分主要完成在遙控處理狀態(tài)下對(duì)遙控器所發(fā)出的信號(hào)進(jìn)行解碼,以得到相應(yīng)到完成相應(yīng)功能的碼值。


            4 結(jié)論

            本文的創(chuàng)新點(diǎn)在于本系統(tǒng)除了具有傳統(tǒng)的固定鍵盤式電子密碼鎖系統(tǒng)的功能外,也就是將操作鍵盤固定在鎖具的面板上,還增加了用遙控遠(yuǎn)端控制的功能,因此給人們帶來(lái)很多便利,這一點(diǎn)也正是作者開(kāi)發(fā)和設(shè)計(jì)此系統(tǒng)的根本原因。在本系統(tǒng)中,與以往的利用74LS164芯片驅(qū)動(dòng)數(shù)碼管的顯示不同,在本系統(tǒng)中采用了更加強(qiáng)大的多功能串行LED顯示驅(qū)動(dòng)器MAX7219來(lái)實(shí)現(xiàn)8位穩(wěn)定的靜態(tài)顯示,只需要單片機(jī)的三個(gè)引腳即可,可以更加方便地使用單片機(jī)的串口送出顯示數(shù)據(jù),并且其占用的時(shí)間少,方便編程及對(duì)信號(hào)的檢測(cè),與此同時(shí)本系統(tǒng)所設(shè)計(jì)的電源部分和解碼譯碼部分經(jīng)過(guò)反復(fù)的測(cè)試,證明了電路有極高的穩(wěn)定性和譯碼準(zhǔn)確性、高效性。

          蜂鳴器相關(guān)文章:蜂鳴器原理


          關(guān)鍵詞: AT89C51RC 紅外遙控密碼鎖

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();