红外解码,先有引导码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单片机的红外解码的部分程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)