RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

使用單片機設(shè)計紅外遙控器的資料說明

Wildesbeast ? 來源:單片機教程網(wǎng) ? 作者:單片機教程網(wǎng) ? 2020-10-06 18:24 ? 次閱讀

紅外線遙控是目前使用很廣泛的一種通信和遙控技術(shù)。由于紅外線遙控裝置具有體積小、功耗低、功能強、成本低等特點,因而,繼彩電、錄像機之后,在錄音機、音響設(shè)備、空凋機以及玩具等其它小型電器裝置上也紛紛采用紅外線遙控。工業(yè)設(shè)備中,在高壓、輻射、有毒氣體、粉塵等環(huán)境下,采用紅外線遙控不僅完全可*而且能有效地隔離電氣干擾。

紅外線是太陽光線中眾多不可見光線中的一種,由德國科學(xué)家霍胥爾于1800年發(fā)現(xiàn),又稱為紅外熱輻射,他將太陽光用三棱鏡分解開,在各種不同顏色的色帶位置上放置了溫度計,試圖測量各種顏色的光的加熱效應(yīng)。結(jié)果發(fā)現(xiàn),位于紅光外側(cè)的那支溫度計升溫最快。因此得到結(jié)論:太陽光譜中,紅光的外側(cè)必定存在看不見的光線,這就是紅外線。也可以當(dāng)作傳輸之媒界。 太陽光譜上紅外線的波長大于可見光線,波長為0.75~1000μm。紅外線可分為三部分,即近紅外線,波長為0.75~1.50μm之間;中紅外線,波長為1.50~6.0μm之間;遠紅外線,波長為6.0~l000μm 之間。

真正的紅外線夜視儀是光電倍增管成像,與望遠鏡原理全完不同,白天不能使用,價格昂貴且需電源才能工作。

通用紅外遙控系統(tǒng)由發(fā)射和接收兩大部分組成,應(yīng)用編/解碼專用集成電路芯片來進行控制操作,如圖1所示。發(fā)射部分包括鍵盤矩陣、編碼調(diào)制、LED紅外發(fā)送器;接收部分包括光、電轉(zhuǎn)換放大器、解調(diào)、解碼電路。

紅外遙控發(fā)射器專用芯片很多,根據(jù)編碼格式可以分成兩大類,這里我們以運用比較廣泛,解碼比較容易的一類來加以說明,現(xiàn)以日本NEC的uPD6121G組成發(fā)射電路為例說明編碼原理。當(dāng)發(fā)射器按鍵按下后,即有遙控碼發(fā)出,所按的鍵不同遙控編碼也不同。這種遙控碼具有以下特征:

采用脈寬調(diào)制的串行碼,以脈寬為0.565ms、間隔0.56ms、周期為1.125ms的組合表示二進制的“0”;以脈寬為0.565ms、間隔1.685ms、周期為2.25ms的組合表示二進制的“1”,其波形如圖2所示。

上述“0”和“1”組成的32位二進制碼經(jīng)38kHz的載頻進行二次調(diào)制以提高發(fā)射效率,達到降低電源功耗的目的。然后再通過紅外發(fā)射二極管產(chǎn)生紅外線向空間發(fā)射,如圖3所示,連發(fā)波形如圖4所示。

UPD6121G產(chǎn)生的遙控編碼是連續(xù)的32位二進制碼組,其中前16位為用戶識別碼,能區(qū)別不同的電器設(shè)備,防止不同機種遙控碼互相干擾。該芯片的用戶識別碼固定為十六進制01H;后16位為8位操作碼(功能碼)及其反碼。UPD6121G最多額128種不同組合的編碼。

當(dāng)遙控器在按鍵按下后,周期性地發(fā)出同一種32位二進制碼,周期約為108ms。一組碼本身的持續(xù)時間隨它包含的二進制“0”和“1”的個數(shù)不同而不同,大約在45~63ms之間,圖4為發(fā)射波形圖。

當(dāng)一個鍵按下超過36ms,振蕩器使芯片激活,將發(fā)射一組108ms的編碼脈沖,這108ms發(fā)射代碼由一個起始碼(9ms),一個結(jié)果碼(4.5ms),低8位地址碼(9ms~18ms),高8位地址碼(9ms~18ms),8位數(shù)據(jù)碼(9ms~18ms)和這8位數(shù)據(jù)的反碼(9ms~18ms)組成。如果鍵按下超過108ms仍未松開,接下來發(fā)射的代碼(連發(fā)代碼)將僅由起始碼(9ms)和結(jié)束碼(2.5ms)組成。

