基于單片機的紅外遙控接收電路_第1頁
基于單片機的紅外遙控接收電路_第2頁
基于單片機的紅外遙控接收電路_第3頁
基于單片機的紅外遙控接收電路_第4頁
基于單片機的紅外遙控接收電路_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1 引言近年來隨著計算機在社會各領(lǐng)域的滲透,單片機的應(yīng)用正在不斷地走向深入,同時也帶動傳統(tǒng)的控制、檢測等工作日益更新。傳統(tǒng)的遙控器大多采用無線電遙控技術(shù),隨著科技的進步,紅外線遙控技術(shù)的進一步成熟,紅外遙控也逐步成為了一種被廣泛應(yīng)用的通信和遙控手段。為了方便實用,傳統(tǒng)的家庭電器逐漸采用紅外線遙控。工業(yè)設(shè)備中,在高壓、輻射、有毒氣體、粉塵等有害環(huán)境下,采用紅外線遙控不僅完全可靠而且能有效地隔離電氣干擾。紅外遙控的特點是不影響周邊環(huán)境、不干擾其它電器設(shè)備。由于其無法穿透墻壁,故不同房間的家用電器可使用通用的遙控器而不會產(chǎn)生相互干擾;電路調(diào)試簡單,只要按給定電路連接無誤,一般不需任何調(diào)試即可投入工作

2、;編解碼容易,可進行多路遙控。紅外遙控雖然被廣泛應(yīng)用,但各產(chǎn)商的遙控器不能相互兼容。當今市場上的紅外線遙控裝置一般采用專用的遙控編碼及解碼集成電路,但編程靈活性較低,且產(chǎn)品多相互綁定,不能復用,故應(yīng)用范圍有限。而本文采用單片機進行遙控系統(tǒng)的應(yīng)用設(shè)計,遙控裝置將同時具有編程靈活、控制范圍廣、體積小、功耗低、功能強、成本低、可靠性高等特點,因此采用單片機的紅外遙控技術(shù)具有廣闊的發(fā)展前景。2 概述2.1 基于單片機的紅外遙控系統(tǒng)概述當今社會科學技術(shù)的發(fā)展與日俱增,人們生活水平也是日益提高,為了減少人們的工作量,所以對各種家用電器、電子器件的非人工控制的要求越來越高,針對這種情況,設(shè)計出一種集成度比較

3、高的控制體系是必然的。現(xiàn)代科技的飛速發(fā)展在許多危險、不可近場合也對遠程控制提出了越來越高的要求。單片機是指一個集成在一塊芯片上的完整計算機系統(tǒng)。盡管他的大部分功能集成在一塊小芯片上,但是它具有一個完整計算機所需要的大部分部件:CPU、內(nèi)存、內(nèi)部和外部總線系統(tǒng),目前大部分還會具有外存。同時集成諸如通訊接口、定時器,實時時鐘等外圍設(shè)備。而現(xiàn)在最強大的單片機系統(tǒng)甚至可以將聲音、圖像、網(wǎng)絡(luò)、復雜的輸入輸出系統(tǒng)集成在一塊芯片上。單片機的集成度很高,它體積小、功耗低、控制功能強、擴展靈活、微型化、使用方便等突出特點,尤其耗電少,又可使供電電源體積小、質(zhì)量輕。所以特別適用于“電腦型產(chǎn)品”,它的應(yīng)用已深入到工

4、業(yè)、農(nóng)業(yè)、國防、科研、教育以及日常生活用品(家電、玩具)等各種領(lǐng)域,幾乎很難找到哪個領(lǐng)域沒有單片機的蹤跡。單片機特別適合把它做到產(chǎn)品的內(nèi)部,取代部分老式機械、電子零件或元器件??墒巩a(chǎn)品縮小體積,增強功能,實現(xiàn)不同程度的智能化。紅外線是一種光線,具有普通光的性質(zhì),可以以光速直線傳播,強度可調(diào),可以通過光學透鏡聚焦,可以被不透明物體遮擋等等。特別制造的半導體發(fā)光二極管,可以發(fā)出特定波長(通常是近紅外)的紅外線,通過控制二極管的電流可以很方便的改變紅外線的強度,以達到調(diào)制的目的,因此,在現(xiàn)代電子工程應(yīng)用中,紅外線常常被用做近距離視線范圍內(nèi)的通訊載波。使用紅外線做信號載波的優(yōu)點很多:成本低、傳播范圍和

