c51单片机红外解码程序-汇编版和c语言版.docx

c51单片机红外解码程序-汇编版和c语言版.docx

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c51单片机红外解码程序-汇编版和c语言版

纯软件解码 --- 汇编版利用程序判电平和时间进行解码,缺点是浪费系统软件资源;优点是对系统硬件要求稍低ORG 0000HT0ZD BIT 20H.2XH BIT P3.3 ;红外接收头数据接口 RS BIT P2.3RW BIT P2.4E BIT P2.5BB BIT P3.6ORG 0000H ;AJMP MAINORG 000BH ;T0中断入口LJMP T0ZDCXORG 0100H ;主程序首地址MAIN:LCALL CSHMOV DPTR,#TAB ;总查表SETB EA ;T0中断设定SETB ET0MOV TMOD,#01HDDXH: ;信号接收前准备SETB P2.0 ;关信号指示灯MOV P0,#0FFHCLR TR0 ;关T0中断CLR T0ZD ;接收信号时间判断MOV R5,#4 ;延时计数MOV TH0,#00HMOV TL0,#00H;================解码主要过程===========关键============================================================JB XH,$ ;等待电平变低,解码从这开始CLR P2.0 ;开信号指示灯,表示正在接收信号MOV P0,#8EHSETB TR0 ;开T0中断LCALL YS3MSJB XH,DDXH ;干扰检测LCALL YS3MSJB XH,DDXH ;干扰检测DD1:JB T0ZD,DDXH ;是否超出接收允许时间JNB XH,DD1 ;等待电平变高LCALL YS3MSJNB XH,DDXH ;干扰检测 DD2:JB T0ZD,DDXH ;是否超出接收允许时间JB XH,DD2 ;等待电平变低JSSJ: ;信号确认,开始接收数据MOV R0,#30HZJ: ;接收一个字节数据MOV R2,#8WEI: ;位数据,分辩0和1JB T0ZD,DDXH ;是否超出接收允许时间JNB XH,WEI ;等待电平变高LCALL YS845MOV C,XH ;取位数据RRC ADD3:JB T0ZD,DDXH ;是否超出接收允许时间JB XH,DD3 ;等待电平变低,为1的高电平提供过度DJNZ R2,WEI ;8位数据是否接收完MOV @R0,AINC R0CJNE R0,#34H,ZJ ;四字节数据是否接收完MOV A,33HCPL ACJNE A,32H,DDXH ;键值确认,解码MOV R4,A;==========这里已经取出键值,存在R4中================================================== MOV R7,#100;TSY:MOV R6,#255 DJNZ R6,$ CPL BB DJNZ R7,TSYMOV A,#0CDH ;键值高位输出LCALL YJP_XZLMOV A,R4MOV B,#10HDIV ABMOVC A,@A+DPTRLCALL YJP_XSJMOV A,#0CEH ;键值低位输出LCALL YJP_XZLMOV A,BMOVC A,@A+DPTRLCALL YJP_XSJ ;LCALL DYBF ;调用灯控制子程序LJMP DDXH ;返还等待下一次信号 YS845: ;延时845微秒MO

您可能关注的文档

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档