代碼格式(以接收代碼為準(zhǔn),接收代碼與發(fā)射代碼反向)

① 位定義

② 單發(fā)代碼格式

③ 連發(fā)代碼格式

注:代碼寬度算法

16位地址碼的最短寬度:1.12×16=18ms 16位地址碼的最長寬度:2.24ms×16=36ms

已知8位數(shù)據(jù)代碼及其8位反代碼的寬度和不變:(1.12ms+2.24ms)×8=27ms

∴ 32位代碼的寬度為(18ms+27ms)~(36ms+27ms)

1. 解碼的關(guān)鍵是如何識別“0”和“1”,從位的定義我們可以發(fā)現(xiàn)“0”、“1”均以0.56ms的低電平開始,不同的是高電平的寬度不同,“0”為0.56ms,“1”為1.68ms,所以必須根據(jù)高電平的寬度區(qū)別“0”和“1”。如果從0.56ms低電平過后,開始延時,0.56ms以后,若讀到的電平為低,說明該位為“0”,反之則為“1”,為了可*起見,延時必須比0.56ms長些,但又不能超過1.12ms,否則如果該位為“0”,讀到的已是下一位的高電平,因此取(1.12ms+0.56ms)/2=0.84ms最為可*,一般取0.84ms左右均可。

2. 根據(jù)碼的格式,應(yīng)該等待9ms的起始碼和4.5ms的結(jié)果碼完成后才能讀碼。

【紅外遙控解碼實驗硬件

一體化紅外線接收器是一種集紅外線接收和放大整形于一體,不需要任何外接元件,就能完成從紅外線接收到輸出與TTL電平信號兼容的所有工作,而體積又很小巧,它適合于各種紅外線遙控和紅外線數(shù)據(jù)傳輸,廣泛用于電視機、衛(wèi)星接收機、VCD、DVD、音響、空調(diào)等家用電器中接收紅外信號,圖5是一體化接收頭的引腳排列圖,圖6是本站產(chǎn)品配套的采用屏蔽線焊接的一體化紅外接收頭,采用屏蔽線焊接,抗干擾能力強,接收更可*。沒有購買實驗板配套的一體化紅外接收頭的網(wǎng)友可以根據(jù)圖2所示接收頭引腳排列圖自己焊接一個。

圖5:一體化紅外接收頭

(引腳排列圖) 圖6:本站產(chǎn)品配套一體化紅外接收頭(已經(jīng)用屏蔽線焊接好,抗干擾能力強,插入實驗板即可使用)

下面就是我們將要進行紅外遙控解碼實驗所要用到的硬件設(shè)備:S51增強型實驗板、ISP編程器、AT89S51實驗芯片、豪華型多功能紅外線遙控器。

圖7:S51增強型單片機實驗板及防插反紅外遙控接口

圖8:豪華型多功能紅外遙控器 + 高靈敏度一體化紅外接收頭(23元)

圖9:32鍵豪華型紅外遙控器原理圖

圖10:ISP編程器燒寫實驗單片機芯片AT89S51

【紅外遙控解碼實驗】

我們經(jīng)過對前面的遙控編解碼知識的學(xué)習(xí),對紅外遙控有了基本的了解,下面我們馬上進行解碼實驗。本紅外遙控解碼實驗的的功能是:程序?qū)b控器發(fā)射的遙控碼進行解碼,解碼成功時蜂鳴器發(fā)出“嘀嘀”的解碼成功提示音,如果按壓的是數(shù)字鍵“0~9”就將按鍵值在實驗板上的5位數(shù)碼管上顯示出按鍵值,同時將按鍵的十六進制值用P1口的8位發(fā)光二極管指示出來;如果按壓的不是數(shù)字鍵“0~9”,就直接從P1口輸出鍵值;下面是遙控解碼匯編源程序。

實驗時將先連接好硬件設(shè)備,將配套的一體化紅外遙控接收頭插入實驗板上的“紅外遙控”接口內(nèi),在Keil單片機集成開發(fā)環(huán)境中新建工程,通過Keil將源程序編譯得到HEX格式目標(biāo)文件yk.hex,最后使用ISP編程器將目標(biāo)文件燒寫到AT89S51單片機中,插到S51增強型實驗板上運行,拿出配套的紅外遙控器進行解碼測試,看看實驗結(jié)果是否和程序相同。。。