5、方向可以控制、不產(chǎn)生電磁輻射干擾,也不受干擾等等。因此被廣泛地應(yīng)用在各種技術(shù)領(lǐng)域中。由于紅外線為不可見光,因此對環(huán)境影響很小,再由紅外光波動波長遠小于無線電波的波長,所以紅外線遙控不會影響其他家用電器,也不會影響臨近的無線電設(shè)備。最典型的應(yīng)用就是家電遙控器。紅外線遙控不具有像無線電遙控那樣穿過障礙物去控制被控對象的能力,所以,在設(shè)計家用電器的紅外線遙控器時,不必要像無線電遙控器那樣,每套(發(fā)射器和接收器)要有不同的遙控頻率或編碼(否則,就會隔墻控制或干擾鄰居的家用電器)。同類產(chǎn)品的紅外線遙控器,也可以有相同的遙控頻率或編碼,而不會出現(xiàn)遙控信號“串門”的情況。這對于大批量生產(chǎn)以及在家用電器上普及

6、紅外線遙控提供了極大的方面。本設(shè)計主要研究并設(shè)計一個基于單片機的紅外發(fā)射及接收系統(tǒng),實現(xiàn)對四路開關(guān)的隔離控制并對工作狀態(tài)設(shè)備計數(shù)??刂葡到y(tǒng)主要是由 MCS-51 系列單片機、電源電路、紅外發(fā)射電路、紅外接收電路、LED 顯示電路等部分組成,單片機編碼發(fā)射遙控信號經(jīng)紅外接收處理傳送給單片機,單片機根據(jù)不同的信息碼控制四路 LED 發(fā)光二極管各個狀態(tài),并完成相應(yīng)的狀態(tài)指示(如圖 1)。按鍵編碼和調(diào)制紅外發(fā)射紅外接收解碼并響應(yīng)紅外遙控紅外接收圖 1 紅外線遙控系統(tǒng)框圖2.2 本設(shè)計方案思路本設(shè)計主控芯片采用目前比較通用的MCS-51系列單片機。此類單片機的運算能力強,軟件編程靈活,自由度大,市場上比

7、較多見,價格便宜且技術(shù)比較成熟容易實現(xiàn)。紅外傳輸利用載波對信號進行調(diào)制從而減少信號傳輸過程中的光波干擾,提高數(shù)據(jù)傳輸效率。由單片機AT89S51定時器 T0 產(chǎn)生周期性的 26.3 的矩形脈沖,即每隔13us,定時器 T0 產(chǎn)生中斷輸出一個相反的信號使輸出端產(chǎn)生周期的 38KHz 脈沖信號。再由單片機將鍵盤信息及系統(tǒng)識別碼等數(shù)據(jù)調(diào)制在紅外載波上經(jīng)紅外發(fā)射頭發(fā)射出去。接收方由紅外一體化接收頭實現(xiàn)對接收信號的放大解調(diào)并還原為數(shù)據(jù)流,經(jīng)由單片機解碼后對相關(guān)IO口進行操作(如圖 1)。2.3 主要技術(shù)指標 (1)遙控距離4到6 m(2)遙控路數(shù)為 4路,即可對 4 個受控設(shè)備同時進行開關(guān)控制;(3)工

8、作頻率為 38KHz,即紅外發(fā)射和接收的載頻為 38KHz;(4)接收端可顯示受控狀態(tài)。3 總體設(shè)計紅外遙控系統(tǒng)是集中集光、電于一體的系統(tǒng)。其工作原理是用戶按鍵信號經(jīng)單片機編碼處理后轉(zhuǎn)化為脈沖信號,經(jīng)由紅外發(fā)射頭發(fā)送出去;接收端由紅外一體化接收頭實現(xiàn)對接收信號的放大解調(diào)并還原為數(shù)據(jù)流,經(jīng)由單片機解碼后對相關(guān)IO口進行操作,從而完成整個遙控操作。整個系統(tǒng)主要是由電源電路、紅外發(fā)射電路、紅外接收電路、LED 顯示電路等部分組成。系統(tǒng)硬件由以下幾部分組成:紅外數(shù)據(jù)發(fā)射電路,鍵盤采用普通按鍵鍵盤,按鍵統(tǒng)一接在單片機P0口。整體設(shè)計思路為:根據(jù)掃描到不同的按鍵值對發(fā)射脈沖編碼賦值后 AT89S51 將按

