wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

紅外遙控解碼器設計

作者:佚名   來源:本站原創   點擊數:  更新時間:2010年04月08日   【字體:

     你家里是否有一個電視機遙控器或者空調機遙控器呢?你是否也想讓它遙控其他的電器甚至讓它遙控您的電腦呢?那好,跟我一起做這個“紅外遙控解碼器”。

    該小制作所需要的元件很少:單片機TA89C2051一只,RS232接口電平與TTL電平轉換心片MAX232CPE 一只,紅外接收管一只,晶振11.0592MHz,電解電容10uF4只,10uF一只,電阻1K1個,300歐姆左右1個,瓷片電容30P2個。發光二極管8個。價錢不足20元。

電路原理介紹:
        主控制單元是單片機AT89C2051,中斷口INT0跟紅外接受管U1相連,接收紅外信號的脈沖,8個發光二極管作為顯示解碼輸出(也可以用來擴展接其他控制電路),U3是跟電腦串行口RS232相連時的電平轉換心片,9、10腳分別與單片機的1、2腳相連,(1腳為串行接收,2腳為串行發送),MAX232CPE的7、8腳分別接電腦串行口的2(接收)腳、3(發送腳)。晶振采用11.0592MHz,這樣才能使得通訊的波特率達到9600b/s,電腦一般默認值是9600b/s、8位數據位、1位停止位、無校驗位。電路就這么簡單了,現在分析具體的編程過程吧。
如圖所示,panasonic遙控器的波形是這樣的(經過反復測試的結果)。
         開始位是以3.6ms低電平然后是3.6ms高電平,然后數據表示形式是0.9ms低電平0.9ms高電平周期為1.8ms表示“0”, 0.9ms低電平 2.4ms高電平周期為3.3ms表示“1”,編寫程序時,以大于3.4ms小于3.8ms高電平為起始位,以大于2.2ms小于2.7ms高電平表示“1”,大于0.84ms小于1.11ms高電平表示“0”。因此,我們主要用單片機測量高電平的長短來確定是“1”還是“0”即可。定時器0的工作方式設置為方式1:mov tmod,#09h,這樣設置定時器0即是把GATE置1,16位計數器,最大計數值為2的16次方個機器周期,此方式由外中斷INT0控制,即INT0為高時才允許計數器計數。比如:
jnb p3.2,$
jb p3.2,$
clr tr0
這3條指令就可以測量一個高電平,接下來讀取計數值TH0,TL0就可以分辨是起始位還是“1”或“0”。在確定碼表之前,您可以使用P0口的8個發光二極管來顯示編碼,16位編碼分兩次顯示:
mov p0,keydata
acall delay_1s ;//1ms延時子程序
mov p0,keydata+1
ljmp main
根據P0相繼的兩次顯示的編碼,記錄每個按鍵的編碼,形成編碼表,即遙控器編碼的解碼完畢。碼表確定之后,以后接收到遙控器的編碼之后,就與碼表比較,找到匹配的碼項,并把該碼項對應的順序號輸出到P0口,同時也把順序號向串行口輸出到電腦,電腦接收該數據后由串口軟件決定如何處理。
          程序不長,下面是完整的程序和注釋:(先看流程圖)
keydata equ 30h ;//該地址和31H地址用來存放遙控器按鍵編碼。
org 00h
main:
 mov keydata,#0 ;// 清零
 mov tmod ,#09h       ;//設置定時0方式1,GATE=1
      mov  r7,#0  ;//計數器,用來計數是否滿8位
 mov  r6,#0  ;//計數器,用來計數是否滿2字節(解16位編碼)
 jb p3.2,$  ;//是否為低電平
