《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 用增強型51單片機實驗板實現紅外線遙控
用增強型51單片機實驗板實現紅外線遙控
中電網
摘要: 紅外線遙控是目前使用最廣泛的一種通信和遙控手段。工業設備中,在高壓、輻射、有毒氣體、粉塵等環境下,采用紅外線遙控不僅完全可靠而且能有效地隔離電氣干擾。
Abstract:
Key words :

紅外線遙控是目前使用最廣泛的一種通信和遙控手段。工業設備中,在高壓、輻射、有毒氣體、粉塵等環境下,采用紅外線遙控不僅完全可靠而且能有效地隔離電氣干擾。
1.紅外遙控系統
通用紅外遙控系統由發射和接收兩大部分組成,使用編/解碼專用集成電路芯片來進行控制操作。發射部分包括鍵盤矩陣、編碼調制、LED紅外發射器;接收部分包括光、電轉換放大器、解調、解碼部分電路。
2.遙控發射器及其編碼
下面以日本NEC的uPD6121G組成發射電路為例說明編碼原理。當發射器按鍵按下后,有遙控碼發出,所按的鍵不同遙控編碼也不同。這種遙控碼具有以下特征:
采用脈寬調制的串行碼,以脈寬為0.565ms、間隔0.56ms、周期為1.125ms的組合表示二進制的“0”;以脈寬為0.565ms、間隔1.685ms、周期為2.25ms的組合表示二進制的“1”,其”0”、“1”定義波形如圖2所示。

用增強型51實驗板實現紅外線遙控Infrared signal receiver