9、照數(shù)據(jù)處理要求從 P3.5 輸出控制脈沖與 T0 產(chǎn)生的 8KHz 的載波(周期是 26us)進行調(diào)制,經(jīng) NPN 三極管對信號放大驅(qū)動紅外發(fā)光管將控制信號發(fā)送出去。紅外數(shù)據(jù)接收則是采用 HS38B 一體化紅外接收頭,內(nèi)部集成紅外接收、數(shù)據(jù)采集、解碼的功能,只要在接收端 INT0 檢測頭信號低電平的到來,就可完成對整個串行的信號進行分析得出當前控制指令的功能。然后根據(jù)所得的指令去操作相應(yīng)的用電器件工作,如圖 2所示。紅外發(fā)射管編碼單片機遙控按鍵紅外傳輸執(zhí)行部分紅外一體化接收頭解碼單片機圖2 系統(tǒng)總體結(jié)構(gòu)框圖3.1 紅外遙控發(fā)射部分紅外遙控發(fā)射部分系統(tǒng)框圖見圖 3。發(fā)送端采用單片機的定時中斷功能

10、,由定時器 T0 產(chǎn)生周期為 26us 的矩形脈沖,即每隔13us定時器 T0 產(chǎn)生中斷輸出一個相反的信號使單片機輸出端產(chǎn)生周期為38KHz的脈沖信號。脈沖圖如圖 4所示。系統(tǒng)通過直連單片機的按鍵獲取用戶遙控信息,經(jīng)按鍵掃描確認,然后交由單片機對將要發(fā)射數(shù)據(jù)進行整理,將待發(fā)送的二進制信號編碼調(diào)制在38kHz脈沖基波上,生成脈沖發(fā)射信號,最后通過紅外發(fā)射管發(fā)射紅外信號。按鍵部分單片機89S51編碼紅外發(fā)射電源5V驅(qū)動圖 3 紅外遙控發(fā)射電路框圖圖 4 38KHz 載波信號3.2 紅外遙控接收部分5V紅外接收單片機89S51解碼設(shè)備數(shù)顯示受控設(shè)備電源9V紅外遙控接收電路框圖見圖 5。紅外接收端普遍

11、采用價格便宜,性能可靠的一體化紅外接收頭(HS38B , 它接收紅外信號頻率為38KHz ,周期約26s)。它能同時對信號進行放大、檢波、整形,得到TTL 電平的編碼信號。紅外接收頭收到信號后單片機立即產(chǎn)生中斷,開始接收紅外信號。接收到的信號經(jīng)單片機解碼得到用戶遙控信息并轉(zhuǎn)至IO口執(zhí)行,同時單片機還完成對處于工作狀態(tài)的設(shè)備進行計數(shù)并顯示。光電隔離圖 5 紅外遙控接收電路框圖3.3 紅外編碼標準本設(shè)計中采用不同的脈寬寬度來實現(xiàn)二進制信號的編碼,編碼由發(fā)送單片機來完成。以間隔0.56ms、脈寬為0.565ms、周期為1.125ms的組合表示二進制的“1”;以間隔1.685ms、脈寬為0.565ms

12、、周期為2.25ms的組合表示二進制的“0”,其波形如圖6所示。Bit“0”Bit“1”1.685ms0.56ms1.125ms2.25ms圖 6 二進制信號“1”和“0”的編碼遙控編碼脈沖信號由引導碼、識別碼、識別反碼、控制碼、控制反碼信號組成。引導碼也叫起始碼,由寬度為5ms的高電平和寬度為3ms的低電平組成,用來標志遙控編碼脈沖信號的開始。如圖7所示。3ms 低電平5ms 高電平圖 7 信號引導碼圖識別碼也叫系統(tǒng)碼,它用來指示遙控系統(tǒng)的種類,以區(qū)別其它遙控系統(tǒng),防止各遙控系統(tǒng)的誤動作。控制碼也叫功能碼,它代表了相應(yīng)的控制功能,接收機可根據(jù)功能碼的數(shù)值完成各種功能操作。識別反碼與控制反碼分

