红外接收解码汇编

红外接收解码汇编

ID:9942991

大小:53.50 KB

页数:7页

时间:2018-05-16

红外接收解码汇编_第1页
红外接收解码汇编_第2页
红外接收解码汇编_第3页
红外接收解码汇编_第4页
红外接收解码汇编_第5页
资源描述:

《红外接收解码汇编》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、;遥控器控制显示123456789数据保持;***************************************************************************;*gehuiwy@163.comCreateby:葛辉*;***************************************************************************REC_DATAEQU20H;数码管段选的数据存放在片内RAM20H单元REC_DATA1EQU21H;数码管段选的数据存放在片内RAM21H单元ORG0000HSJMP

2、MAINORG0003H;外部中断0引脚链接红外接收头输出LJMPINT0_SERVICEORG0030HMAIN:MOVIE,#10000001B;外部中断使能,全局中断使能MOVREC_DATA,#00000000B;数码管灭MOVREC_DATA,#7EH;数码管亮MOVREC_DATA1,#7EH;数码管亮MOVP1,#11111110B;选中左边的数码管MOVP3,#0FFHLOOP:LCALLDISPLAY;MOVREC_DATA,#0FFH;数码管亮;MOVP2,REC_DATA;段选送P2,P2链接数码管驱动244的输入SJMPLOOP;循环显示INT

3、0_SERVICE:;中断0服务程序SETBP1.0SETBP1.1MOVR4,#8;8毫秒为高电平错误SBA:MOVR5,#250SBB:JBP3.2,SXB1DJNZR5,SBBDJNZR4,SBAMOVR4,#2JMPSBCSXB1:MOVR5,#5SXB2:;去掉20US的尖峰干扰信号JNBP3.2,SBBDJNZR5,SXB2JMPEXITSBC:MOVR5,#250SB1:JBP3.2,SB2;2MS内不为高电平错误(监测9MS的低电平引导码)DJNZR5,SB1DJNZR4,SBCJMPEXITSB2:;去掉20US的尖峰干扰信号MOVR5,#5SB2_

4、A:JNBP3.2,SB1DJNZR5,SB2_AMOVR4,#3SB2_1:MOVR5,#250SB3:;监测4.5MS高电平,如3MS内出现低电平错误JNBP3.2,SXCDJNZR5,SB3DJNZR4,SB2_1MOVR4,#2JMPSB3_1SXC:;去掉20US的尖峰干扰信号MOVR5,#5SXC1:JBP3.2,SB3DJNZR5,SXC1JMPEXITSB3_1:;监测4.5MS高电平,如5MS内不为低电平错误MOVR5,#250SB3_2:JNBP3.2,SB4DJNZR5,SB3_2DJNZR4,SB3_1JMPEXITSB4:;去掉20US的尖峰

5、干扰信号MOVR5,#5SB4_1:JBP3.2,SB3_2DJNZR5,SB4_1MOVR1,#1AH;设定1AH为起始RAM区MOVR2,#4PP:MOVR3,#8JJJJ:MOVR5,#250JJJJ2:;1MS内不为低电平错误JBP3.2,JJJJ3DJNZR5,JJJJ2JMPEXITJJJJ3:LCALLYS1;高电平开始后用882微秒的时间尺去判断信号此时的高低电平状态MOVC,P3.2;将P3.2引脚此时的电平状态0或1存入C中JNCUUU;如果为0就跳转到UUUMOVR5,#250JJJJ4:JNBP3.2,UUUNOPDJNZR5,JJJJ4JMP

6、EXITUUU:MOVA,@R1;将R1中地址的给ARRCA;将C中的值0或1移入A中的最低位MOV@R1,A;将A中的数暂时存放在R1中DJNZR3,JJJJ;接收地址码的高8位INCR1;对R1中的值加1,换成下一个RAMDJNZR2,PP;接收完16位地址码和8位数据码和8位数据反码,存放在1AH/1BH/1CH/1DH的RAM中;以下对代码是否正确和定义进行识别MOVA,1AH;比较高8位地址码XRLA,#00000000B;判断1AH的值是否等于00000000,相等的话A为0JNZEXIT;如果不相等说明解码失败退出解码程序MOVA,1BH;比较低8位地址

7、XRLA,#11111111B;再判断高8位地址是否正确JNZEXIT;如果不相等说明解码失败退出解码程序LCALLYS3MOVA,1CH;比较数据码和数据反码是否正确?CPLAXRLA,1DH;将1CH的值取反后和1DH比较不同则无效丢弃,核对数据是否准确JNZEXIT;如果不相等说明解码失败退出解码程序LCALLYS3AJMPBIJIAO;判断在118毫秒内是否有连发码AA:MOVR1,#25XX:ACALLYS2JNBP3.2,HH;跳转到判断连发代码是否正确的程序段DJNZR1,XXEXIT:RETI;退出中断服务程序;连发码判断程序段---

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。