》》》 點此下載HEX格式目標(biāo)文件 yk.hex 》》》

》》》 點此下載遙控解碼源程序和Keil工程文件 》》》

ORG 0000H

MAIN: MOV SP,#60H

MOV P0,#0FFH

MOV P1,#0FFH

MOV P2,#0FFH

MOV P3,#0FFH

JNB P3.2,$;等待遙控信號出現(xiàn)

MOV R6,#10

SB: ACALL YS1 ;調(diào)用882微秒延時子程序

JBP3.2,MAIN ;延時882微秒后判斷P3.2腳是否出現(xiàn)高電平如果有就退出解碼程序

DJNZR6, SB;重復(fù)10次,目的是檢測在8820微秒內(nèi)如果出現(xiàn)高電平就退出解碼程序

;以上完成對遙控信號的9000微秒的初始低電平信號的識別。

JNB P3.2, $ ;等待高電平避開9毫秒低電平引導(dǎo)脈沖

ACALL YS2 ;延時4.74毫秒避開4.5毫秒的結(jié)果碼

MOV R1,#1AH ;設(shè)定1AH為起始RAM區(qū)

MOV R2,#4

PP: MOV R3,#8

JJJJ: JNB P3.2,$;等待地址碼第一位的高電平信號

LCALL YS1 ;高電平開始后用882微秒的時間尺去判斷信號此時的高低電平狀態(tài)

MOV C,P3.2;將P3.2引腳此時的電平狀態(tài)0或1存入C中

JNC UUU ;如果為0就跳轉(zhuǎn)到UUU

JBP3.2,$;如果為1就等待高電平信號結(jié)束

UUU: MOV A,@R1 ;將R1中地址的給A

RRC A ;將C中的值0或1移入A中的最低位

MOV @R1,A ;將A中的數(shù)暫時存放在R1中

DJNZR3,JJJJ ;接收地址碼的高8位

INC R1;對R1中的值加1,換成下一個RAM

DJNZR2,PP ;接收完16位地址碼和8位數(shù)據(jù)碼和8位數(shù)據(jù)反碼,存放在1AH/1BH/1CH/1DH的RAM中

;以下對代碼是否正確和定義進行識別

MOV A,1AH ;比較高8位地址碼

XRL A,#00000000B;判斷1AH的值是否等于00000000,相等的話A為0

JNZ MAIN;如果不相等說明解碼失敗退出解碼程序

MOV A,1BH ;比較低8位地址

XRL A,#11111111B;再判斷高8位地址是否正確

JNZ MAIN;如果不相等說明解碼失敗退出解碼程序

MOV A,1CH ;比較數(shù)據(jù)碼和數(shù)據(jù)反碼是否正確?

CPL A

XRL A,1DH ;將1CH的值取反后和1DH比較 不同則無效丟棄,核對數(shù)據(jù)是否準(zhǔn)確

JNZ MAIN;如果不相等說明解碼失敗退出解碼程序

LCALL SOUND ;解碼成功,聲音提示

MOV A,1AH

CPL A

MOV P1,A;遙控碼十六進制值通過P1口LED顯示出來

;-------- 下面為0~9鍵碼判斷并在實驗板的5位數(shù)碼管中顯示鍵值 --------

JZPD: MOV A,1AH

IRD0: CJNEA,#00H,IRD1 ;按鍵“0”判斷顯示

MOV P0,#0C0H

MOV P2,#11100000B

AJMPMAIN

IRD1: CJNEA,#01H,IRD2 ;按鍵“1”判斷顯示

MOV P0,#0F9H

MOV P2,#11100000B

AJMPMAIN

IRD2: CJNEA,#02H,IRD3 ;按鍵“2”判斷顯示

MOV P0,#0A4H

MOV P2,#11100000B

AJMPMAIN

IRD3: CJNEA,#03H,IRD4 ;按鍵“3”判斷顯示

MOV P0,#0B0H

MOV P2,#11100000B

AJMPMAIN

IRD4: CJNEA,#04H,IRD5 ;按鍵“4”判斷顯示

MOV P0,#99H

MOV P2,#11100000B

AJMPMAIN

IRD5: CJNEA,#05H,IRD6 ;按鍵“5”判斷顯示

MOV P0,#92H

MOV P2,#11100000B

AJMPMAIN

IRD6: CJNEA,#06H,IRD7 ;按鍵“6”判斷顯示