13、別是識別碼與控制碼的反碼,反碼的加入是為了能在接收端校對傳輸過程中數(shù)據(jù)是否產(chǎn)生差錯。脈沖位置表示的“0”和“1”組成的 32 位二進制碼前 16 位控制指令,控制不同的紅外遙控設(shè)備。而不同的紅外家用電器又有不同的脈沖調(diào)控方式,后 16位分別是 8 位的控制碼和 8 位的控制反碼。串行數(shù)據(jù)碼時序圖如8 所示。圖 8 串行數(shù)據(jù)碼時序圖3.3.1 二進制信號的調(diào)制二進制信號的調(diào)制仍由發(fā)送單片機來完成,如圖9所示,A是二進制信號的編碼波形,B 是頻率為38KHz (周期為26s) 的連續(xù)脈沖,C 是經(jīng)調(diào)制后的間斷脈沖串(相當于C = A ×B) ,用于紅外發(fā)射二極管發(fā)送的波形。圖9 中,待發(fā)

14、送的二進制數(shù)據(jù)為101。圖中脈沖個數(shù)僅為示意非真實情況。圖9 二進制信號的調(diào)制 二進制信號的解調(diào)由一體化紅外接收頭HS38B來完成,它把接收到的紅外信號(圖10 中波形D ,也是圖9 中波形C) 經(jīng)內(nèi)部處理并解調(diào)復原,在輸出腳輸出圖10 中波形E (正好是對圖9 中波形A 的取反) ,HS38B 的解調(diào)可理解為:在輸入有脈沖串時,輸出端輸出低電平,否則輸出高電平??芍苯优c單片機串行輸入口及外中斷相聯(lián),以實現(xiàn)隨時接收遙控信號并產(chǎn)生中斷,然后由單片機對編碼還原。圖10 紅外接收頭接收及輸出波形3.3.2二進制信號的解調(diào)二進制信號的解碼由接收單片機來完成,它把紅外接收頭送來的二進制編碼波形通過解碼,

15、還原出發(fā)送端發(fā)送的數(shù)據(jù)。如圖10 ,把波形E 解碼還原成原始二進制數(shù)據(jù)信息101。 4 軟件設(shè)計4.1 總體方案基于單片機的紅外遙控電路系統(tǒng)設(shè)計中編碼解碼部分全部由單片機實現(xiàn)。即本設(shè)計為軟件編解碼。因此軟件設(shè)計也是設(shè)計的一大重點。編碼標準章節(jié) 3.3 紅外編碼標準已詳細介紹。這里將具體講述編解碼的軟件實現(xiàn)過程。MCS-51單片機通常使用匯編語言和C語言來進行軟件開發(fā)。匯編語言是一種簡單易掌握、效率較高的開發(fā)語言。其程序結(jié)構(gòu)簡單,執(zhí)行速度快,實時性好,程序易優(yōu)化,編譯后占用存儲空間校少,是簡單的單片機應(yīng)用系統(tǒng)開發(fā)中最常用的程序設(shè)計語言。本設(shè)計采用匯編語言進行編程,編譯器采用Keil Vision

16、 V4.00a,該編譯器是51系列單片機程序設(shè)計的常用工具,既可用匯編,也支持C語言編譯。同時具有完善的調(diào)試功能。4.2 編碼發(fā)射程序設(shè)計紅外發(fā)射程序任務(wù)要采集用戶的按鍵信息,生成控制碼及控制反碼連同預(yù)設(shè)的系統(tǒng)識別碼和識別碼反碼共同組成四個八位的二進制數(shù)據(jù)流,然后通過單片機的中斷系統(tǒng)將以引導碼開頭的數(shù)據(jù)流以脈沖形式發(fā)送出去。具體編碼方法本文章節(jié)3.3已有介紹。圖 26為紅外發(fā)射主程序流程圖四個八位二進制數(shù)據(jù)調(diào)用四次數(shù)據(jù)發(fā)送子程序,最后以結(jié)束碼1結(jié)尾。表示本次數(shù)據(jù)發(fā)送完畢。圖 26 紅外遙控發(fā)射主程序流程圖圖 27為紅外發(fā)送子程序的流程圖。它每被調(diào)用一次便將累加器中的八位二進制數(shù)據(jù)發(fā)送出去。程序