again:    ;//如果為低,繼續往下面執行
 mov tl0,#0  ;//清零TL0
 mov th0,#0  ;//清零TH0
 setb tr0  ;//開啟定時器0
 jnb p3.2,$  ;//等待高電平到來
 jb p3.2,$ ;//高電平到來,此時開始計數
 clr tr0 ;//高電平結束,停止計數
 mov a,th0 ;//讀取th0 值,TL0忽略不計 
 clr c  ;//
 subb a,#12 ;//
 jc again ;//th0<12則轉,即小于3.4ms,你可以算一下這個時間
 mov a,#14 ;//
 clr c  ;//
 subb a,th0 ;//和14比較,如果TH0>14則大于3.8ms
        jc again    ;//大于3.8ms,從新再檢測
nextbit:  ;//起始位找到了,然后下一位
 mov tl0,#0 ;//
 mov th0,#0 ;//
 setb tr0 ;//啟動定時器
 jnb p3.2,$ ;//等待高電平
 jb p3.2,$  ;//高電平到來,此時開始計數
 clr tr0 ;//高電平結束,停止計數
 mov a,th0 ;//讀取計數值,TL0忽略不計
 clr c  ;//
 subb a,#8 ;//th0和8比較
 jc next  ;;;;//若 <2.2ms則轉,再判斷是否大于0.84ms
 mov a,#10 ;//再跟10比較
 clr c  ;//
 subb a,th0 ;//
 jc again ;;;;;;;//若 >2.7ms,則放棄,從新檢測
 mov a,keydata ;// 符合大于2.2ms 小于2.7ms,即為“1”
 setb c        ;//C = 1
 rrc a  ;//把1移位進A
 mov keydata,a ;//保存
 inc r7  ;//計數器加1
 cjne r7,#8,nextbit ;//是否滿8位
 inc r6   ;//計數加1
 cjne r6,#2,last8 ;//是否滿兩字節
 sjmp seach  ;//不滿兩字節,再新采集
last8:    ;//滿1字節,再接下來第二字節
 mov keydata+1,a ;//把第一字節編碼數據保存到31h里
 mov r7,#0  ;//計數器R7清零
 sjmp nextbit  ;//繼續采集數據
next:      ;//小于2.2ms時轉到這里
 mov a,th0  ;//讀取計數值TH0
 swap a   ;//高4位與低4位對換
 mov r1,a  ;//保存到R1
 anl tl0,#0f0h  ;//取TL0高4位,低4位忽略不計
 mov a,tl0  ;//
 clr c   ;//
 rrc a  ;//
 rrc a  ;//
 rrc a  ;//
 rrc a  ;//
 add a,r1 ;//
 mov r1,a ;//
 subb a,#30 ;//以上幾行是把TH0的低4位和TL0的高4位合并為1字節作為計數值
 jc nextbit ; //判斷是否 <0.84ms,是則放棄,繼續采集
 mov a,r1 ;//否
 clr c  ;//
 cjne a,#64,continue   ;//跟64比較
continue:  ;//
 jnc nextbit ;  //a>64表示采樣值 >1.11ms  放棄
 mov a,keydata  ;//否則 ,符合位“0”
 clr c          ;//C  = 0
 rrc a   ;//把零右移進A
 mov keydata,a  ;//保存
 inc r7   ;//計數器加1
 cjne r7,#8,nextbit ;//是否滿8位
 inc r6   ;//計數器加1
 cjne r6,#2,last_8 ;//是第一字節已經滿
 sjmp seach  ;//
last_8:    ;//如果為第二字節
 mov keydata+1,a ;//則保存第一字節到31h
 mov r7,#0  ;//清零R7
 sjmp nextbit  ;//
seach:    ;//匹配按鍵編碼
 mov r0,#-2  ;//按鍵編碼字節個數計數器
 mov r1,#-1  ;//按鍵順序計數器
seach1:   ;//
        inc r0  ;//
seach2:   ;//
 inc r0   ;//
 inc r1   ;//
 cjne r1,#29,compare ;//是否R1=29 
 sjmp exit0  ;//
