版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、畢 業(yè) 設(shè) 計(jì)(論 文)論文題目:基于單片機(jī)紅外遙控防盜密碼鎖的設(shè)計(jì)摘 要本文主要是圍繞紅外線遙控防盜密碼鎖控制系統(tǒng)的相關(guān)的理論和實(shí)踐應(yīng)用進(jìn)行了研究。本文主要包括以下容:根據(jù)項(xiàng)目要求提出了以單片機(jī)為中央處理器,短距離無(wú)線遙控技術(shù)和電子密碼鎖技術(shù)相結(jié)合的系統(tǒng)解決方案,給出了硬件設(shè)計(jì)電路和軟件結(jié)構(gòu),詳細(xì)敘述了系統(tǒng)硬件線路的設(shè)計(jì)要點(diǎn)和結(jié)構(gòu),以與軟件的設(shè)計(jì)要點(diǎn),同時(shí)給出了各個(gè)重要子程序的流程圖。文中提出了一種用4個(gè)數(shù)據(jù)位編碼解碼芯片來(lái)完成12個(gè)數(shù)據(jù)傳送的設(shè)計(jì)方法,給出了該設(shè)計(jì)方法詳細(xì)的原理說(shuō)明和具體的設(shè)計(jì)電路。同時(shí)文中提出了一種獨(dú)特的硬件復(fù)位電路,給出了詳細(xì)的系統(tǒng)抗干擾措施和系統(tǒng)節(jié)能措施。文中設(shè)計(jì)的電
2、路和控制方法適用于一般的單片機(jī)系統(tǒng)設(shè)計(jì),硬件和軟件也有一定的實(shí)用性和通用性。關(guān)鍵詞:密碼鎖;單片機(jī);無(wú)線遙控。AbstractThis paper is on the infrared remote control system security password lock the relevant theoretical and practical application of the researchThe artilce principally includes next contents.The article describle a solution project in which
3、 the microcontroller is CPU and the remote technology is complex with the technology of electronic code lock. The hardware structure and software design of system is explained. The article describle the pith of design and structure of hardware and software in detail and the flowchart of important su
4、broutine is shown.A design way by which the remote control encoder and decoderwith four data pins can transmit twelve datas is given in the artcle. Thedetailed principle and specific circuit of the design way is shown. Aindividual hardware reset circuit is given in the artcle. The detailedmethods of
5、 resistance to intrusions and economy of power are shown. Thedesigned circuit and control mothod in the artcle suit commonly otherdesign of microprocessor system. The hardware and software is practicable.Keywords:Passwordlock,Microcontroller,Remotecontrol.目 錄摘要IAbstractII1 緒論11.1 序言11.2 密碼鎖的發(fā)展現(xiàn)狀11.3
6、 市場(chǎng)前景42 系統(tǒng)設(shè)計(jì)52.1 設(shè)計(jì)理論分析52.1.1 紅外通信基本原理52.1.2 紅外通信標(biāo)準(zhǔn)72.1.3 紅外線遙控原理82.2 總體方案的設(shè)計(jì)92.2.1 總體設(shè)計(jì)92.2.2 主要模塊設(shè)計(jì)93 系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn)123.1 硬件結(jié)構(gòu)圖123.2 遙控發(fā)射電路設(shè)計(jì)133.3 本機(jī)鍵開鎖部分143.4 電源部分設(shè)計(jì)153.5 編碼解碼電路163.6 密碼存儲(chǔ)部分的電路設(shè)計(jì)213.7 報(bào)警電路設(shè)計(jì)233.8 本機(jī)處理與遙控處理功能選擇234 系統(tǒng)軟件設(shè)計(jì)244.1 應(yīng)用軟件設(shè)計(jì)原則254.2 遙控接收程序254.3 I2C通訊子程序264.4 系統(tǒng)程序284.4.1 遙控密碼系統(tǒng)的操作
7、方法284.4.2實(shí)現(xiàn)上述操作方法的程序流程圖295 技術(shù)難點(diǎn)與解決方案325.1 系統(tǒng)抗干擾措施325.2 系統(tǒng)節(jié)電措施366 系統(tǒng)調(diào)試3761 整體調(diào)試3762 硬件單元電路調(diào)試37621 紅外遙控器(鑰匙)調(diào)試37622 紅外遙控門鎖調(diào)試3863 軟件調(diào)試38631 紅外數(shù)據(jù)接收模塊調(diào)試38632 開鎖記錄模塊下載模塊調(diào)試397 結(jié)論與展望40致42參考文獻(xiàn)43附錄143 / 491 緒論1.1 序言隨著計(jì)算機(jī)的普與和信息技術(shù)的迅猛發(fā)展,人們已不滿足于傳統(tǒng)的居住環(huán)境,對(duì)家庭與住宅小區(qū)提出了更高的要求,智能化被引入家庭與住宅小區(qū),并迅速在世界各地發(fā)展起來(lái)。人們對(duì)居住環(huán)境要求的日見(jiàn)增高,體現(xiàn)
8、在希望住宅不僅更便利、舒適而且更安全。電子技術(shù)的飛速發(fā)展,給古老的鎖具生產(chǎn)帶來(lái)了巨大的變革,現(xiàn)代的電子技術(shù)與機(jī)械技術(shù)相結(jié)合,產(chǎn)生了一大批如聲控鎖、磁控鎖、密碼鎖、遙控鎖,指紋鎖等先進(jìn)的鎖具。目前國(guó)外密碼鎖系統(tǒng)的主要方向的發(fā)展是:接觸式密碼鎖系統(tǒng),非接觸式密碼鎖系統(tǒng),智能識(shí)別密碼鎖系統(tǒng),但是他們都相應(yīng)的存在著不同的缺點(diǎn)。例如:接觸式密碼鎖系統(tǒng)成本較低,體積小,卡片本身無(wú)須電源,但使用不太方便,而且有接觸磨損。相比之下,紅外遙控密碼鎖系統(tǒng)的成本與接觸式密碼鎖系統(tǒng)相當(dāng),而且可以進(jìn)行近距離遙控,使用十分方便。而且它已經(jīng)與PC機(jī)的數(shù)據(jù)庫(kù)相結(jié)合,可以組成一套酒店房間的門禁管理系統(tǒng)。由于紅外遙控具有許多優(yōu)點(diǎn)
9、,例如紅外線發(fā)射裝置采用紅外發(fā)光二極管,遙控發(fā)射器易于小型化且價(jià)格低廉;采用數(shù)字信號(hào)編碼和二次調(diào)制方式,不僅可以實(shí)現(xiàn)多路信息的控制,增加遙控功能,提高信號(hào)傳輸?shù)目垢蓴_性,減少誤動(dòng)作,而且功率消耗低;紅外線不會(huì)向室外泄露,不會(huì)產(chǎn)生信號(hào)串?dāng)_;反應(yīng)速度快、傳輸效率高、工作穩(wěn)定可靠等。工業(yè)設(shè)備中,在高壓、輻射、有毒氣體、粉塵等環(huán)境下,采用紅外線遙控不僅完全可靠而且能有效地隔離電氣干擾。所以紅外線遙控是目前使用最廣泛的一種通信和遙控手段。在本設(shè)計(jì)中,紅外遙控密碼鎖和PC機(jī)、數(shù)據(jù)庫(kù)相結(jié)合,能夠?qū)崿F(xiàn)適時(shí)的、強(qiáng)大的管理,使得整個(gè)紅外遙控系統(tǒng)得到更好的完善。1.2 密碼鎖的發(fā)展現(xiàn)狀1 普通密碼鎖日常生活中,鎖具
10、被廣泛使用,鎖具的發(fā)展大致可分為五個(gè)階段:(1)古代的木質(zhì)鎖;(2)古代的機(jī)械鎖;(3)近代的機(jī)械鎖;(4)普通的電子密碼鎖、磁片鎖、EP卡鎖;(5)未來(lái)的家用電子鎖、遙控電子鎖、以與用于特定場(chǎng)合的安全密碼鎖。目前最常用的鎖是五十年代意大利人設(shè)計(jì)的機(jī)械鎖,這種鎖結(jié)構(gòu)簡(jiǎn)單、使用方便、價(jià)格便宜,但在使用中暴露了很多缺點(diǎn):(1)機(jī)械鎖是靠金屬制成的,通過(guò)鑰匙上的不同齒形與鎖芯的配合來(lái)工作的,據(jù)統(tǒng)計(jì)每四千把鎖中就有兩把鎖的鑰匙齒牙一樣或類似,安全性較低;(2)鑰匙一旦丟失,無(wú)論誰(shuí)撿到鑰匙都可將門打開;(3)機(jī)械鎖的材料多為黃銅,質(zhì)地較軟,容易損壞。密碼鎖采用密碼代替鑰匙,省去了佩帶鑰匙的煩惱,也從根本
11、上解決了普通門鎖性差的缺點(diǎn),比如采用五位密碼,則密碼組合可高達(dá)105 個(gè)。密碼鎖根據(jù)設(shè)計(jì)、制作原理的差異,可分為機(jī)械密碼鎖、電磁產(chǎn)卡片式密碼鎖、指紋密碼鎖、電子密碼鎖等類型。2 機(jī)械密碼鎖該型鎖將解鎖密碼以機(jī)械裝定的形式存儲(chǔ)在裝置的鑒別機(jī)構(gòu)上,在裝置的外圍設(shè)立密碼操作鍵。密碼的輸入,產(chǎn)生相應(yīng)的鑒別動(dòng)作,即正確的密碼輸入,鑒別機(jī)構(gòu)產(chǎn)生開鎖動(dòng)作;錯(cuò)誤的密碼輸入,鑒別機(jī)構(gòu)的部件將發(fā)生錯(cuò)位或不做出響應(yīng)。機(jī)械密碼鎖采用機(jī)械加工(如精密機(jī)械加工/微細(xì)加工)制作,皮實(shí)、耐用,電磁干擾、外界的異常信號(hào)很難啟動(dòng)鑒別機(jī)構(gòu)。但機(jī)械密碼鎖通常包含多個(gè)較復(fù)雜的機(jī)、電功能組件,裝置微小型化需借助先進(jìn)的制造技術(shù)與裝配工藝,
12、制造周期長(zhǎng)、成本高,機(jī)電接口與測(cè)試也有一定難度。3 電磁/卡片式密碼鎖該型鎖類似于機(jī)械鎖,利用光電藕8合或電磁感應(yīng)的原理,將密鑰信息預(yù)先置于卡片充當(dāng)鑰匙,開鎖時(shí)將卡片插入鎖或近距離感應(yīng)就能將鎖打開。該鎖的優(yōu)點(diǎn)是:成本較低;授權(quán)用戶一人一卡,可聯(lián)微機(jī),有開門記錄。缺點(diǎn)是:卡片設(shè)備有磨損,壽命較短;卡片容易復(fù)制,不易雙向控制:磁卡存儲(chǔ)的信息容易因外界磁場(chǎng)干擾而錯(cuò)亂,以致卡片(鑰匙)無(wú)效。4 指紋密碼鎖該類鎖通過(guò)檢驗(yàn)人員生物特征(如指紋)等方式來(lái)識(shí)別開鎖。管理員利用采樣控制軟件,通過(guò)指紋采集儀采集、保存指紋;識(shí)別軟件依賴指紋庫(kù)識(shí)別開鎖者的身份,通過(guò)外圍設(shè)備顯示、打印和存儲(chǔ)。指紋具有唯一性和終身不變性
13、的特點(diǎn),一直被當(dāng)作身份鑒定的可靠手段,從是否允許非法開啟角度來(lái)說(shuō),安全性極好;但從使用是否方便的角度看,對(duì)安裝環(huán)境和使用者的要求很高(比如虹膜識(shí)別型和面部識(shí)別型),安裝位置與使用者身高之間必須滿足一定的關(guān)系;同一個(gè)人,在指紋劃傷,眼睛紅腫充血,或任何被用于開鎖的識(shí)別部位有損傷的情況下,可能產(chǎn)生錯(cuò)誤識(shí)別而無(wú)法開鎖。5 電子密碼鎖到了80年代,在日本產(chǎn)生了最早的電子密碼鎖。隨著日本經(jīng)濟(jì)復(fù),電子行業(yè)的快速發(fā)展,一些利用簡(jiǎn)單的門電路設(shè)計(jì)的密碼鎖出現(xiàn)了。這類電路安全性差,容易破解。到了90年代,美國(guó)、意大利、德國(guó)、日本、加拿大、國(guó)以與我國(guó)的、等地的微電子技術(shù)的進(jìn)步和通信技術(shù)的發(fā)展為密碼鎖提供了技術(shù)上的基
14、礎(chǔ),從而推動(dòng)密碼鎖走向?qū)嶋H應(yīng)用的階段。我國(guó)于90年代初開始對(duì)密碼鎖進(jìn)行初步的探索。到目前為止,在此領(lǐng)域雖已有較大的發(fā)展,采用各種電路進(jìn)行設(shè)計(jì)的比較多,技術(shù)也相當(dāng)先進(jìn),但是,我們必須正視的一個(gè)事實(shí)是,出口產(chǎn)品中高檔產(chǎn)品只占15%-20%,而我國(guó)高檔產(chǎn)品在發(fā)達(dá)國(guó)家也只能算是中檔產(chǎn)品,價(jià)格低是普遍現(xiàn)象。此外,我國(guó)目前的出口產(chǎn)品,與國(guó)外產(chǎn)品相比,無(wú)論是品牌知名度還是產(chǎn)品售價(jià),我國(guó)產(chǎn)品有著非常大的差距。電子技術(shù)發(fā)展至今已達(dá)到相當(dāng)高的水平,電子密碼鎖技術(shù)己十分成熟。家庭、賓館已開始使用電子門,貴重物品、文件的保管也用到了電子密碼鎖,電子密碼鎖控制器在現(xiàn)場(chǎng)與傳感器與執(zhí)行機(jī)構(gòu)相連,進(jìn)行狀態(tài)監(jiān)視和完成控制功能。
15、小型便攜的新型裝置,可廣泛應(yīng)用在各種場(chǎng)合,其結(jié)構(gòu)簡(jiǎn)單、造價(jià)低廉、安全性好。通常電子密碼鎖系統(tǒng)由電路部分和機(jī)械執(zhí)行部分組成。電路部分有利用密碼鎖ASIC(專用集成電路)芯片控制、利用單片機(jī)控制以與邏輯門電路構(gòu)成等多種方式。在現(xiàn)有的電子密碼鎖中,基本上是用戶由鍵盤通過(guò)接口電路將意圖解鎖碼輸入到控制器(主要由CPLD組成)中,控制器將輸入的密碼與電子鎖預(yù)置的開鎖密碼進(jìn)行比較、鑒別,當(dāng)確認(rèn)完全一致時(shí),送出一個(gè)信號(hào)給功率放大器,然后由繼電器帶動(dòng)機(jī)械執(zhí)行部件開鎖。輸入的密碼將被與電子鎖預(yù)置的開鎖密碼進(jìn)行比較。1.3 市場(chǎng)前景目前,市場(chǎng)上比較先進(jìn)的智能鎖有IC卡密碼鎖、射頻卡密碼鎖、紅外遙控密碼鎖、指紋識(shí)別
16、密碼鎖和瞳孔識(shí)別密碼鎖等。IC卡密碼鎖成本低,體積小,卡片本身無(wú)須電源等優(yōu)點(diǎn)占領(lǐng)了一定的市場(chǎng)份額,但是由于有機(jī)械接觸,會(huì)產(chǎn)生接觸磨損,而且使用不太方便,一定程度上限制了它的應(yīng)用;射頻卡密碼鎖是非接觸式密碼鎖,成本也不太高,體積跟IC卡密碼鎖相當(dāng),卡片使用感應(yīng)電源,重量很輕,技術(shù)成熟,受到了廣泛的歡迎,但是與IC卡密碼鎖相比,成本偏高;指紋識(shí)別密碼鎖和瞳孔識(shí)別密碼鎖統(tǒng)可靠性很高性、安全性是目前門禁系統(tǒng)中最高的,但是成本高昂,還沒(méi)進(jìn)入大眾化使用階段紅外遙控密碼鎖系統(tǒng)的成本與接觸式密碼鎖系統(tǒng)相當(dāng),而且可以進(jìn)行近距離遙控,遙控距離遠(yuǎn)大于射頻卡密碼鎖的遙控距離,低耗很低,可以使用普通堿性電池供電,使用十
17、分方便。本設(shè)計(jì)的紅外遙控密碼鎖系統(tǒng)成本低廉,其造價(jià)約100元/每套(每套包含一把鑰匙、一個(gè)鎖體、一個(gè)抄鎖器,不包含PC機(jī)),如經(jīng)優(yōu)化設(shè)計(jì),成本可以進(jìn)一步降低。紅外遙控密碼鎖鎖具有廣闊的市場(chǎng)前景。2 系統(tǒng)設(shè)計(jì)對(duì)紅外遙控進(jìn)行系統(tǒng)設(shè)計(jì),必須先了解一些有關(guān)的原理和標(biāo)準(zhǔn),如:紅外通信基本原理,紅外數(shù)據(jù)協(xié)會(huì)標(biāo)準(zhǔn),紅外線遙控原理等;還要對(duì)設(shè)計(jì)的有一個(gè)比較清楚的方案。2.1 設(shè)計(jì)理論分析2.1.1 紅外通信基本原理紅外遙控是單工的紅外通信方式,本設(shè)計(jì)的紅外遙控采用以通信方式為基礎(chǔ)的紅外遙控,而且本設(shè)計(jì)也使用了紅外通信技術(shù),故著重分析紅外通信的基本原理。紅外通信是利用紅外技術(shù)實(shí)現(xiàn)兩點(diǎn)間的近距離通信和信息轉(zhuǎn)發(fā)。它
18、一般由紅外發(fā)射和接收系統(tǒng)兩部分組成。發(fā)射系統(tǒng)對(duì)一個(gè)紅外輻射源進(jìn)行調(diào)制后發(fā)射紅外信號(hào),而接收系統(tǒng)用光學(xué)裝置和紅外探測(cè)器進(jìn)行接收,就構(gòu)成紅外通信系統(tǒng)。紅外線是波長(zhǎng)在750nm至1mm之間的電磁波,它的頻率高于微波而低于可見(jiàn)光,是一種人眼看不到的光線。紅外通信一般采用紅外波段的近紅外線,波長(zhǎng)在0.75um至25um之間。紅外數(shù)據(jù)協(xié)會(huì)(IRDA)成立后,為了保證不同廠商的紅外產(chǎn)品能夠獲得最佳的通信效果,紅外通信協(xié)議將紅外數(shù)據(jù)通信所采用的光波波長(zhǎng)的圍限定在850至900nm之。紅外通信的基本原理是發(fā)送端將基帶二進(jìn)制信號(hào)調(diào)制為一系列的脈沖串信號(hào)(載波信號(hào)),通過(guò)紅外發(fā)射管發(fā)射紅外信號(hào)。常用的有通過(guò)脈沖寬度
19、來(lái)實(shí)現(xiàn)信號(hào)調(diào)制的脈寬調(diào)制(PWM)和通過(guò)脈沖串之間的時(shí)間間隔來(lái)實(shí)現(xiàn)信號(hào)調(diào)制的脈時(shí)調(diào)制(PPM)兩種方法。脈時(shí)調(diào)制(PPM)是紅外數(shù)據(jù)協(xié)會(huì)(IRDA)和國(guó)際電子電工委員會(huì)(IEEE)都推薦的調(diào)制方式,本設(shè)計(jì)采用脈時(shí)調(diào)制方法,即用兩個(gè)脈沖串之間的時(shí)間間隔來(lái)表示二進(jìn)制信息,數(shù)據(jù)比特的傳送仿照不帶奇偶校驗(yàn)的RS232通信,首先產(chǎn)生一個(gè)同步頭,然后接著8位數(shù)據(jù)比特,如圖2-1所示。載波信號(hào)的頻率=38kHz,載波周期T=26.32us載波信號(hào)的頻率=38kHz,載波周期T=26.32us,本設(shè)計(jì)使用單片機(jī)軟件產(chǎn)生載波,取T=26us,脈沖寬度t1=10T=260us,二進(jìn)制數(shù)0的脈沖串周期t2=500u
20、s,二進(jìn)制數(shù)1的脈沖串周期t3=1000us。-圖2-1 PPM調(diào)制波形圖-t1t1t2t3二進(jìn)制0二進(jìn)制1-普通的紅外遙控采用面向指令的幀結(jié)構(gòu),數(shù)據(jù)幀由同步碼,地址碼和指令碼組成,指令碼長(zhǎng)度多為816個(gè)比特,傳送多字節(jié)遙控協(xié)議時(shí)效率偏低,而增加指令碼的長(zhǎng)度不利于接收器同步,為此本設(shè)計(jì)選用一種面向字節(jié)的幀結(jié)構(gòu),采用類似于異步串行通信的幀結(jié)構(gòu),每幀由一個(gè)起始位(二進(jìn)制數(shù)0)、8個(gè)數(shù)據(jù)位和2個(gè)停止位(二進(jìn)制數(shù)1)構(gòu)成,如圖2-2所示。每幀傳送1個(gè)字節(jié)的數(shù)據(jù),幀與幀間隔大于2ms,幀結(jié)構(gòu)不含地址信息,尋圖2-2 數(shù)據(jù)幀結(jié)構(gòu)示意圖數(shù)據(jù)帖停止位數(shù)據(jù)位(8位)帖間隔起始位停止位址問(wèn)題由高層協(xié)議解決。由于紅
21、外光存在反射,因此,紅外通信應(yīng)采用異步半雙在全雙工的方式下發(fā)送的信號(hào)也可能會(huì)被本身接收工方式,即通信的某一方發(fā)送和接收是交替進(jìn)行的。2.1.2紅外通信標(biāo)準(zhǔn)1993年,由HP、COMPAQ、INTEL等二十多家公司發(fā)起成立了紅外數(shù)據(jù)協(xié)會(huì)(Infrared Data Association,簡(jiǎn)稱IRDA),1993年6月28日,來(lái)自50多家企業(yè)的120多位代表出席了紅外數(shù)據(jù)協(xié)會(huì)的首次會(huì)議,并就建立統(tǒng)一的紅外通訊標(biāo)準(zhǔn)問(wèn)題達(dá)成了一致。IRDA1.0簡(jiǎn)稱為SIR(Serial InfraRed),它是基于HP-SIR開發(fā)出來(lái)的一種異步的、半雙工的紅外通訊方式。SIR以系統(tǒng)的異步通訊收發(fā)器(UART)為依
22、托,通過(guò)對(duì)串行數(shù)據(jù)脈沖的波形壓縮和對(duì)所接收的光信號(hào)電脈沖的波形擴(kuò)展這一編碼解碼過(guò)程(3/16 EnDec)實(shí)現(xiàn)紅外數(shù)據(jù)傳輸。由于受到UART通訊速率的限制,SIR的最高通訊速率只有115.2kbps,也就是大家熟知的電腦串行端口的最高速率。IRDA標(biāo)準(zhǔn)包括三個(gè)基本的規(guī)和協(xié)議:物理層規(guī)(Physical Layer Link Specification)建立協(xié)議(ink Access Protocol:IRLAP)管理協(xié)議(Link Management Protocol:IRLMP)。HID deviceApplicationHome ApplianceApplicationFuture de
23、viceApplicationHA LLCFuture device LLCHID-IrBus LLCIrBus MACIrBus PHY1st step2nd stepFuture圖2-3 IRBUS紅外線通信協(xié)議層物理層規(guī)制定了紅外通信硬件設(shè)計(jì)上的目標(biāo)和要求,IRLAP和IRLMP為兩個(gè)軟件層,負(fù)責(zé)對(duì)進(jìn)行設(shè)置、管理和維護(hù)。在IRLAP和IRLMP基礎(chǔ)上,針對(duì)一些特定的紅外通信應(yīng)用領(lǐng)域,IRDA還陸續(xù)發(fā)布了一些更高級(jí)別的紅外協(xié)議,如TINYTP、IROBEX、IRCOMM、IRLAN和IRBUS等(見(jiàn)圖2-3)。2.1.3 紅外線遙控原理紅處線發(fā)射/接收控制電路均采用8051單片機(jī)來(lái)實(shí)現(xiàn),電
24、路簡(jiǎn)單,輸出控制方式可選擇,實(shí)用性強(qiáng)。體工作過(guò)程如下:發(fā)射時(shí):如圖2-4,首先,將從串行發(fā)射口P3.1送出的數(shù)據(jù)反饋到P1.1口時(shí)行部調(diào)制,再?gòu)腜1.2口送出,再經(jīng)過(guò)紅外發(fā)射二極管發(fā)射出去,發(fā)射距離為10m。接收時(shí):如圖2-5,采用與發(fā)射部分配套的紅外接收頭,將發(fā)射出的數(shù)據(jù)接收后送到串行口P3.0中,再由系統(tǒng)進(jìn)行確認(rèn)接收數(shù)據(jù)是否與發(fā)送數(shù)據(jù)是否相符,相符則開鎖,以發(fā)光二極管D2亮來(lái)表示,不相符則放棄,以發(fā)光二極管滅來(lái)表示。2.2 總體方案的設(shè)計(jì)2.2.1 總體設(shè)計(jì)根據(jù)設(shè)計(jì)任務(wù)要求,本設(shè)計(jì)的系統(tǒng)結(jié)構(gòu)框圖如圖2-6紅外接收頭8051CPU紅外發(fā)射器鍵盤復(fù)位報(bào)警器晶振電磁鎖圖2-6系統(tǒng)結(jié)構(gòu)框圖2.2.
25、2 主要模塊設(shè)計(jì)系統(tǒng)主要由發(fā)射塊和接收模塊兩部分組成。其中發(fā)射模塊是由MCS-51單片機(jī)、載波發(fā)生器、調(diào)制放大電路以與紅外發(fā)射電路組成;接收模塊則由紅外接收電路、MCS-51單片機(jī)、繼電器和機(jī)械鎖構(gòu)成。如圖2-7所示。單片機(jī)紅外接收紅外發(fā)射調(diào)制發(fā)射單片機(jī)機(jī)械鎖繼電器載波圖2-7 紅外遙控密碼鎖的組成框圖為了盡可能地減小系統(tǒng)的體積,該系統(tǒng)中使用的單片機(jī)均為8051。發(fā)射模塊中使用的載波發(fā)生器是由4060分頻器和晶振組成,紅外發(fā)射電路則主要由紅外線發(fā)射二極管所組成;接收模塊中的紅外接收部分是一種專用芯片0038B。0038B的管腳分布如圖2-8所示,2腳、3腳分別為地電源和地,1腳是解調(diào)信號(hào)輸出,
26、其電平與TTL兼容。0038B系列特性如下:頻率圍:32.75kHz、36.7kHz、38kHz、40kHz電源電壓圍:4.7V5.3V工作電流:3mA 最大遙控距離:>8m圖2-8 0038B引腳圖工作溫度:-10+600038B是黑色環(huán)氧聚光透鏡,濾除了可見(jiàn)光的干擾。含紅外線PIN接收管、選頻放大器和解調(diào)器。當(dāng)紅外線發(fā)射器發(fā)出的信號(hào)經(jīng)空間傳送到0038B時(shí),它部的PIN紅外線接收管將紅外線轉(zhuǎn)換為電信號(hào),該信號(hào)經(jīng)選頻放大、解調(diào)后由1腳輸出與TTL電平兼容的電信號(hào),該信號(hào)可以直接送入微處理器進(jìn)行處理。0038B的輸出波形如圖2-9所示。當(dāng)接收到頻帶的紅外信號(hào)時(shí),0038B接收器會(huì)輸出低電
27、平,否則數(shù)據(jù)高電平,從而“將時(shí)斷時(shí)續(xù)”的紅外信號(hào)解調(diào)成原來(lái)的連續(xù)方波信號(hào)。-低電平高電平5V0V已調(diào)制紅外信號(hào) 0038B輸出信號(hào)圖2-9 0038B的輸出波形0038B的優(yōu)點(diǎn)是穩(wěn)定性好,抗干擾能力很強(qiáng),外圍電路非常簡(jiǎn)潔,成本又不高,適用于各種紅外遙控和紅外數(shù)據(jù)傳輸,是替代其它紅外接收放大器的理想元件。唯一的缺點(diǎn)是電源供電需5V左右,用兩節(jié)電池供電。該芯片部集成了前置放大、限幅放大、帶通濾波、檢波、積分,與施密特比較器等單元電路,輸出端輸出標(biāo)準(zhǔn)的TTL電平信號(hào)。同時(shí),0038B環(huán)氧樹脂封裝提供一個(gè)特殊的紅外濾光器,可防止自然光的干擾,具有極好的抗自然光干擾的性能,可防止無(wú)用脈沖輸出。該系統(tǒng)的工
28、作過(guò)程是:首先由發(fā)射模塊中的單片機(jī)在外部命令的控制下按一定的時(shí)間間隔連續(xù)產(chǎn)生20次同一數(shù)碼。然后該信號(hào)經(jīng)過(guò)調(diào)制電路被調(diào)制到載波信號(hào)上,調(diào)制信號(hào)經(jīng)過(guò)放大后驅(qū)動(dòng)紅外線發(fā)射二極管發(fā)射紅外線信號(hào)。接收端的紅外接收裝置0038B對(duì)發(fā)射過(guò)來(lái)的紅外調(diào)制信號(hào)進(jìn)行前置放大、限幅濾波、檢波等一系列過(guò)程后逐一解調(diào)出原數(shù)碼指令信號(hào),再將解調(diào)出的信號(hào)與發(fā)射模塊中的原數(shù)碼指令信號(hào)相比較。如果是15次以上比較果是一樣的,則認(rèn)為接收成功,并用該數(shù)碼信號(hào)驅(qū)動(dòng)繼電器工作、最后由繼電器控制密碼鎖的閉合和開啟。3 系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn)3.1 硬件結(jié)構(gòu)圖系統(tǒng)以單片機(jī)8051為核心。系統(tǒng)結(jié)構(gòu)框圖如圖3-1所示。本系統(tǒng)的功能設(shè)計(jì)目標(biāo)應(yīng)該包括
29、以下幾個(gè)方面:紅外發(fā)射功能模塊,紅外線接收轉(zhuǎn)換模塊、單片機(jī)模塊、蜂鳴器報(bào)警功能模塊、密碼存儲(chǔ)功能模塊,開鎖功能模塊等。下面詳細(xì)介紹一下各單元的硬件電路和實(shí)現(xiàn)的功能。8051單片機(jī)系統(tǒng)報(bào)警模塊AT24C04電磁鎖紅外接收紅外發(fā)射模塊圖3-1紅外遙控密碼鎖硬件結(jié)構(gòu)圖3.2 遙控發(fā)射電路設(shè)計(jì)遙控發(fā)射電路利用通用的紅外發(fā)射管,如圖2-5所示;從圖中可以看出,遙控發(fā)射裝置是利用8051單片機(jī)作為控制部分,控制圖中的發(fā)光二極光發(fā)射出紅外線,從而使本機(jī)中的紅外接收部分感應(yīng),然后解碼,對(duì)照接收到的信號(hào)是否正確,如果正確就正常開鎖,完成遙控開鎖任務(wù)。遙控開鎖部分的具體操作如下:圖2-4 遙控發(fā)射電路當(dāng)選擇遙控開
30、鎖時(shí),本機(jī)鍵便會(huì)被封鎖.這時(shí),用戶手執(zhí)遙控器按下圖2-4 805上的P1.0口上的按鍵時(shí),便有數(shù)字從8051的P1.2口發(fā)出,發(fā)送的過(guò)程如下:先將從P3.0送出5FH,然后將5FH反饋到P1.1口進(jìn)行部調(diào)制,調(diào)制的規(guī)則是“0”電平調(diào)制,“1”電平不調(diào)制,最后將調(diào)好的數(shù)據(jù)從P1.2口通過(guò)紅外發(fā)光二極管以波長(zhǎng)為940mm的紅外光發(fā)出紅外遙控信號(hào)。然后,在本機(jī)控制電路中的8051的P3.0口接有與紅外發(fā)光二極管配套的接收頭,將接收的光信號(hào)轉(zhuǎn)換成電信號(hào)數(shù)據(jù)。最后,通過(guò)系統(tǒng)與部原先設(shè)置的數(shù)據(jù)進(jìn)行比較確認(rèn),如果一致便可開鎖,如果不一致放棄開鎖。3.3 本機(jī)鍵開鎖部分本機(jī)鍵開鎖電路如圖2-5所示,8051作
31、為本電路的核心,P0口與P1.0,P1.1,P1.2外接本機(jī)鍵盤,P3.0口外接愛(ài)控接收頭,P1.3口外接報(bào)警信號(hào)放大器,用來(lái)放大報(bào)警信號(hào),驅(qū)動(dòng)揚(yáng)聲器,P1.7口外接開鎖電磁驅(qū)動(dòng)電路,P1.5外接密碼選擇鍵,EPROM存有兩密碼,P2.0口用發(fā)光二極管顯示按鍵是否按下,本電路由遙控發(fā)射擊隊(duì)器、接收器、鍵盤組成,本機(jī)采用了10個(gè)按鍵,作為密碼輸入鍵,同時(shí)也采用了遙控器開鎖。有以下功能:1.當(dāng)沒(méi)有接收到遙控信號(hào)時(shí),這時(shí)由鍵盤輸入密碼,當(dāng)5位有效密碼輸入正確時(shí)按“#”號(hào)確認(rèn),P1.7口輸出高電平使電磁鎖動(dòng)作,完成開鎖,同時(shí),電路進(jìn)入延時(shí)狀態(tài),延時(shí)5秒鐘后,電路將自動(dòng)恢復(fù)到初始閉鎖狀態(tài)。2.當(dāng)5位有效
32、密碼輸入正確,但沒(méi)有按”#”號(hào)鍵確認(rèn)時(shí),這時(shí)電路將自動(dòng)放棄,恢復(fù)到初始和閉鎖狀態(tài)。3.在輸入5位有效密碼時(shí),必須按照先后序輸入,如順序錯(cuò)誤或密碼不對(duì)時(shí),這時(shí)若不按”#”號(hào)確認(rèn),將無(wú)法開鎖,并同時(shí)發(fā)出5秒鐘的報(bào)警信號(hào),用以提醒用戶。4.若連續(xù)3次輸入錯(cuò)誤,系統(tǒng)會(huì)長(zhǎng)時(shí)間報(bào)警,這時(shí)必須按復(fù)位鍵恢復(fù)到初始化狀態(tài)。5.輸入密碼時(shí),首位密碼正確輸入后,電路將開始自動(dòng)計(jì)時(shí),每位密碼數(shù)之間的輸入間隔應(yīng)在3秒。否則將輸入超時(shí)處理,系統(tǒng)自動(dòng)放棄,恢復(fù)到初始狀態(tài)。圖2-5本機(jī)鍵開鎖電路3.4 電源部分設(shè)計(jì)本系統(tǒng)的電源部分使用LM7805芯片進(jìn)行穩(wěn)壓后提供單片機(jī)5V的電壓。其電源部分電路的設(shè)計(jì)如圖3-2所示。該電源部
33、分電路,使用四個(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)定性也比較好。圖3-2 紅外遙控密碼電源部分的電路原理圖3.5 編碼解碼電路PT2262和PT2272是普城公司生產(chǎn)的一對(duì)COMS專用編碼解碼芯片。本系統(tǒng)采用這對(duì)芯片來(lái)實(shí)現(xiàn)鍵值的編碼與解碼。PT2262和PT2272的振蕩頻率都是通過(guò)一個(gè)外接電阻進(jìn)行調(diào)節(jié)。3.5.1 PT2262
34、介紹PT2262最大可以具有12個(gè)地址位,它的數(shù)據(jù)位最大可以有6個(gè)。每一個(gè)地址位可以有接地,接電源,懸空三種狀態(tài)。每個(gè)數(shù)據(jù)位可以有接地,接高兩種狀態(tài)。PT2262就是將地址位和數(shù)據(jù)位的狀態(tài)進(jìn)行編碼然后輸出相應(yīng)的編碼信號(hào)。PT2262能夠滿足兩種工作方式:射頻工作方式(RF)和紅外線工作方式(IR)。由于在整個(gè)系統(tǒng)的遙控方式上我選用的射頻的工作方式,下面詳細(xì)介紹PT2262的射頻工作方式。編碼芯片PT2262發(fā)出的編碼信號(hào)由:地址碼,數(shù)據(jù)碼,同步碼組成一個(gè)完整的碼字。位碼是編碼波形的基本單位,可以分為AD位(地址,數(shù)據(jù))和SYNC位(同步)。根據(jù)相應(yīng)端子電平的低,高,或者懸空狀態(tài),AD位可分別置
35、為“0”,“l(fā)”或“f”,每位波形由兩個(gè)脈沖周期構(gòu)成,每個(gè)脈沖周期含16個(gè)時(shí)鐘周期。PT2262芯片引腳如圖33A0A1A21A3A4A5A6/D5A7/D4VssVccDOUTOSC2OSC1T1A11/D0A10/D1A9/D2A8/D3圖3-3 PT2262引腳說(shuō)明:AO-A5:三態(tài)地址位;A6/D5-All/DO:三態(tài)地;址位或二態(tài)數(shù)據(jù)位;T1:發(fā)射使能位;OSC1-OSC2:部振蕩外接位;DOUT:數(shù)據(jù)輸出位;Vcc:電源正極;Vss:電源負(fù)極。3.5.2 單電阻振蕩器PT2262,PT2272都置的振蕩回路。通過(guò)在OSCI和OSC2端外接一個(gè)振蕩電阻可構(gòu)成一個(gè)精確的振蕩器。為了確保
36、PT2272能正確地對(duì)接收到的波形解碼,要求PT2272的振蕩頻率必須是PT2262的發(fā)射頻率的2.5至8倍。常用的振蕩電阻配對(duì)如3-4表:表3-4 振蕩電阻配對(duì)表PT2262PT22724.7M820k*3.3M80k*1.2M200k*說(shuō)明:*一表示PT2272的電源電壓為5V-15V*一表示PT2272的電源電壓為3V-15V這就意味著當(dāng)PT2272的工作電壓低于5V時(shí),只能選用較小的振蕩電阻值。在本系統(tǒng)中,由于用4節(jié)5號(hào)干電池供電,4節(jié)電池標(biāo)準(zhǔn)電壓只為6V,在系統(tǒng)工作一段時(shí)間后整個(gè)系統(tǒng)的工作電壓就會(huì)低于5V,所以我選用PT2272為200K和PT2262為1.2M的配對(duì),用以保證系統(tǒng)在
37、電壓低于5V時(shí),系統(tǒng)依然能夠工作。3.5.3 PT2272介紹PT2272是與PT2262配對(duì)使用的一塊遙控解碼專用集成電路。采用COMS工藝制造,它最大擁有12位的三狀態(tài)地址管腳,可支持多大531441(即羅)個(gè)地址的編碼。因此極減少了碼的沖突和非法對(duì)編碼進(jìn)行掃描以使匹配的可能性。PT2272芯片引腳如圖3-5:A0A1A21A3A4A5A6A7VssVccVTOSC2OSC1DIND0D1D2D3圖3-5 PT2272-L4引腳說(shuō)明:AO-A7:三態(tài)地址位;DO-D3:三態(tài)地址位或二態(tài)數(shù)據(jù)位;DIN:解碼信號(hào)輸入;OSC1-osc2:部振蕩外接位;VT:有效傳輸確認(rèn);VCC:電源正極;Vs
38、s:電源負(fù)極;由于PT2262必須與解碼芯片PT2272配對(duì)使用,而市場(chǎng)上大量的PT2272都是4個(gè)數(shù)據(jù)位的,所以我們選用4個(gè)數(shù)據(jù)位的設(shè)計(jì)。PT2272的操作流程:圖3-6 PT2272上電工作流程圖上電后PT2272進(jìn)入待機(jī)模式,檢查是否有接收信號(hào),如無(wú)接收信號(hào),仍停留在待機(jī)狀態(tài)。否則在收到信號(hào)后,進(jìn)行接收,碼地址與設(shè)置的碼地址進(jìn)行比較。當(dāng)接收地址與設(shè)置地址相互匹配時(shí),數(shù)據(jù)存于寄存器中。當(dāng)檢查到連續(xù)兩幀的碼地址都匹配,且數(shù)據(jù)都一致時(shí),相應(yīng)的數(shù)據(jù)輸出端有輸出,并且驅(qū)動(dòng)VT輸出。當(dāng)聯(lián)系兩幀的碼地址不匹配時(shí),VT不會(huì)被驅(qū)動(dòng),對(duì)于瞬態(tài)輸出型來(lái)說(shuō),輸出數(shù)據(jù)復(fù)位,而對(duì)鎖存型的輸出,則輸出數(shù)據(jù)維持。3.6
39、 密碼存儲(chǔ)部分的電路設(shè)計(jì)為了保存用戶設(shè)置的密碼,該系統(tǒng)使用AT24C04用來(lái)保存用戶設(shè)置的密碼,電路原理圖如圖3-7所示。單片機(jī)8051的P3.4接AT24C04的SCLK口作為它的串行移位時(shí),8051的P3.5接AT24C04的SDA口作為它的串行數(shù)據(jù)或地址輸入輸出。該電路要注意的是SCL、SDA必須加上一上拉電阻,阻值為10k。圖3-7 AT24C04電路原理圖紅外遙控器(鑰匙)的用戶名(鑰匙身份)和密碼存放在AT24C02中,當(dāng)需要更改或讀取用戶名和密碼時(shí),只需對(duì)AT24C02里的數(shù)據(jù)更改或讀取。AT24C02芯片介紹:(1)在介紹AT24C02前,先介紹一下I2C總線。I2C總線使用兩
40、根信號(hào)線來(lái)進(jìn)行數(shù)據(jù)傳輸,一根是串行數(shù)據(jù)線(SDA),另一根是串行時(shí)鐘線(SCL)。它允許若干兼容器件共享總線。總線上所有器件要依靠SDA發(fā)送的地址信號(hào)尋址,不需要片選線。任何時(shí)刻總線只能由一個(gè)主器件控制,各從器件在總線空閑時(shí)啟動(dòng)數(shù)據(jù)傳送,由I2C總線仲裁來(lái)決定哪個(gè)主器件控制總線。I2C總線數(shù)據(jù)傳輸?shù)淖罡咚俾蕿?00kbps,標(biāo)準(zhǔn)速率為100kbps。SDA與SCL為雙向I/O線,都是開漏極端(輸出1時(shí),為高阻抗?fàn)顟B(tài))。因此I2C總線上的所有設(shè)備的SDA、SCL引腳都要外接上拉電阻。I2C總線的協(xié)議如下:a) 只有在總線非忙時(shí)才被允許進(jìn)行數(shù)據(jù)傳送。b) 在數(shù)據(jù)傳送時(shí),當(dāng)時(shí)鐘線為高電平,數(shù)據(jù)線必須
41、為固定狀態(tài),不允許有跳變。時(shí)鐘線為高電平時(shí),數(shù)據(jù)線的任何電平變化將被當(dāng)作總線的啟動(dòng)或停止條件。(2)AT24C02芯片介紹。AT24C02是美國(guó)ATMEL公司生產(chǎn)的I2C串行E2PROM。它為可用電擦除、可編程只讀存儲(chǔ)器,自定時(shí)寫周期,包括自動(dòng)擦除時(shí)間不超過(guò)10ms,典型時(shí)間為5ms。芯片2.7V至6V的工作電壓,可擦寫100萬(wàn)次,數(shù)據(jù)保存可長(zhǎng)達(dá)100年,提供8腳DIP和SOIC封裝。AT24C02允許在一個(gè)寫周期同時(shí)對(duì)1字節(jié)到1頁(yè)的若干字節(jié)進(jìn)行編程寫入,一頁(yè)的大小取決于芯片寄存器的大小。a.管腳介紹:WP:寫保護(hù)。將該管腳接VCC,E2PROM就實(shí)現(xiàn)寫保護(hù)(只讀)。將該管腳接地或懸空,可以對(duì)
42、器件進(jìn)行讀寫操作。SCL:串行時(shí)鐘腳串行輸入輸出數(shù)據(jù)時(shí),該腳用于輸入時(shí)鐘。SDA:串行數(shù)據(jù)/地址輸入腳雙向串行數(shù)據(jù)/地址腳,用來(lái)輸入輸出數(shù)據(jù)。該腳為射(漏)極開路輸出,需接上拉電阻。A0A1A2:片選或頁(yè)選地址輸入。用于芯片尋址。AT24C02部無(wú)連接。b.器件地址的約定:主器件在發(fā)送啟動(dòng)命令后開始傳送,主器件發(fā)送相應(yīng)的從器件的地址,8位從器件地址的高4位固定為1010。接下來(lái)的3位(見(jiàn)圖3-8)用來(lái)定義存儲(chǔ)器的地址,對(duì)于AT24C02位無(wú)意義。最后一位為讀寫控制位?!?”表示讀操作,“0”表示寫操作。1010XXXR/W圖3-8 AT24C02從器件尋址c.應(yīng)答信號(hào)每次數(shù)據(jù)傳送成功后,接收器
43、件發(fā)送一個(gè)應(yīng)答信號(hào)。當(dāng)?shù)诰艂€(gè)時(shí)鐘信號(hào)產(chǎn)生時(shí),接收器件將SDA下拉為低,通知已經(jīng)接收到8位數(shù)據(jù)。3.7 報(bào)警電路設(shè)計(jì)本系統(tǒng)設(shè)計(jì)時(shí)考慮到防盜而設(shè)計(jì)了報(bào)警電路,由蜂鳴器發(fā)聲進(jìn)行報(bào)警,蜂鳴器接在CPU的引腳P1.3上,通過(guò)PNP型三極管做電流放大,因此可以通過(guò)單片機(jī)控制蜂鳴器的頻率與蜂鳴時(shí)間。當(dāng)輸入錯(cuò)誤的密碼進(jìn)行開鎖時(shí),系統(tǒng)會(huì)報(bào)警,由P1.3口輸出低電平使得PNP型三極管導(dǎo)通,蜂鳴器兩端加電,由蜂鳴器發(fā)出1秒的報(bào)警聲,當(dāng)連續(xù)三次出現(xiàn)密碼錯(cuò)誤時(shí),則系統(tǒng)會(huì)長(zhǎng)時(shí)間報(bào)警,此舉為了防止別人非法試探開鎖。3.8 本機(jī)處理與遙控處理功能選擇本系統(tǒng)設(shè)計(jì)了一個(gè)自鎖按鍵用來(lái)選擇本機(jī)處理或者遙控處理,在設(shè)置密碼時(shí)一定要處于
44、本機(jī)處理狀態(tài)下,而開鎖則可以選擇遙控開鎖也可以選擇本機(jī)開鎖,當(dāng)此按鍵按下時(shí),紅燈亮表示選擇了本機(jī)處理,此時(shí)可以設(shè)置密碼,修改密碼,也可以本機(jī)開鎖,而不能遙控開鎖;當(dāng)此開關(guān)沒(méi)按下時(shí),紅燈滅選擇遙控開鎖,此時(shí)可以通過(guò)遙控器輸入密碼進(jìn)行開鎖,在遙控開鎖時(shí)不能進(jìn)行本機(jī)開鎖以與設(shè)置密碼。4 系統(tǒng)軟件設(shè)計(jì)軟件是整個(gè)控制系統(tǒng)設(shè)計(jì)的核心,它具有充分的靈活性,可以根據(jù)系統(tǒng)的要求而變化。在硬件結(jié)構(gòu)一定的情況下,只要改變軟件就能實(shí)現(xiàn)一些不同的功能。單片機(jī)所具有的智能功能要由軟件來(lái)完成。在本系統(tǒng)中,軟件結(jié)構(gòu)采用模塊化設(shè)計(jì)方法,將遙控接收器所要完成的功能分別編寫和調(diào)試。所有模塊調(diào)試成功以后,將各個(gè)模塊連接構(gòu)成單片機(jī)軟件
45、系統(tǒng)。這樣的設(shè)計(jì)有利于程序代碼的優(yōu)化,而且便于設(shè)計(jì)、調(diào)試和維護(hù)。對(duì)于51系列單片機(jī),現(xiàn)有四種語(yǔ)言支持,即匯編、PL/M,C和BASIC。BASIC通常附在PC機(jī)上,是初學(xué)編程的第一種語(yǔ)言。一個(gè)新變量名定義之后可在程序中作變量使用,非常易學(xué),根據(jù)解釋的行可以找到錯(cuò)誤而不是當(dāng)程序執(zhí)行完才能顯現(xiàn)出來(lái)。BASIC由于逐行解釋自然很慢,每一行必須在執(zhí)行時(shí)轉(zhuǎn)換成機(jī)器代碼,需要花費(fèi)許多時(shí)間不能做到實(shí)時(shí)性。BASIC為簡(jiǎn)化使用變量,所有變量都用浮點(diǎn)值。BASIC是用于要求編程簡(jiǎn)單而對(duì)編程效率和運(yùn)行速度要求不高的場(chǎng)合。當(dāng)前已經(jīng)很少用到此語(yǔ)言了。PL/M是Intel從8080微處理器開始為其系列產(chǎn)品開發(fā)的編程語(yǔ)言
46、。它很像PASCAL,是一種結(jié)構(gòu)化語(yǔ)言,但它使用關(guān)鍵字去定義結(jié)構(gòu)。PL/M編譯器好像匯編器一樣可產(chǎn)生緊湊代碼。PL/M總的來(lái)說(shuō)是高級(jí)匯編語(yǔ)言可詳細(xì)控制著代碼的生成。但對(duì)51系列,PL/M不支持復(fù)雜的算術(shù)運(yùn)算、浮點(diǎn)變量而無(wú)豐富的庫(kù)函數(shù)支持。C語(yǔ)言是一種源于編寫UNIX操作系統(tǒng)的語(yǔ)言,它是一種結(jié)構(gòu)化語(yǔ)言,可產(chǎn)生壓縮代碼。C可以進(jìn)行許多機(jī)器級(jí)函數(shù)控制而不用匯編語(yǔ)言。與匯編相比,有如下優(yōu)點(diǎn):對(duì)單片機(jī)的指令系統(tǒng)不要求了解,僅要求對(duì)51的存儲(chǔ)器結(jié)構(gòu)有初步了解,寄存器分配、不同存儲(chǔ)器的尋址與數(shù)據(jù)類型等細(xì)節(jié)可由編譯器管理程序有規(guī)的結(jié)構(gòu),可分為不同的函數(shù)。這種方式可使程序結(jié)構(gòu)化將可變的選擇與特殊操作組合在一起的
47、能力,改善了程序的可讀性編程與程序調(diào)試時(shí)間顯著縮短,從而提高效率。提供的庫(kù)包含許多標(biāo)準(zhǔn)子程序,具有較強(qiáng)的數(shù)據(jù)處理能將己編好程序可容易的植入新程序,因?yàn)樗哂蟹奖愕哪K化編程技術(shù)C語(yǔ)言作為一種非常方便的語(yǔ)言而得到廣泛的支持,C語(yǔ)言程序本身并不依賴于機(jī)器硬件系統(tǒng),基本上不做修改就可根據(jù)單片機(jī)的不同較快地移植過(guò)來(lái)。51的匯編語(yǔ)臺(tái)非常像其他匯編語(yǔ)臺(tái),簡(jiǎn)單實(shí)用。指令系統(tǒng)比第一代微處理器要強(qiáng)些。51的不同存儲(chǔ)區(qū)域使得其復(fù)雜一些。但是利用匯編語(yǔ)言指令就可以充分利用片RAM資源,充分利用單片機(jī)部的一些特殊規(guī)定,充分利用單片機(jī)的一切資源,因而單片機(jī)資源的利用效率高。同時(shí)匯編語(yǔ)言是最接近機(jī)器語(yǔ)言的,因而代碼的執(zhí)行
48、效率高。在本系統(tǒng)中,由于單片機(jī)部的運(yùn)算量不大,而匯編語(yǔ)言簡(jiǎn)單,執(zhí)行效率高,己經(jīng)能夠滿足系統(tǒng)需求,所以選擇匯編語(yǔ)來(lái)編寫相應(yīng)代碼。4.1 應(yīng)用軟件設(shè)計(jì)原則應(yīng)用系統(tǒng)中的應(yīng)用軟件是根據(jù)系統(tǒng)功能要求設(shè)計(jì)的,應(yīng)可靠實(shí)現(xiàn)系統(tǒng)的各種功能。在本系統(tǒng)中,軟件設(shè)計(jì)要力求做到以下幾點(diǎn):1) 軟件結(jié)構(gòu)清晰,簡(jiǎn)捷,流程合理。2) 各功能程序?qū)崿F(xiàn)模塊化,子程序化。這樣,即便于調(diào)試,又便于移植,修改。3) 程序存儲(chǔ)區(qū),數(shù)據(jù)存儲(chǔ)區(qū)要合理規(guī)劃,既能節(jié)約存容量,又使操作方便。4) 運(yùn)行狀態(tài)實(shí)現(xiàn)標(biāo)志化管理。各個(gè)功能程序運(yùn)行狀態(tài),運(yùn)行結(jié)果以與運(yùn)行要求都要設(shè)置狀態(tài)標(biāo)志以便查詢,程序的轉(zhuǎn)移,運(yùn)行,控制都可通過(guò)狀態(tài)標(biāo)志條件來(lái)控制。5) 經(jīng)過(guò)
49、調(diào)試修改后的程序應(yīng)進(jìn)行規(guī)化,除去修改的痕跡,以便于交流和借鑒,也為以后的軟件模塊化,標(biāo)準(zhǔn)化打下基礎(chǔ)。6) 實(shí)現(xiàn)全面軟件抗干擾設(shè)計(jì)。軟件抗干擾是單片機(jī)應(yīng)用系統(tǒng)提高可靠性的有利措施。具體的軟件抗干擾方法,將在第四章中介紹。下面幾節(jié)將詳細(xì)介紹各個(gè)模塊要實(shí)現(xiàn)的功能以與實(shí)現(xiàn)方法。4.2 遙控接收程序遙控接收子程序要完成的功能就是不斷地掃描解碼芯片的地址位,接收解碼芯片的數(shù)據(jù)位和有效傳輸確認(rèn)位,判斷出遙控器上發(fā)射過(guò)來(lái)的相應(yīng)鍵值。由于解碼芯片的地址位在默認(rèn)情況下是接地的,對(duì)于遙控器上連接在編碼芯片的數(shù)據(jù)位上的鍵值,只要置高,那么相應(yīng)的解碼芯片對(duì)應(yīng)的數(shù)據(jù)位也會(huì)為高,遙控接收子程序可以直接接收判斷,不需要再對(duì)地
50、址位置位。本系統(tǒng)中值為3,6,9,#的鍵值就是直接接收。對(duì)于余下的8個(gè)連接在編碼芯片地址位的鍵值,當(dāng)遙控器上的鍵按下后,遙控接收子程序就不斷地循環(huán)置地址位為高,然后通過(guò)解碼芯片的有效傳輸確認(rèn)位來(lái)確認(rèn)是不是相應(yīng)編碼芯片的地址位也為高。有效傳輸確認(rèn)位輸出高電平則編碼芯片的相應(yīng)地址位為高,記下相應(yīng)地址位,推出遙控器上的鍵值。地址位與單片機(jī)之間加入三極管PNP8550進(jìn)行隔離和驅(qū)動(dòng)。有效傳輸確認(rèn)位與單片機(jī)之間加入三極管NPN8050進(jìn)行隔離和驅(qū)動(dòng)。所以當(dāng)單片機(jī)的控制腳RA-1,RA-2,,RA-8為低時(shí),解碼芯片相應(yīng)地址位為高。當(dāng)?shù)絹?lái),所以單片機(jī)讀取數(shù)據(jù)位數(shù)據(jù)可以延遲一定的時(shí)間。因而遙控接收子程序中可
51、以先處理地址位然后處理數(shù)據(jù)位數(shù)據(jù),不會(huì)出現(xiàn)數(shù)據(jù)丟失。一位地址位最多需要等待30ms以確定是否有值,8位最多等待8x30ms240ms,即0.24秒,然后接收數(shù)據(jù)位數(shù)據(jù),不會(huì)給用戶造成反應(yīng)遲鈍的感覺(jué),符合用戶要求。4.3I2C通訊子程序如前說(shuō)述,本系統(tǒng)中由單片機(jī)8051的P3.4和P3.5來(lái)分別模擬SCL(串行時(shí)鐘線)和SDA(串行數(shù)據(jù)線)來(lái)實(shí)現(xiàn)與EEPROM 24WC02IT通訊。EEPROM24WC02的器件地址為AOH。1寫操作(1)節(jié)寫在字節(jié)寫模式下,主器件發(fā)送起始命令和從器件地址信息(R/W位置零)給從器件,在從器件產(chǎn)生應(yīng)答信號(hào)后,主器件發(fā)送AT24WC02的字節(jié)地址,主器件在收到從器
52、件的另一個(gè)應(yīng)答信號(hào)后,再發(fā)送數(shù)據(jù)到被尋址的存儲(chǔ)單元。AT24WC02再次應(yīng)答。并在主器件產(chǎn)生停止信號(hào)后開始部數(shù)據(jù)的擦寫,在部擦寫過(guò)程中,AT24WC02不再應(yīng)答主器件的任何請(qǐng)求。(2)頁(yè)寫用頁(yè)寫AT24WC02可以一次寫入16個(gè)字節(jié)的數(shù)據(jù)。頁(yè)寫操作的啟動(dòng)和字節(jié)寫一樣。不同在于傳送了一字節(jié)數(shù)據(jù)后并不產(chǎn)生停止信號(hào)。主器件被允許發(fā)送15個(gè)額外的字節(jié)。每發(fā)送一個(gè)字節(jié)數(shù)據(jù)后AT24WC02產(chǎn)生一個(gè)應(yīng)答位并將字節(jié)地址低位加1,高位保持不變。如果在發(fā)送停止信號(hào)之前主器件發(fā)送超過(guò)16個(gè)字節(jié),地址計(jì)數(shù)器將自動(dòng)翻轉(zhuǎn),先前寫入的數(shù)據(jù)被覆蓋。接收到16字節(jié)數(shù)據(jù)和主器件發(fā)送的停止信號(hào)后,AT24WC02啟動(dòng)部寫周期將數(shù)
53、據(jù)寫到數(shù)據(jù)區(qū)。所有接收的數(shù)據(jù)在一個(gè)寫周期寫入AT24WC02。(3)應(yīng)答查詢可以利用部寫周期時(shí)禁止數(shù)據(jù)輸入這一特性。一旦主器件發(fā)送停止位指示主器件操作結(jié)束時(shí),AT24WC02啟動(dòng)部寫周期,應(yīng)答查詢立即啟動(dòng),包括發(fā)送一個(gè)起始信號(hào)和進(jìn)行寫操作的從器件地址。如果AT24WC02正在進(jìn)行部寫操作,不會(huì)發(fā)送應(yīng)答信號(hào)。如果A'T24WC02己經(jīng)完成了部自寫周期,將發(fā)送一個(gè)應(yīng)答信號(hào)主器件可以繼續(xù)進(jìn)行下一次讀寫操作。(4)寫保護(hù)寫保護(hù)操作特性可使用戶避免由于不當(dāng)操作而造成對(duì)存儲(chǔ)區(qū)域部數(shù)據(jù)的改寫。當(dāng)WP管腳接高時(shí),整個(gè)寄存器區(qū)全部被保護(hù)起來(lái)而變?yōu)橹豢勺x取。AT24WC02可以接收從器件地址和字節(jié)地址。但
54、是裝置在接收到第一個(gè)數(shù)據(jù)字節(jié)后不發(fā)送應(yīng)答信號(hào)從而避免寄存器區(qū)域被編程改寫。2.讀操作對(duì)AT24WC02讀操作的初始化方式和寫操作時(shí)一樣,僅把R/W位置為1,有三種不同的讀操作方式:立即地址讀,選擇讀和連續(xù)讀。(1)立即地址讀AT24WC02的地址計(jì)數(shù)器容為最后操作字節(jié)的地址加1。也就是說(shuō),如果上次讀/寫的操作地址為N,則立即讀的地址從地址N+1開始。如果N=E(對(duì)24WC02E=255)則計(jì)數(shù)器將翻轉(zhuǎn)到0且繼續(xù)輸出數(shù)據(jù)AT24WC02接收到從器件地址信號(hào)后(R/W位置1),它首先發(fā)送一個(gè)應(yīng)答信號(hào),然后發(fā)送一個(gè)8位字節(jié)數(shù)據(jù)。主器件不需發(fā)送一個(gè)應(yīng)答信號(hào),但要產(chǎn)生一個(gè)停止信號(hào)。(2)選擇性讀選擇性讀
55、操作允許主器件對(duì)寄存器的任意字節(jié)進(jìn)行讀操作。主器件首先通過(guò)發(fā)送起始信號(hào),從器件地址和它想讀取的字節(jié)數(shù)據(jù)的地址執(zhí)行一個(gè)偽寫操作。在AT24WC02應(yīng)答之后,主器件重新發(fā)送起始信號(hào)和從器件地址,此時(shí)R/W位置1,AT24WC02響應(yīng)并發(fā)送應(yīng)答信號(hào),然后輸出所要求的一個(gè)8位字節(jié)數(shù)據(jù),主器件不發(fā)送應(yīng)答信號(hào)但產(chǎn)生一個(gè)停止信號(hào)。(3)連續(xù)讀操作連續(xù)讀操作可通過(guò)立即讀或選擇性讀操作啟動(dòng)。在AT24WC02發(fā)送完一個(gè)8位字節(jié)數(shù)據(jù)后,主器件產(chǎn)生一個(gè)應(yīng)答信號(hào)來(lái)響應(yīng),告知AT24WC02主器件要求更多的數(shù)據(jù),對(duì)應(yīng)每個(gè)主機(jī)產(chǎn)生的應(yīng)答信號(hào)AT24WC02將發(fā)送一個(gè)8位數(shù)據(jù)字節(jié)。當(dāng)主器件不發(fā)送應(yīng)答信號(hào)而發(fā)送停止位時(shí)結(jié)束此操作。AT24WC02輸出的數(shù)據(jù)按順序由N到N+l輸出。讀操作時(shí)地址計(jì)數(shù)器在AT24WC02整個(gè)地址增加。這樣整個(gè)寄存器區(qū)域在可在一個(gè)讀操作全部讀出。當(dāng)讀取的字節(jié)超255,計(jì)數(shù)器將翻轉(zhuǎn)到零并繼續(xù)輸出數(shù)據(jù)字節(jié)。4.4 系統(tǒng)程序系統(tǒng)上電后首先完成初始化工作,然后按照事先設(shè)定好的程序執(zhí)行。本系統(tǒng)程序是基于單任務(wù)機(jī)制的。這種機(jī)制的應(yīng)用程序是一個(gè)無(wú)限的循環(huán),在這循環(huán)的過(guò)程中調(diào)用相應(yīng)的子程序函數(shù)來(lái)完成相應(yīng)的操作。這種機(jī)制具有簡(jiǎn)單直觀,易于控制的
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個(gè)人合同糾紛法律顧問(wèn)聘請(qǐng)協(xié)議
- 2025年度個(gè)人信用消費(fèi)還款服務(wù)合同范本4篇
- 2025年度個(gè)人藝術(shù)品交易貸款分期還款協(xié)議3篇
- 2025年湖北黃石西塞山區(qū)創(chuàng)發(fā)集團(tuán)招聘筆試參考題庫(kù)含答案解析
- 2025年國(guó)家電網(wǎng)國(guó)際發(fā)展有限公司招聘筆試參考題庫(kù)含答案解析
- 二零二五年度門窗安裝與建筑一體化設(shè)計(jì)合同8篇
- 二零二五版門面鋪面租賃合同-含物業(yè)維護(hù)服務(wù)條款4篇
- 2025年度云計(jì)算數(shù)據(jù)中心租賃合同模板4篇
- 二零二五年度美團(tuán)打車新能源汽車充電樁建設(shè)合作協(xié)議3篇
- 漳州理工職業(yè)學(xué)院《影視編導(dǎo)基礎(chǔ)》2023-2024學(xué)年第一學(xué)期期末試卷
- 汽車配件購(gòu)銷合同范文
- 貴州省2024年中考英語(yǔ)真題(含答案)
- 施工項(xiàng)目平移合同范本
- 北師大版八年級(jí)上冊(cè)數(shù)學(xué)期中綜合測(cè)試卷(含答案解析)
- 幼兒園創(chuàng)意美勞培訓(xùn)
- 同濟(jì)大學(xué)第四版線性代數(shù)課后習(xí)題答案
- 醫(yī)療領(lǐng)域人工智能技術(shù)應(yīng)用的倫理與法規(guī)
- 工地春節(jié)停工復(fù)工計(jì)劃安排
- 美容面部皮膚知識(shí)課件
- 胰島素注射的護(hù)理
- 腦梗死健康宣教的小講課
評(píng)論
0/150
提交評(píng)論