17、從高位開始依次發(fā)送累加器中的二進制數(shù)據(jù)。為0則先發(fā)送1.68ms的低電平,為1則先發(fā)送0.56ms的低電平。然后打開中斷,利用八位自動重裝初值定時器使T0口為產(chǎn)生周期26ms的脈沖,脈沖持續(xù)時間為0.56ms。脈沖發(fā)送完畢,關(guān)中斷。直至八位數(shù)據(jù)發(fā)送完,本次發(fā)射子程序退出。圖 27 紅外發(fā)射子程序流程圖中斷服務(wù)程序:INTT1: CPL P3.5 ;38kHZ紅外線遙控信號產(chǎn)生 RETI ;中斷返回發(fā)送子程序:OUT04: ;循環(huán)發(fā)射累加器中各數(shù)據(jù)位 MOVR1,#08HOUT: RLCA ACALL SEND DJNZ R1,OUT ;八位數(shù)據(jù)發(fā)送完畢退出 RETSEND: CLR TR1 ;

18、關(guān)定時器T1 CLR ET1 ;關(guān)T1中斷 CLR P3.5 ;關(guān)脈沖輸出 JC SEND1 MOV R3,#08H ;發(fā)射0碼SEND0: MOVR4,#69H ;0碼低電平 DJNZ R4,$ DJNZ R3,SEND0 AJMP SIG ;轉(zhuǎn)脈沖發(fā)送信號SEND1: MOVR3,#02H ;1碼低電平SEND10: MOV R4,#8CH DJNZ R4,$ DJNZ R3,SEND10SIG: SETB ET1 ;開T1中斷 SETB TR1 ;開啟定時器T1 MOV R3,#08CH ;發(fā)脈沖 DJNZ R3,$ CLR TR1 ;關(guān)定時器T1 CLR ET1 ;關(guān)T1中斷 CLR

19、P3.5 ;關(guān)脈沖輸出 RET具體發(fā)送程序見附錄 3。4.4 紅外遙控接收程序設(shè)計紅外遙控接收程序主要任務(wù)是將紅外接收頭發(fā)出的信號還原為二進制編碼。因紅外接收頭輸出的信號是對輸入信號的求反。因此其接收到的引導碼為5ms低電平和3ms的高電平,低電平引發(fā)接收端單片機中斷。單片機在收到中斷信號后對低電平時間進行計數(shù),超過4ms才認定引導碼有效。利用延時跳過3ms的高電平,單片機才開始接收數(shù)據(jù)。圖 28 單片機對接收頭輸出信號的判定紅外接收頭輸出的信號為一列方波如圖28。如何將其還原為二進制中的1和0是軟件設(shè)計的關(guān)鍵。從編碼標準得知信號的1和0信號占空比不同。即接收頭對信號反相后碼1和0的高電平時間

20、長度不同。由0碼和1碼的高低電平寬度可設(shè)定程序延時0.8ms后對信號的電平取樣。若為低電平即為原碼的1,高電平為原碼0。由上所述可知,紅外遙控系統(tǒng)接收部分的主程序流程圖如圖29所示。程序首先初始化端口并開中斷,隨后單片機即對處于工作狀態(tài)的設(shè)備計數(shù),等待中斷。引導碼識別正確后單片機調(diào)用四次讀碼子程序,分別接收四個八位數(shù)據(jù),并對碼值進行校驗,不符則跳出中斷。當接收到結(jié)束碼1后,單片機開始對控制碼進行響應(yīng),對相關(guān)IO口置位,之后返回LED數(shù)碼管顯示程序。圖29 紅外遙控接收主程序 紅外遙控接收部分讀碼子程序利用碼1和0的電平特性對接收頭輸出的信號進行解碼。以八位二進制碼為一個循環(huán)。在高電平到達后0.

21、8ms對P3.1口電平采樣,取反后即為二進制原碼,將其逐位保存到累加器中。電平采樣后軟件延時等待下一個高電平的出現(xiàn)。等八位數(shù)據(jù)全部讀取完畢退出子程序。圖 30 紅外遙控接收部分讀碼子程序中斷接收并判斷引導碼:INTEX0: MOV 35H,A;采用中斷接收 保護現(xiàn)場 MOV 20H,C CLR EX0 ;關(guān)外中斷 JNB P3.1,READ ;P3.1口為低電平轉(zhuǎn)READ 為高電平退出OUT: SETB EX0 ;開中斷(系干擾) MOV A,38H ;恢復現(xiàn)場 MOV C,20H RETI ;退出中斷READ: CLR A ;清A 讀取引導碼 MOV DPH,A ;清DPTR MOV DPL