MOV P0,#82H

MOV P2,#11100000B

AJMPMAIN

IRD7: CJNEA,#07H,IRD8 ;按鍵“7”判斷顯示

MOV P0,#0F8H

MOV P2,#11100000B

AJMPMAIN

IRD8: CJNEA,#08H,IRD9 ;按鍵“8”判斷顯示

MOV P0,#80H

MOV P2,#11100000B

AJMPMAIN

IRD9: CJNEA,#09H,IRDOR ;按鍵“9”判斷顯示

MOV P0,#90H

MOV P2,#11100000B

AJMPMAIN

IRDOR:MOV P2,#0FFH ;關(guān)閉數(shù)碼管使能?!?~9”以外的非數(shù)字功能按鍵鍵值不采用數(shù)碼管顯示,直接從P1口輸出鍵值

AJMPMAIN

YS1: MOV R4,#19 ;延時子程序1

D1: MOV R5,#18

DJNZR5,$

DJNZR4,D1

RET

YS2: MOV R4,#10 ;延時子程序2

D2: MOV R5,#216

DJNZR5,$

DJNZR4,D2

RET

SOUND:MOV R7,#228 ;音效延時子程序

SDL1: CPL P3.7

MOV R6,#0FFH

SDL0: DJNZR6,SDL0

DJNZR7,SDL1

RET

把上面程序?qū)懭隺t89S51單片機中,一個簡單的單片機紅外遙控器設(shè)計就完成了哈哈,是不是很有興趣了,通電后,按壓遙控器上的0~9按鍵,則實驗板上的數(shù)碼管上就顯示出對應(yīng)的按鍵值,同時解碼成功后發(fā)出聲音指示。。。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 芯片
    +關(guān)注

    關(guān)注

    455

    文章

    50714

    瀏覽量

    423136
  • 單片機
    +關(guān)注

    關(guān)注

    6035

    文章

    44554

    瀏覽量

    634628
  • 連接器
    +關(guān)注

    關(guān)注

    98

    文章

    14476

    瀏覽量

    136427