上述“0”和“1”組成的32位二進制碼經38kt_{z的載頻進行二次調制以提高發射效率,達到降低電源功耗的目的。然后再通過紅外發射二極管產生紅外線向空間發射,如圖3所示為最終發射出去的紅外信號波形。
uPD6121G產生的遙控編碼是連續的32位二進制碼組,其中前16位為用戶識別碼,能區別不同的電器設備,防止不同機種遙控碼互相干擾。該芯片的用戶識別碼固定為十六進制0仆1.;后16位為8位操作碼(功能碼)及其反碼。UPD6121G最多額128種不同組合的編碼。遙控器在按鍵按下后,周期性地發出同一種32位二進制碼,周期約為108ms。一組碼本身的持續時間隨它包含的二進制“0”和“1”的個數不同而不同,大約在45~63ms之間,圖4為發射波形圖。
當一個鍵按下超過36ms,振蕩器使芯片激活,將發射一組108ms的編碼脈沖,這108ms發射代碼由一個起始碼(9ms),一個結果碼(4.5ms),低8位地址碼(9ms~18ms),高8位地址碼(9ms~18ms)。8位數據碼(9ms~18ms)和這8位數據的反碼(9ms~18ms)組成。如果鍵按下超過108ms仍未松開,接下來發射的代碼(連發代碼)將僅由起始碼(9ms)和結束碼(2.5ms)組成。

用增強型51實驗板實現紅外線遙控Infrared signal receiver

3.接收頭及解碼
一體化紅外線接收頭是一種集紅外線接收和放大于一體,不需要任何外接元件,就能完成從紅外線接收到輸出與TTL電平信號兼容的所有工作,而體積較小,很多家電中都采用此類紅外接收頭,它適合于各種紅外線遙控和紅外線數據傳輸,如圖1左下角所示為增強型51實驗板上的一體化紅外線接收頭。
下面我們就來一起看一下增強型51實驗板是如何來解uPD6121紅外線編碼及如何使用紅外線來進行各式各樣的控制。
學習了紅外發射原理后,可以想到解碼的關鍵是如何識別“0”和“1”,從位的定義我們可以發現”0”、“1”均以0.56ms的低電平開始,不同的是高電平的寬度不同,“0”為0.56ms,“1”為1.68ms,所以必須根據高電平的寬度區別“0”和“1”。如果從0.56ms低電平過后,開始延時,0.56ms以后,若讀到的電平為低,說明該位為”0”,反之則為“1”,為了可靠起見,延時必須比0.56ms長些,但又不能超過1.12ms,否則如果該位為”0”,讀到的已是下一位的高電平,因此取(1.12ms+0.56ms)/2=0.84ms最為可靠,一般取0.84ms左右均可。同時,我們還應注意的是,根據碼的格式,應該等待9ms的起始碼和4.5ms的結果碼完成后才能讀碼。
學習板上的一體化紅外接收頭一共有3個腳,分別是“地”、“電源”、“數據”,其“數據”腳與51單片機的“INTO”腳,整個過程可以分成兩步,第一步是讀取并判斷引導碼是否正確,如果不是則直接返回并初始化檢測參數;第二步是連續4次,按照每次8bit讀取4個字節的后續數據,其中,檢測過程里對”0”和“1”的判斷必須是在開啟計時之后,以減少因為程序執行而導致的測量時間長度上誤差。
解碼過程關鍵是使用單片機的定時器,我們可以用引導碼的下降沿來觸發單片機的定時器開始計時處理,這樣就可以獲得電平的時間長度了,一般的遙控器編碼在長按按鍵的時候,會連續發數據,可能是同樣的數據,也有可能是個特定的所謂的重復幀,但大致上15ms之內沒有信號收到就表示當前的數據幀已經接收完畢。

解碼部分程序代碼如下:

unsignedcharuPD6121_read_code_8(void){unsignedchartemp=0;unsignedchari;for(i=0;<8;i++){temp=temp》1:
while(ir_receive==0);//等待高電平測試結束TR1=0;//高電平測試結束,停止計時high_level_time=TH1*256+TL1;//保存高電平的數據TH1=0;TL1=0;TR1=1;//啟動對低電平的測試while(ir_receive==1){if(TH1>0x4e){decode_error=1;return0;}//超時出錯,返回}
TR1=0;//低電平測試結束Iow_level_time=TH1*256+TL1;//保存低電平的數據TH1=0;TL1=0;TR1=1;//如果電平長度不在合理的范圍內,則認為出錯if((high_level_time<400)II(high_level_time>700)II(Iow_level_time<400)II(Iow_level—time>1900)){decode_error=1;returnO;}
if((Iow_level_time>400)&&(Iow_level_time<700))temp=temp&0x7f;if((Iow_level_time>1400)&&(Iow_level_time<1900))temp=temp1ox80;} returntemp;}nsignedcharuPD6121_decode(void)//解碼出錯返回1,對則返回OTR1=1://開始測量引導碼(或重復碼)的高電平寬度while(ir_receive==0);//等待電平變高,不需要超時監測TR1=0;//高電平(對發射電路而言)測試結束high_level_time=TH1*256+TL1://保存高電平的數據//————————————————————TH1=0;TL1=0;TR1=1;//啟動對低電平的測試while(ir_receive==1)//在對高電平進行查詢時,計超時。大于20ms出錯{if(TH1>0x4e)return1://測試超時后直接初始化相關變量,開始下次測試}
TR1=0://低電平(對發射電路而言)測試結束Iow_level_time=TH1*256+TL1:
//保存低電平的數據TH1=0;TL1=0;TR1=1;//為增加計時的準確性,數據的處理都是在計時過程里//判斷引導碼(或重復碼)是否正確,如果不正確,則設置出錯標志位,并退出中斷程序if((high_level_time<8500)II(high_level_time>9500)II(Iow_level_time<1000)II(Iow_level_time>5000)){return1://因是引導碼出錯,所以直接初始化后重新開始測試}
//——————————————————//對是引導碼還是重復碼進行判斷。如果是重復碼,就跳過后面數據的讀取if((Iow_level—time>1000)&&(Iow_level_time<3500))repeat_code_detected=1:
if((Iow_level_time>4000)&&(Iow_level_time<5000))Ioad_code_detected=1;if(repeat_code_detected==1)return1;//直接結束,temp1=uPD6121_read_code_8();//讀后面的系統、按健等數據,temp2=uPD6121_read_code_8();teMP3=uPD6121_read_code_8();temp4=uPD6121_read_code_8();TR1=0:
if(decode_error==1)return1://無論是哪部分解碼出錯,都是重新開始if((temp1!=Ntemp2)II(temp3!
=~temp4)){return1;}
sys_code=temp1:
key_code=temp3;data_available=1;return0:

如圖5所示,是我們完成紅外線實驗所必需的設備,準備好硬件設備后,我們將紅外線解碼控制程序通過A51編程器燒入AT89S51單片機芯片,然后將芯片插到增強型51實驗板上通電運行即可。
圖6為增強型51實驗板做紅外解碼電路,從而進行數碼管顯示的實驗電路板。
最后,要提醒大家一下,在做紅外實驗需要注意的是:不同的紅外線遙控器編碼方式可能不同,你可能會發現有很多紅外線遙控器的外表幾乎都一樣。
但對于同一電器設備卻有些能用,有些不能用,這就是因為遙控器內部使用了不同的編碼芯片的原因,或許你會想到用家中的電視機或空調的遙控器來完成紅外線解碼的實驗,但你必須得事先知道該遙控器的紅外線編碼芯片是什么類型的,否則就比較麻煩了,而現在眾多紅外線遙控器廠商為了保護自己的知識產權已將編碼芯片打磨,這對我們DIY愛好者來說就不太有利了。圖5中的紅外線遙控器為uPD6121紅外編碼芯片。

 

用增強型51實驗板實現紅外線遙控Infrared signal receiver

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲国产一成人久久精品| 午夜精品久久久久久久久久久| 亚洲欧洲一区二区三区在线观看| 国产亚洲成精品久久| 欧美色欧美亚洲另类二区| 欧美va亚洲va国产综合| 久久这里只有| 久久久久久久999| 欧美伊人久久久久久久久影院| 亚洲制服丝袜在线| 亚洲一区二区在线视频| 亚洲影院色在线观看免费| 亚洲一区二区av电影| 亚洲一区二区免费视频| 亚洲视频碰碰| 亚洲一区图片| 午夜伦欧美伦电影理论片| 亚洲欧美中文另类| 亚洲欧美国产毛片在线| 亚洲欧美在线网| 亚洲欧美另类综合偷拍| 亚洲男女自偷自拍| 欧美亚洲在线| 久久国产一区| 久久亚洲精品一区二区| 久久综合中文字幕| 欧美激情第8页| 欧美日韩国内| 国产精品v欧美精品v日韩 | 国产美女一区二区| 国产精品久久久久久久久久ktv | 欧美三级电影一区| 亚洲欧美在线aaa| 韩国av一区二区| 激情久久影院| 亚洲国产精品久久| 亚洲国产精彩中文乱码av在线播放| 亚洲观看高清完整版在线观看| 一区二区三区欧美在线| 一区二区三区视频在线| 亚洲午夜一区二区三区| 亚洲欧美在线另类| 久久成年人视频| 亚洲国产毛片完整版| 亚洲精品日韩欧美| 中文在线不卡视频| 篠田优中文在线播放第一区| 久久精品女人的天堂av| 美日韩免费视频| 欧美日韩成人在线| 国产精品社区| 一区精品久久| 日韩午夜免费视频| 亚洲欧美亚洲| 亚洲国产精品热久久| 在线一区欧美| 久久精品av麻豆的观看方式 | 国产精品高潮呻吟久久| 国产一区二区三区av电影| 亚洲国产网站| 亚洲伊人伊色伊影伊综合网| 亚洲盗摄视频| 亚洲桃色在线一区| 久久久综合激的五月天| 欧美日韩裸体免费视频| 国产午夜精品全部视频播放| 91久久综合| 性欧美大战久久久久久久久| 亚洲日本成人| 香蕉久久一区二区不卡无毒影院 | 欧美精品少妇一区二区三区| 国产精品视频内| 尤物yw午夜国产精品视频明星| 夜色激情一区二区| 久久精品国产99国产精品| 亚洲天堂视频在线观看| 久久久久综合| 国产精品久久久久久久免费软件 | 亚洲午夜影视影院在线观看| 久久综合久久久久88| 国产精品极品美女粉嫩高清在线| 在线电影院国产精品| 亚洲女女做受ⅹxx高潮| 一本色道久久综合精品竹菊| 亚洲人成免费| 久久精品麻豆| 亚洲一区二区视频| 欧美成人性生活| 国产日韩在线看| 在线视频亚洲欧美| 亚洲免费精品| 麻豆精品网站| 国产一区清纯| 亚洲欧美激情视频| 亚洲天堂网在线观看| 欧美激情麻豆| 在线看一区二区| 欧美影院久久久| 亚洲欧美视频在线观看视频| 欧美激情在线播放| 在线观看视频一区二区| 久久黄色小说| 久久精品视频在线免费观看| 国产精品极品美女粉嫩高清在线 | 亚洲午夜羞羞片| 一区二区欧美在线| 你懂的网址国产 欧美| 黄色成人av网站| 午夜精品成人在线视频| 亚洲欧美清纯在线制服| 欧美日韩一区精品| 亚洲日本一区二区三区| 亚洲日韩第九十九页| 免费av成人在线| 1769国内精品视频在线播放| 久久国产直播| 久久免费少妇高潮久久精品99| 国产欧美一区二区视频| 亚洲一区二区三区精品在线| 亚洲视频精选| 国产精品草莓在线免费观看| 一本一本久久a久久精品牛牛影视| 亚洲裸体视频| 欧美精品入口| 亚洲精选视频免费看| 一区二区三区国产| 欧美日韩一区在线视频| 99re热这里只有精品视频| 在线视频你懂得一区| 欧美女同在线视频| 亚洲黄色尤物视频| 一区二区欧美激情| 欧美亚男人的天堂| 日韩视频欧美视频| 午夜精品久久久久| 国产精品一区在线观看| 亚洲欧美色一区| 久久久水蜜桃| 亚洲第一福利在线观看| 999在线观看精品免费不卡网站| 欧美精选一区| 一区二区三区欧美在线| 欧美一级理论片| 国产亚洲二区| 亚洲福利精品| 欧美成人dvd在线视频| 亚洲精品久久久久中文字幕欢迎你 | 欧美日韩亚洲高清一区二区| 99这里只有久久精品视频| 中文久久精品| 国产麻豆综合| 亚洲国产女人aaa毛片在线| 欧美大尺度在线| 99成人在线| 欧美一级大片在线观看| 国外成人性视频| 日韩视频亚洲视频| 国产精品国产三级国产普通话三级 | 一区二区毛片| 国产精品免费久久久久久| 欧美亚洲日本国产| 欧美大片在线看| 一区二区三区黄色| 久久久久久久国产| 亚洲清纯自拍| 亚洲欧洲av一区二区| 激情成人亚洲| 欧美成人精品一区二区| 黄色av成人| 一本一本久久a久久精品牛牛影视| 欧美日韩综合久久| 欧美一区2区视频在线观看| 欧美1区2区视频| 亚洲视频在线观看网站| 久久综合999| 日韩午夜av在线| 欧美在线观看你懂的| 亚洲国产精品美女| 羞羞漫画18久久大片| 在线看无码的免费网站| 亚洲欧美一区二区三区久久| 怡红院精品视频在线观看极品| 亚洲一区在线直播| 韩日成人av| 亚洲一区一卡| 亚洲国产精品ⅴa在线观看| 欧美一二三区在线观看| 91久久精品国产91久久性色| 久久国产高清| 亚洲裸体俱乐部裸体舞表演av| 久久精品99久久香蕉国产色戒| 亚洲精品四区| 久久人人精品| 在线一区二区三区做爰视频网站| 老司机凹凸av亚洲导航| 亚洲香蕉伊综合在人在线视看| 欧美搞黄网站| 亚洲第一福利视频| 国产伦精品一区二区三区高清版| 99精品国产热久久91蜜凸|