22、,A HEAD: JB P3.1,HEAD01 ;P3.5變高電平轉(zhuǎn)HARD01 INC DPTR ;用DPTR對低電平計數(shù) MOV R1,#04HDJNZ R1,$ AJMP HEAD ;轉(zhuǎn)HARD循環(huán)(循環(huán)周期為16微秒)HEAD01: MOV A,DPH ;DPTR高8位放入A JZ OUT ;為0(脈寬小于16*255=4毫秒)退出 MOVR1,#0AH;3ms空隙讀碼子程序:READ01: MOVCODENUM,#08H;讀取數(shù)據(jù)碼8位CLRA ;清ALJMP READ02READ02:CLRCMOVR1,#02H ;延時0.8msREAD03:MOVR2,#0C8HDJNZ R2,

23、$DJNZ R1,READ03MOVC,P3.1 ;取碼CPLC ;還原碼值RLCA ;移位賦值JB P3.1,$JNBP3.1,$DJNZ CODENUM,READ02 RET具體接收程序見附錄 4。5 總結(jié)由于目前的遙控裝置大多對某一設(shè)備進行單獨控制,而在本設(shè)計中的紅外遙控電路設(shè)計了多個控制按鍵,可以對不同的設(shè)備,也可以對同一設(shè)備的多個功能進行控制。系統(tǒng)可通過設(shè)定發(fā)射及接收程序中的識別碼及識別反碼達到不同遙控器間相互區(qū)分,對識別碼、識別反碼、控制碼和控制碼反碼的判定一方面消除了非遙控信號的紅外干擾,另一方面降低了誤操作發(fā)生的幾率。經(jīng)過測試,設(shè)計結(jié)果完全達到課題任務(wù)要求。但是本電路也有不完善

24、的地方, 由于作者時間、水平和經(jīng)驗有限,在信號的發(fā)射、編碼、抗干擾及功耗控制等方面仍有不足之處,有改進的余地。例如設(shè)計中可通過增加紅外線發(fā)射功率進而增加遙控距離,改進信號編碼方式以提高數(shù)據(jù)的傳輸速度,使用小型單片機以降低功耗等。另外在系統(tǒng)的調(diào)試方面,由于時間和設(shè)備的原因,只進行了短距離的調(diào)試,更多參數(shù)有待進一步的調(diào)試。在設(shè)計過程中,通過大量的查閱資料,認真研究教材,對單片機有了更為深刻的理解,在編寫軟件時,須仔細的分析硬件電路及所要達到的功能,然后設(shè)計程序流程,編寫代碼。整個過程培養(yǎng)了我的耐性和刻苦鉆研的精神。這次畢業(yè)設(shè)計對于我來說,既是一次機遇,又是一次挑戰(zhàn)。通過這次的畢業(yè)設(shè)計,我學到了很多

25、東西。通過自己的實踐,增強了動手能力,掌握了系統(tǒng)的分析解決問題的方法。通過實際工程設(shè)計也使我了解到書本知識和實際應(yīng)用的差別。在實際應(yīng)用中遇到很多的問題,這都需要我對問題進行具體的分析,并一步一步地去解決它。參考文獻1趙巍,馮娜.單片機基礎(chǔ)及應(yīng)用M.北京:清華大學出版社.2009:94-103.2高慧芳.單片機原理及系統(tǒng)設(shè)計M.杭州:杭州電子科技大學.2008:124-174.3聶詩良, 李磊民.采用單片機發(fā)送并接收紅外遙控信號的方法J. 信息技術(shù),2004,28(2):21-96.4施新華.利用單片機實現(xiàn)的紅外遙控技術(shù)J.上海電機學院學報.2006,9(3):69-71.5周潤景,張麗娜,丁莉