compare:   ;//開始匹配
  mov a,r0  ;//
 mov dptr,#keycode ;//地址指針指向碼表首址
 movc a,@a+dptr ;//取碼
 cjne a,keydata,seach1 ;//比較
 inc r0   ;//R0+1,再比較下一字節(每個按鍵編碼為2字節)
 mov a,r0  ;//
 ;mov dptr,#keycode ;//
 movc a,@a+dptr ;//比較
 cjne a,keydata+1,seach2 ;//是否匹配,不匹配則繼續跟下一字節比較
 mov p1,r1         ;//如果匹配,把按鍵順序號輸出到p1
send:    ;//
 mov tmod,#20h     ;   //設置timer 1,mode 2
 mov tl1,#0fdh  ;//設置定時器初值
 mov th1,#0fdh  ;//
 mov scon,#01010000b;//以上設置,即設置串口波特率系數為:9600,8,1,0
 setb tr1  ;//啟動定時器1
loop_s:  ;//
 mov sbuf,r1    ;//把R1(按鍵順序號)輸出到串口
 jnb ti,$  ;//等待是否發送完畢
 clr ti   ;//發送完畢,清零TI
exit0:    ;//
ljmp main   ;//循環

keycode:   ;//每兩字節代表一個按鍵的編碼
db 11111000b,00000000b,    11111100b,00000000b,    11111001b,11000000b
db 11111100b,11000000b,    11111010b,00000000b,    11111010b,00100000b
db 11111010b,01000000b,    11111010b,01100000b,    11111010b,10000000b
db 11111010b,10100000b,    11111010b,11000000b,    11111010b,11100000b
db 11111011b,00000000b,    11111011b,00100000b,    11111011b,01000000b
db 11111011b,01100000b,    11111111b,01100000b,    11111111b,10100000b
db 10001100b,10001110b,    10001101b,11101110b,    10001100b,10101110b
db 10001101b,11001110b,    11111000b,11100000b,    11111100b,10000000b
db 11111100b,01000000b,    11111001b,10100000b,    11111100b,10100000b
db 11111100b,01100000b
end
---------------------------------------------------------------------------------
各種遙控器編碼不同,如果你采用的是其他遙控器,修改幾個參數即可(當然按鍵的編碼表肯定不同了),即計數器的值不同,不過有的遙控器有機器碼(機器碼每個按鍵都是一樣的),此時可以跳過機器碼的采集。最后有一點想提一下的是,剛開始不知道遙控器的編碼是比較麻煩的,筆者在“雙龍電子“網站下載了個聲卡示波器,用他可以一目了然觀看遙控器的波形,測量其脈沖寬度,有了它確實方便很多,該軟件可以到雙龍公司網站http://www.sl.com.cn/免費下載使用。如果你想用遙控器遙控電腦,你可以自己編寫一個接受串行口應用軟件,或者你可以直接下載使用Girder這個軟件,該軟件是專門為串口遙控器做的,很好用,下載地址為:http://www.girder.nl/,你可以利用這個軟件定義遙控器來遙控你電腦移動鼠標、鍵盤操作、上網瀏覽、打開播放器、關機等。

 