收藏 人收藏

    評論

    相關(guān)推薦

    基于51單片機設(shè)計的紅外遙控器

    本項目是基于 51 單片機設(shè)計支持 NEC 協(xié)議的紅外遙控器,實現(xiàn)接收解碼和發(fā)送功能。用戶通過按下相應(yīng)按鍵進行信號的發(fā)射,紅外發(fā)射二極管向外發(fā)射紅外
    的頭像 發(fā)表于 06-09 09:02 ?2324次閱讀
    基于51<b class='flag-5'>單片機設(shè)</b>計的<b class='flag-5'>紅外</b><b class='flag-5'>遙控器</b>

    單片機實現(xiàn)紅外遙控編解碼全部資料

    資料和源程序都是針對某一種的紅外遙控進行說明,只有買了和文章中一樣的遙控器才可以繼續(xù)實驗。而且網(wǎng)上很少有
    發(fā)表于 08-12 10:16

    紅外遙控器單片機的硬件接口的設(shè)計

    紅外遙控系統(tǒng)設(shè)計及應(yīng)用:本文介紹了紅外遙控系統(tǒng)的設(shè)計,紅外遙控器
    發(fā)表于 05-24 01:34 ?279次下載

    基于MSP430_單片機紅外遙控器設(shè)計

    基于MSP430_單片機紅外遙控器設(shè)計
    發(fā)表于 10-12 09:39 ?12次下載
    基于MSP430_<b class='flag-5'>單片機</b>的<b class='flag-5'>紅外</b><b class='flag-5'>遙控器</b>設(shè)計

    基于MSP430單片機紅外遙控器設(shè)計

    基于MSP430單片機紅外遙控器設(shè)計
    發(fā)表于 10-13 08:46 ?27次下載
    基于MSP430<b class='flag-5'>單片機</b>的<b class='flag-5'>紅外</b><b class='flag-5'>遙控器</b>設(shè)計

    使用STM8單片機設(shè)計的紅外遙控器解碼的程序電路圖芯片資料免費下載

    本文檔的主要內(nèi)容詳細介紹的是使用STM8單片機設(shè)計的紅外遙控器解碼的程序電路圖芯片資料免費下載。
    發(fā)表于 12-07 17:12 ?49次下載
    使用STM8<b class='flag-5'>單片機設(shè)</b>計的<b class='flag-5'>紅外</b><b class='flag-5'>遙控器</b>解碼的程序電路圖芯片<b class='flag-5'>資料</b>免費下載

    關(guān)于使用STM8單片機設(shè)計的紅外遙控說明資料

    本文檔的主要內(nèi)容詳細介紹的是關(guān)于使用STM8單片機設(shè)計的紅外遙控說明資料。 為了降低成本和體積,本電路采用了阻容降壓電路;程序調(diào)試時應(yīng)從U
    發(fā)表于 12-12 08:00 ?14次下載
    關(guān)于使用STM8<b class='flag-5'>單片機設(shè)</b>計的<b class='flag-5'>紅外</b><b class='flag-5'>遙控</b><b class='flag-5'>說明</b><b class='flag-5'>資料</b>

    使用51單片機設(shè)紅外遙控器的詳細資料說明

    本設(shè)計分為紅外遙控器紅外接收模塊兩部分。紅外遙控器包括矩陣鍵盤、增強型51單片機(STC11L
    發(fā)表于 09-16 17:22 ?27次下載
    使用51<b class='flag-5'>單片機設(shè)</b>計<b class='flag-5'>紅外</b><b class='flag-5'>遙控器</b>的詳細<b class='flag-5'>資料</b><b class='flag-5'>說明</b>

    使用51單片機設(shè)計在數(shù)碼管上顯示紅外遙控器按鈕的碼值程序免費下載

    本文檔的主要內(nèi)容詳細介紹的是使用51單片機設(shè)計在數(shù)碼管上顯示紅外遙控器按鈕的碼值程序免費下載。
    發(fā)表于 09-02 17:28 ?6次下載
    使用51<b class='flag-5'>單片機設(shè)</b>計在數(shù)碼管上顯示<b class='flag-5'>紅外</b><b class='flag-5'>遙控器</b>按鈕的碼值程序免費下載

    使用51單片機設(shè)紅外遙控器的程序庫文件免費下載

    本文檔的主要內(nèi)容詳細介紹的是使用51單片機設(shè)紅外遙控器的程序庫文件免費下載。
    發(fā)表于 07-08 17:41 ?11次下載
    使用51<b class='flag-5'>單片機設(shè)</b>計<b class='flag-5'>紅外</b><b class='flag-5'>遙控器</b>的程序庫文件免費下載

    使用AT89S51單片機制作紅外遙控器資料和源代碼詳細說明

    本文檔的主要內(nèi)容詳細介紹的是使用AT89S51單片機制作紅外遙控器資料和源代碼詳細說明。
    的頭像 發(fā)表于 05-30 09:26 ?6188次閱讀

    基于單片機系統(tǒng)的紅外遙控器的應(yīng)用程序

    紅外遙控器由于其體積小、功耗低、功能強、成本低的特點,已經(jīng)在家電產(chǎn)品設(shè)備中廣泛應(yīng)用?,F(xiàn)代智能化儀器儀表系統(tǒng)、工業(yè)設(shè)備中的控制輸入也較多地使用紅外遙控器。本文給出
    發(fā)表于 07-15 15:06 ?5055次閱讀
    基于<b class='flag-5'>單片機</b>系統(tǒng)的<b class='flag-5'>紅外</b><b class='flag-5'>遙控器</b>的應(yīng)用程序

    基于單片機紅外遙控通信實驗 紅外遙控器的發(fā)送和接收原理

    本章介紹紅外遙控通信試驗,通過本章的學(xué)習(xí)掌握紅外遙控器的編碼原理以及使用。在 RY-51 單片機開發(fā)板上,配備了一個
    的頭像 發(fā)表于 07-27 17:35 ?7919次閱讀
    基于<b class='flag-5'>單片機</b>的<b class='flag-5'>紅外</b><b class='flag-5'>遙控</b>通信實驗 <b class='flag-5'>紅外</b><b class='flag-5'>遙控器</b>的發(fā)送和接收原理

    基于51單片機紅外遙控器設(shè)計

    電子發(fā)燒友網(wǎng)站提供《基于51單片機紅外遙控器設(shè)計.rar》資料免費下載
    發(fā)表于 01-03 11:23 ?7次下載

    基于51單片機紅外遙控器設(shè)計

    電子發(fā)燒友網(wǎng)站提供《基于51單片機紅外遙控器設(shè)計.rar》資料免費下載
    發(fā)表于 01-12 09:22 ?9次下載
    RM新时代网站-首页