<strong id="0toem"><dl id="0toem"></dl></strong><b id="0toem"><menuitem id="0toem"></menuitem></b>

      <b id="0toem"><menuitem id="0toem"></menuitem></b>
    1. <code id="0toem"><abbr id="0toem"></abbr></code>
      <strong id="0toem"><dl id="0toem"></dl></strong>
      <kbd id="0toem"></kbd>
              1. <code id="0toem"></code>
                <th id="0toem"><progress id="0toem"></progress></th><strong id="0toem"><form id="0toem"></form></strong>

                <th id="0toem"></th>
              2. 131 1300 0010
                其他
                當(dāng)前位置: 首頁>> 元件技術(shù)>>其他>>
              3. 導(dǎo)航欄目
              4. 二極管
              5. 整流橋
              6. MOS管
              7. 其他
              8. 基于51單片機(jī)的紅外線遙控器解碼程序設(shè)計(jì)
                基于51單片機(jī)的紅外線遙控器解碼程序設(shè)計(jì)
              9. 基于51單片機(jī)的紅外線遙控器解碼程序設(shè)計(jì)
              10.   發(fā)布日期: 2019-10-16  瀏覽次數(shù): 2,012

                下面是一個(gè)對(duì)51實(shí)驗(yàn)板配套的紅外遙控器的解碼程序,它可以把紅外遙控器每一個(gè)按鍵的鍵值讀出來,并且通過實(shí)驗(yàn)板上P1口的8個(gè)LED顯示出來,在解碼成功的同時(shí)并且能發(fā)出“嘀嘀嘀”的提示音。

                基于51單片機(jī)的紅外線遙控器解碼程序設(shè)計(jì)

                 

                ;=================================================

                ; 紅外遙控接收

                ;=================================================

                ; ew51仿真編程器 配套實(shí)驗(yàn)板學(xué)習(xí)例程

                ;

                ; 中山單片機(jī)學(xué)習(xí)網(wǎng) 智佳科技 逸風(fēng)

                ;

                ; http://www.zsMCU.com

                ; E-mail:[email protected]

                ;=================================================

                ORG 0000H

                MAIN:

                JNB P2.2,IR ;遙控掃描

                LJMP MAIN ;在正常無遙控信號(hào)時(shí),一體化紅外接收頭輸出是高電平,程序一直在循環(huán)。

                ;=================================================

                ; 解碼程序

                IR:

                ;以下對(duì)遙控信號(hào)的9000微秒的初始低電平信號(hào)的識(shí)別,波形見圖5。

                MOV R6,#10

                IR_SB:

                ACALL DELAY882 ;調(diào)用882微秒延時(shí)子程序

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

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

                ;識(shí)別連發(fā)碼,和跳過4.5ma的高電平。

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

                ACALL DELAY2400

                JNB P2.2,IR_Rp ;這里為低電平,認(rèn)為是連發(fā)碼信號(hào),見圖6。

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

                ;以下32數(shù)據(jù)碼的讀取 ,0和1的識(shí)別 請(qǐng)看圖2

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

                MOV R2,#4

                IR_4BYTE

                MOV R3,#8

                IR_8BIT:

                JNB P2.2,$ ;等待地址碼第一位的高電平信號(hào)

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

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

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

                LCALL DELAY1000

                IR_8BIT_0:

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

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

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

                DJNZ R3,IR_8BIT ;接收地址碼的高8位

                INC R1 ;對(duì)R1中的值加1,換下一個(gè)RAM

                DJNZ R2,IR_4BYTE ;接收完16位地址碼和8位數(shù)據(jù)碼和8位數(shù)據(jù),

                ;存放在1AH/1BH/1CH/1DH的RAM中

                ;解碼成功

                JMP IR_GOTO

                IR_Rp:

                ;這里為重復(fù)碼執(zhí)行處

                ;按住遙控按鍵時(shí),每過108ms就到這里來

                JMP IR_GOTO

                IR_ERROR:

                ;錯(cuò)語退出

                LJMP MAIN ;退出解碼子程序

                ;=================================================

                ;遙控執(zhí)行部份

                IR_GOTO:

                ;這里還要判斷1AH和1BH 兩個(gè)系統(tǒng)碼或用戶碼,用于識(shí)別不同的遙控器

                ;MOV A,1AH

                ;CJNE A,#xxH,IR_ERROR ;用戶碼1不對(duì)則退出

                ;MOV A,1BH

                ;CJNE A,#xxH,IR_ERROR ;用戶碼2不對(duì)則退出

                ;判斷兩個(gè)數(shù)據(jù)碼是否相反

                MOV A,1CH

                CPL A

                CJNE A,1DH,IR_ERROR ;兩個(gè)數(shù)據(jù)碼不相反則退出

                ;遙控執(zhí)行部份

                ;MOV A,1DH ;判斷對(duì)應(yīng)按鍵

                ;CJNE A,#xxH,{1}6

                ;LJMP -à跳到對(duì)應(yīng)按鍵執(zhí)行處

                ;CJNE A,#xxH,{1}6

                ;LJMP -à跳到對(duì)應(yīng)按鍵執(zhí)行處

                ;。

                MOV P1,1DH ;將按鍵的鍵值通過P1口的8個(gè)LED顯示出來!

                CLR P2.3 ;蜂鳴器鳴響-嘀嘀嘀-的聲音,表示解碼成功

                LCALL DELAY2400

                LCALL DELAY2400

                LCALL DELAY2400

                SETB P2.3 ;蜂鳴器停止

                ;清除遙控值使連按失效

                MOV 1AH,#00H

                MOV 1BH,#00H

                MOV 1CH,#00H

                MOV 1DH,#00H

                LJMP MAIN

                ;=================================================

                ; 延時(shí)子程序

                ;=============================882

                DELAY882: ;1.085x ((202x4)+5)=882

                MOV R7,#202

                DELAY882_A:

                NOP

                NOP

                DJNZ R7,DELAY882_A

                RET

                ;=============================1000

                DELAY1000: ;1.085x ((229x4)+5)=999.285

                MOV R7,#229

                DELAY1000_A:

                NOP

                NOP

                DJNZ R7,DELAY1000_A

                RET

                ;=============================2400

                DELAY2400: ;1.085x ((245x9)+5)=2397.85

                MOV R7,#245

                DELAY2400_A:

                NOP

                NOP

                NOP

                NOP

                NOP

                NOP

                NOP

                DJNZ R7,DELAY2400_A

                RET

                END
                來源;21ic


              11. ·上一篇:
                ·下一篇:
              12. 其他關(guān)聯(lián)資訊
                深圳市日月辰科技有限公司
                地址:深圳市寶安區(qū)松崗鎮(zhèn)潭頭第二工業(yè)城A區(qū)27棟3樓
                電話:0755-2955 6626
                傳真:0755-2978 1585
                手機(jī):131 1300 0010
                郵箱:[email protected]

                深圳市日月辰科技有限公司 版權(quán)所有:Copyright?2010-2023 www.xydibang.com 電話:13113000010 粵ICP備2021111333號(hào)
                <strong id="0toem"><dl id="0toem"></dl></strong><b id="0toem"><menuitem id="0toem"></menuitem></b>

                    <b id="0toem"><menuitem id="0toem"></menuitem></b>
                  1. <code id="0toem"><abbr id="0toem"></abbr></code>
                    <strong id="0toem"><dl id="0toem"></dl></strong>
                    <kbd id="0toem"></kbd>
                            1. <code id="0toem"></code>
                              <th id="0toem"><progress id="0toem"></progress></th><strong id="0toem"><form id="0toem"></form></strong>

                              <th id="0toem"></th>
                            2. 无码视频在线免费播放 | 操操操操操操操操操逼 | 中文字字幕在线中文乱码 | 麻豆乱伦视频 | 操女明星爽不爽操死你操得爽死你 |