關閉窗口
免费中文字幕| 色琪琪久久se色| 男男互摸gay网站| 午夜精品小视频| 成人黄色短视频| 粉嫩虎白女毛片人体| 国产精品yjizz| 欧美激情中文网| 欧美一区二区三区视频| 国产精品视频免费看| 爽爽淫人综合网网站| 午夜精品影视国产一区在线麻豆| 国产精品—色呦呦| 中文字幕在线观| 三级毛片电影网站| 无码国产伦一区二区三区视频| 久久精品无码人妻| 青青草视频播放| 免费在线激情视频| 日韩福利视频| 91九色综合久久| 久久99热精品这里久久精品| 亚洲高清不卡av| 欧美又粗又大又爽| 亚洲视频一二三区| 丁香网亚洲国际| 午夜亚洲精品| 911精品美国片911久久久 | 天堂蜜桃91精品| 亚洲人成网亚洲欧洲无码| 美女搞黄视频在线观看| 激情在线视频| 超薄肉色丝袜一二三| 午夜在线观看av| 日韩精品一区二区在线视频| 免费不卡亚洲欧美| 亚洲a在线观看| 欧美中文字幕在线| 久久久久久久久久久免费| 亚洲精品小视频| 亚洲аv电影天堂网| 在线观看一区二区精品视频| 亚洲欧美另类图片小说| 久久精品在线观看| 97精品电影院| 懂色av一区二区三区免费看| 青青草伊人久久| 亚洲综合日本| 精品白丝av| 亚洲一区二区日韩| 日产精品一区二区| 欧美色图国产精品| 激情综合网站| 久久99国产成人小视频| 欧美精品中文| 欧美偷窥清纯综合图区| 国产66精品| 欧洲亚洲视频| 精品在线手机视频| 伊人精品一区| 成人免费在线播放| 国产精品毛片久久| 欧美精品三区| 欧美精品观看| 亚洲激情不卡| 国产亚洲在线观看| 久久夜色精品| 老司机免费视频一区二区三区| 日韩精品亚洲一区| 三级久久三级久久久| 日本在线播放一区二区三区| 日本欧美一区二区| 黑人精品欧美一区二区蜜桃| 国内外成人在线| 成人av资源在线| 久久精品夜色噜噜亚洲aⅴ| 久久婷婷成人综合色| 欧美激情资源网| 亚洲精品日韩一| 亚洲成人免费看| 91成人免费电影| 在线成人免费观看| 亚洲激情在线观看| 精一区二区三区| 日韩av电影天堂| 国产高清无密码一区二区三区| 成人免费视频视频| 欧美高清在线视频| 亚洲国产日韩在线一区模特| 日韩欧美中文第一页| 欧美区在线观看| 亚洲电影第1页| 伊人久久综合97精品| 欧美极品少妇xxxxⅹ免费视频 | 亚洲一二三四久久| 欧美小视频在线| 日韩精品在线一区二区| 亚洲深夜福利视频| 欧美精品成人在线| 成人写真视频福利网| 日本10禁啪啪无遮挡免费一区二区| 爱爱爱视频网站| 黄色三级视频在线| 国产精品密蕾丝袜| 久草视频在线观| 成人免费视频国产| 国产精品入口麻豆高清| a优女a优女片| 欧美成人精品一区二区男人看| 自拍偷拍亚洲视频| 国产aⅴ精品一区二区三区久久| 精品99视频| 99这里都是精品| 天天操天天干天天综合网| 日韩免费电影网站| 欧美大片在线影院| yellow视频在线观看一区二区| 亚洲精品国产精品久久| 在线黄色免费观看| 午夜激情福利网| 国产精品欧美久久久久天天影视| 中文字幕久热在线精品| 日本1区2区| xxxx视频在线| 最新亚洲精品| 麻豆传媒一区二区三区| 综合激情成人伊人| 精品欧美乱码久久久久久| 久久久久久国产| 麻豆精品传媒视频| 日本中文字幕精品—区二区| www青青草原| 少妇人妻一区二区| 成人福利免费网站| 国内激情视频在线观看| 欧美激情在线精品一区二区三区| 日韩**一区毛片| 亚洲黄色av一区| 亚洲精品一区二区三区婷婷月| 国产成人精品免费久久久久| 亚洲一区美女| 欧美xxxxx精品| 中文字幕观看在线| www狠狠操| √8天堂资源地址中文在线| 希岛爱理av免费一区二区| 日韩专区在线视频| 亚洲va欧美va人人爽| 中文字幕成人精品久久不卡 | 亚洲日本视频在线| 在线综合亚洲| 一区二区三区四区精品在线视频| 日韩av在线看| 波多野结衣久草一区| 国产精品一色哟哟| 国产精品无码无卡无需播放器| 国产国语亲子伦亲子| 成人无码精品1区2区3区免费看| 日韩一级片中文字幕| 网站黄色在线观看| 欧美xxxx少妇| 欧美.日韩.国产.一区.二区| 久久免费看少妇高潮| 欧美在线免费视屏| 热99在线视频| 噜噜噜久久亚洲精品国产品麻豆| 伊人在线视频观看| 欧美videos粗暴高清性| 91社区在线观看播放| 精品国产乱码久久久久久1区2匹| 国产91高潮流白浆在线麻豆| 在线成人午夜影院| 91久久国产精品| 日本www.色| 无码人妻黑人中文字幕| 天天干夜夜夜操| 九九热这里有精品| 免费的成人av| 欧美久久久久久久久久| 国产精品自拍网| 99视频在线免费| 亚洲专区在线播放| 国产对白在线正在播放| 老司机凹凸av亚洲导航| av成人免费在线| 亚洲成人网av| 日本一区二区三区视频在线播放 | 美国做受三级的视频播放| 北岛玲heyzo一区二区| 久久国产直播| 欧美日韩亚洲综合在线 欧美亚洲特黄一级 | 国产精品伦理一区二区三区| 123区在线| 青青草97国产精品免费观看| 欧美日韩1234| 国产精品三区四区| 一级性生活毛片| 国产精品18久久久久网站| 电影网一区二区| 国产在线精品视频| 亚洲美女激情视频| 欧美日韩在线免费观看视频| 久久精品国产亚洲AV无码麻豆 | 亚洲影视一区二区| av在线电影播放| 亚洲性色视频| 欧美亚洲综合网| 国产精品一区二区三区不卡| 国产特黄级aaaaa片免| 99久久国产综合精品女小说 | 中文字幕在线视频不卡| 色135综合网| 婷婷开心久久网| 成人精品在线视频| 国产jjizz一区二区三区视频| 国产精品入口麻豆完整版| 欧美视频免费看| 国产日韩一级二级三级| 欧美高清电影在线看| 色婷婷一区二区三区av免费看| 天堂中文在线看| 亚洲精品中文字幕| 91色在线porny| 国语自产精品视频在免费| xxxx在线免费观看| 欧美成人禁片在线www| 国产精品xxx电影| 激情开心成人网| av亚洲精华国产精华| 久久久国产一区| 看欧美ab黄色大片视频免费| 图片区 小说区 区 亚洲五月| 女人让男人操自己视频在线观看| 国产精品一品视频| 欧美激情一级欧美精品| 国产免费一区二区三区最新6| 国产精品人人爱一区二区白浆| 国产成人在线中文字幕| 精品久久久久久中文字幕| 国产综合色一区二区三区| 日本亚洲欧美在线| 成年网站在线| 国产在线国偷精品产拍免费yy| 久久久精品美女| 免费啪视频在线观看| 人日人天天爽| 色999日韩| 精品日韩在线一区| 91九色丨porny丨国产jk| аⅴ成人天堂中文在线| 精品91福利视频| 亚洲v中文字幕| 亚洲国产日韩综合一区| 国产女人爽到高潮a毛片| 欧美va在线观看| 中文字幕一区二区三| 国产精品99久久久久久久| 人人爽人人爽人人片av| 欧美另类tv| 国产精品视频第一区| 亚洲影视九九影院在线观看| 韩国av免费观看| 国产美女福利在线观看| 中文字幕精品一区二区精品绿巨人 | 亚洲国产综合在线| 视频在线观看成人| 亚洲AV无码一区二区三区性| 日韩免费在线电影| 精品久久久视频| 精品人妻人人做人人爽| 玖玖精品国产| 91日韩欧美| 亚洲欧美国产精品久久久久久久| 亚洲精品免费一区亚洲精品免费精品一区| 福利视频电影| 亚洲激情社区| 欧美国产日韩中文字幕在线| 国产人与禽zoz0性伦| 综合久久2o19| 亚洲同性同志一二三专区| 久久综合中文色婷婷| 欧美 日韩 国产 在线| 国产66精品| 亚洲第一中文字幕在线观看| 不卡的一区二区| 亚洲精品套图| 久久久国产一区二区三区四区小说| 超碰97在线播放| 亚洲男人第一天堂| 蜜臀91精品国产高清在线观看| 亚洲国产欧美日韩精品| 苍井空张开腿实干12次| 500福利第一精品导航| 丁香啪啪综合成人亚洲小说| 97超碰资源| 人妻一区二区三区四区| 日韩国产欧美一区二区| 久久精品电影网| 福利所第一导航| 成人做爰视频www| 国产精品久久国产愉拍| 欧美日韩国产成人| 国产性猛交普通话对白| 高清成人在线| 91麻豆精品国产自产在线| 成人做爰69片免费| 97超碰国产一区二区三区| 亚洲欧洲一区二区在线播放| 男女啪啪免费观看| 麻豆av资源| 丁香婷婷综合五月| 色999五月色| 软萌小仙自慰喷白浆| 美女视频免费一区| 97se视频在线观看| 亚州欧美精品suv| 国产日韩欧美一区在线| 国产aⅴ夜夜欢一区二区三区 | 欧美一区日韩一区| 亚洲欧美在线不卡| caoporn-草棚在线视频最| 欧美色网一区二区| 久久久午夜精品福利内容| 大片免费在线看视频| 色哟哟亚洲精品| 国产真实乱人偷精品| 波多野结衣中文在线| 欧美日韩一区二区三区四区| 中文字幕a在线观看| 精品极品在线| 日韩欧美国产综合在线一区二区三区| 色婷婷免费视频| 午夜不卡影院| 日韩h在线观看| 久久久久噜噜噜亚洲熟女综合| 成人av在线播放| 在线电影中文日韩| 天天操天天爽天天干| 亚洲丁香日韩| 777精品视频| 韩国av永久免费| 日日夜夜一区二区| 久久久久高清| 18成年在线观看| 日本一区二区免费在线| 亚洲午夜无码av毛片久久| 青青草手机在线| 欧美视频你懂的| 天天操天天舔天天射| 亚洲伊人伊成久久人综合网| 久久久精品999| 亚洲国产视频一区二区三区| 国产一区二区精品| 欧美日韩亚洲在线| av三级影院| 亚洲一区二三区| 国产精品福利导航| 国产aa精品| 欧美高清视频在线| 欧美一级在线免费观看| 欧美aⅴ一区二区三区视频| 亚洲人成影视在线观看| 天海翼一区二区三区免费| 午夜精彩视频在线观看不卡| 亚洲制服丝袜在线播放| 国产精品日韩精品在线播放| 欧美大片免费看| 色婷婷激情五月| 国产成人在线色| 福利在线一区二区三区| 俺来也官网欧美久久精品| 亚洲图片欧美午夜| 国产精品久久久久久久成人午夜| 日韩一级欧洲| 亚洲一区二区四区| 国产精品高清无码| 欧美日韩岛国| 丝袜美腿玉足3d专区一区| 香蕉视频免费在线| 91麻豆精品国产综合久久久久久| 久久国产露脸精品国产| 欧美在线精品一区| 日本精品一区二区三区视频 | 黄色小网站91| 欧美日夜夜逼| 7777精品伊人久久久大香线蕉 | 欧美尿孔扩张虐视频| 国产精品视频网站| 国内a∨免费播放| 亚洲观看高清完整版在线观看| 欧美大波大乳巨大乳| 精品亚洲成人| 蜜桃麻豆www久久国产精品| 视频午夜在线| 亚洲国产一区二区三区四区| 一级淫片免费看| 国内精品第一页| 性生活免费在线观看| 亚洲高清影院| 国产欧美精品一区二区|