搜索
bottom↓
回复: 3

厂家生产一个6122的红外遥控,我解了一下,有点不准确。程序在下,高手指点

[复制链接]

出0入0汤圆

发表于 2009-4-1 20:05:02 | 显示全部楼层 |阅读模式
;-------------------------------------------------------
;2009 04 01 红外遥控器解码         6122
;-------------------------------------------------------



        IR_DATA EQU 50H

        ORG                0000H

        LJMP          MAIN

        ORG         0003H
        NOP
        NOP
        LJMP         W_INT0                ;外中断0,红外

        ORG     0100H


MAIN:       
        MOV SP,#60H
        SETB EA
        SETB EX0
        SETB PX0
        SETB IT0
MAIN1:
        LJMP MAIN1       



W_INT0:
        PUSH ACC
        PUSH PSW
        CLR EX0
        JB P3.2,IR_RET
;---------------------------------------------

        MOV R6,#09H
IR_LEAD:                                ;9ms低电平引导码
        LCALL DELAY900
        JB P3.2,IR_RET
        DJNZ R6,IR_LEAD

        JNB P3.2,$                        ;9ms结束

        LCALL DELAY2250                ;2.25ms,判断是否是重复码

        JNB P3.2,IR_CONTINUE;重复码
        JB P3.2,$                        ;引导码4.5ms结束


                              
    MOV     R1,#1AH                ;以下为数据接收      
    MOV     R2,#4
IR_4BYTE:
    MOV     R3,#8
IR_8BIT:   
    JNB     P3.2,$                ;低电平滤去只看高电平         
    NOP
    NOP
    LCALL  DELAY900     
    MOV    C,P3.2         
    JNC     IR_8BIT_0      
    NOP
    NOP
    LCALL  DELAY900
IR_8BIT_0:
    MOV    A,@R1           
    RRC    A               
    MOV    @R1,A           
    DJNZ   R3,IR_8BIT
             
    INC    R1              
    DJNZ   R2,IR_4BYTE     

IR_CONTINUE:
          MOV    A,1CH          
          CPL    A
          CJNE   A,1DH,IR_RET
          MOV    IR_DATA,1CH

;        CLR P3.1
;        lcall DELAY900
;        setb p3.1
        MOV A,1Ch
        MOV P1,A

IR_RET:
        SETB EX0
        POP PSW
        POP ACC
        RETI




DELAY2250:                        ;2.25ms
        MOV R6,#226
DELAY2250_A:
        NOP
        NOP
        NOP
        NOP
        NOP
        NOP
        NOP
        NOP
        DJNZ R6,DELAY2250_A
        RET


DELAY900:
    MOV R7,#223;223=900
DELAY900_A:
    NOP
    NOP
    DJNZ   R7,DELAY900_A
    NOP
    NOP
    NOP
    RET
    END

出0入0汤圆

 楼主| 发表于 2009-4-1 20:05:37 | 显示全部楼层
12M晶振,51解的

出0入0汤圆

 楼主| 发表于 2009-4-1 20:06:57 | 显示全部楼层
点击此处下载 ourdev_431628.pdf(文件大小:288K) (原文件名:TC6122.pdf)

这是6122的资料

出0入0汤圆

发表于 2009-6-6 17:34:41 | 显示全部楼层
是不是
IR_8BIT_0:  
    MOV    A,@R1            
    RRC    A   这里要RLC  A            
    MOV    @R1,A            
    DJNZ   R3,IR_8BIT
               
    INC    R1               
    DJNZ   R2,IR_4BYTE
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-7 17:49

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表