26、.基于PROTEUS的電路及單片機設(shè)計與仿真M.北京:北京航空航天大學出版社,2010.6吳金戌,沈慶陽,郭庭吉.8051單片機實踐與應(yīng)用M.第1版,清華大學出版社,2002.7胡偉.單片機C程序設(shè)計及應(yīng)用實例M.人民郵電出版社,2003.7.8實用電子元器件手冊.上??茖W技術(shù)出版社M.1998.2.9趙亮,侯國銳.單片機C語言編程與實例M,第一版.人民郵電出版社,2003.9.10K. Mandai, K. Miyauchi, M. Sugimoto,Y. Natsume and K. Ookubo. AN ADVANCED INFRARED REMOTE CONTROL SENSORJ.

27、IEEE,1990.6,36(3). 11 Michael A. Miller. Data and Network CommunicationsM.第一版,科學出版社,2002.12徐向民.Altium Designer 快速入門M.北京:北京航空航天大學出版社,2008.13楊恢先,王子菡,楊穗,陶霞.一種基于單片機的紅外遙控軟件解碼方法J.自動化與儀器儀表.2004,(2):16-32.附錄 1基于單片機的紅外遙控系統(tǒng)發(fā)射及電源部分電路: 附錄 2基于單片機的紅外遙控系統(tǒng)接收部分電路:附錄 3紅外遙控系統(tǒng)發(fā)射部分源程序: ORG 0000H ;程序執(zhí)行開始地址AJMP START ;跳至S

28、TART執(zhí)行 ORG 001BH ;定時器T1中斷入口地址LJMP INTT1 ;跳至INTT1中斷服務(wù)程序 ORG 0030HPCODE EQU 30H ;識別碼OPPCODE EQU 31H ;識別碼反碼BUT EQU 32H ;按鍵碼OPPBUT EQU 33H ;按鍵反碼START: MOV SP,#70H ;設(shè)堆?;窞?0H CLR P3.5 ;關(guān)遙控輸出 MOV IE,#00H ;關(guān)所有中斷 MOV IP,#01H ;設(shè)優(yōu)先級 MOV TMOD,#22H;8位自動重裝初值模式 MOV TH1,#0F3H;定時為13微秒初值 MOV TL1,#0F3H SETB EA ;開總中斷允

29、許 MOV PCODE,#0ABH;識別碼賦值 MOV OPPCODE,#54H;識別碼反碼賦值 MOV P2,#0FFHJIAN: MOVR1,#0EAH ;延時130MSWAIT: MOVR2,#0C8H DJNZ R2,$ DJNZ R1,WAIT MOV A,P2 CJNE A,#0FFH,JIAN1 ;鍵盤尋址 LJMP JIAN JIAN1: CJNE A,#07FH,JIAN2 LJMP MN0 JIAN2: CJNE A,#0BFH,JIAN3 LJMP MN1JIAN3: CJNE A,#0DFH,JIAN4 LJMP MN2JIAN4: CJNE A,#0EFH,JIAN5

30、 LJMP MN3JIAN5: CJNE A,#0F7H,JIAN6 LJMP MN4JIAN6: CJNE A,#0FBH,NN LJMP MN5NN: LJMP JIANmn0: MOV BUT,#10H MOV OPPBUT,#0EFH LCALL REMOTE ;轉(zhuǎn)發(fā)送程序 ajmp nnmn1: MOV BUT,#20H MOV OPPBUT,#0DFH LCALL REMOTE ;轉(zhuǎn)發(fā)送程序 ajmp nnmn2: MOV BUT,#30H MOV OPPBUT,#0CFH LCALL REMOTE ;轉(zhuǎn)發(fā)送程序 ajmp nnmn3: MOV BUT,#40H MOV OPPBU

31、T,#0BFH LCALL REMOTE ;轉(zhuǎn)發(fā)送程序 ajmp nnmn4: MOV BUT,#50H MOV OPPBUT,#0AFH LCALL REMOTE ;轉(zhuǎn)發(fā)送程序 ajmp nnmn5: MOV BUT,#60H MOV OPPBUT,#9FH LCALL REMOTE ;轉(zhuǎn)發(fā)送程序 ajmp nn;*;* 編 碼 發(fā) 射 程 序 *;*REMOTE:SETB ET1 ;開T1中斷 SETB TR1 ;開啟定時器T1 MOV R1,#06H ;原數(shù)值#09HOUT01: MOV R2,#0C8H ;發(fā)5ms引導碼 DJNZ R2,$ DJNZ R1,OUT01 CLR TR1

