51单片机 红外控制程序中 if (IRCOM[2]!=~IRCOM[3]) { EX0=1; return; }是什么意思

51单片机 红外控制程序中 if (IRCOM[2]!=~IRCOM[3]) { EX0=1; return; }是什么意思,第1张

红外解码,先有引导码9ms高电平45ms低电平,然后是用户正码,用户反码按键正码,按键反码,IRCOM[2]是一个4位数组,用来存放红外接受码的,IRCOM[0]是用来存放用户正码IRCOM[1]用户反码、IRCOM[2]按键正码、IRCOM[3]按键反码,你程序里面:

if (IRCOM[2]!=取反IRCOM[3]) //判断如果按键正码不等于取反按键反码

{

EX0=1; //打开外部中断0

return; //跳出结束

}

IRCOM[0]用户正码、IRCOM[1]用户反码,0和1是用来区别不同遥控器的,市场上面遥控器很多,都是用用户码来区别不同遥控器的,希望我的回答对你有帮助!

串口那部分自己写我刚好前天调完,完全可以用

/-----------------------------------------------

名称:遥控器红外解码数码管显示

论坛:>

那个N大于30是因为已经超出了0和1代表的时间长度。0和1所代表的高低电平时间不一样。当高电平时长超过n=8时,代表1否则代表0这个是和你红外设置的0,1代表时间长度有关系,请问你有时序图吗??那就一目了然了

以上就是关于51单片机 红外控制程序中 if (IRCOM[2]!=~IRCOM[3]) { EX0=1; return; }是什么意思全部的内容,包括:51单片机 红外控制程序中 if (IRCOM[2]!=~IRCOM[3]) { EX0=1; return; }是什么意思、请大师看看,我想用串口调试助手读出红外遥控按键信息,程序可以编译没错,单片机实现不了,望高手指教!、谁能帮我解释一下这个有关51单片机的红外解码的部分程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10625501.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存