32、;關(guān)定時器T1 CLR ET1 ;關(guān)T1中斷 CLR P3.5 ;關(guān)脈沖輸出 MOVR1,#0AH ;3ms空隙OUT02: MOVR2,#96H DJNZ R2,$ DJNZ R1,OUT02OUT03: ;發(fā)射數(shù)據(jù)流MOVA,PCODEACALL OUT04 ;調(diào)用發(fā)送子程序MOVA,OPPCODEACALL OUT04 ;調(diào)用發(fā)送子程序MOVA,BUTACALL OUT04 ;調(diào)用發(fā)送子程序MOVA,OPPBUT ACALL OUT04 ;調(diào)用發(fā)送子程序SETB C ;發(fā)送結(jié)束碼1ACALL SEND ;調(diào)用發(fā)送子程序MOVR1,#0EAH ;延時130MSOUTWAIT:MOVR2,#

33、0C8H DJNZ R2,$DJNZ R1,OUTWAITRET;*;* 發(fā) 射 子 程 序 *;*OUT04: ;循環(huán)發(fā)射各數(shù)據(jù)位MOVR1,#08HOUT:RLCAACALL SEND DJNZ R1,OUTRETSEND: CLR TR1 ;關(guān)定時器T1 CLR ET1 ;關(guān)T1中斷 CLR P3.5 ;關(guān)脈沖輸出 JCSEND1 MOVR3,#08H ;發(fā)射0碼SEND0: MOVR4,#69H ;0碼低電平 DJNZ R4,$ DJNZ R3,SEND0 AJMP SIG ;轉(zhuǎn)脈沖發(fā)送信號SEND1: MOVR3,#02H ;1碼低電平SEND10: MOV R4,#8CH DJNZ

34、 R4,$ DJNZ R3,SEND10SIG: SETB ET1 ;開T1中斷 SETB TR1 ;開啟定時器T1 MOVR3,#08CH ;發(fā)射脈沖 DJNZ R3,$ CLR TR1 ;關(guān)定時器T1 CLR ET1 ;關(guān)T1中斷 CLR P3.5 ;關(guān)脈沖輸出 RET;*;* T1中斷服務(wù)程序 *;*INTT1: CPL P3.5 ;40kHZ紅外線遙控信號產(chǎn)生 RETI ;中斷返回 END ;程序結(jié)束 附錄 4紅外遙控系統(tǒng)接收部分源程序 ORG 0000H LJMP STARTORG 0003H LJMP INTEX0 ORG 0030HPCODE EQU 30H ;識別碼OPPCOD

35、E EQU 31H ;識別碼反碼BUT EQU 32H ;按鍵碼OPPBUT EQU 33H ;按鍵反碼CODENUM EQU 34H ;接收碼數(shù)START: MOV SP,#70H MOV IE,#00H ;關(guān)所有中斷 SETB EX0 ;開外中斷 SETB EA ;總中斷允許 MOV PCODE,#0ABH;識別碼初值 MOV OPPCODE,#54H;識別碼反碼初值MAIN: MOVR3,#0FFH DJNZ R3,$ ;持續(xù)510微秒 MOV R5,#08H MOV R6,P2 MOV R7,#08HXUN: CLR C ;對工作狀態(tài)設(shè)備計數(shù) MOV A,R6 RLC A MOV R6

36、,A MOV A,R5 SUBB A,#00H MOV R5,A DJNZ R7,XUN MOV A,R5 MOV P1,A ;送LED顯示 LJMP MAIN ;轉(zhuǎn)MAIN循環(huán)NOP ;PC值出錯處理 LJMPSTART ;出錯時重新初始化;*; 遙控接收程序;*INTEX0: MOV 35H,A ;采用中斷接收 保護現(xiàn)場 MOV 20H,C CLR EX0 ;關(guān)外中斷 JNB P3.1,READ ;P3.1口為低電平轉(zhuǎn)READ 為高電平退出OUT: SETB EX0 ;開中斷(系干擾) MOV A,38H ;恢復現(xiàn)場 MOV C,20H RETI ;退出中斷READ: CLR A ;清A 讀取引導碼 MOV DPH,A ;清DPTR MOV DPL,A HEAD: JB

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論