红外NEC协议程序小结(1)

在接收二进制数据信号的过程中,怎样确定接收的逻辑1与逻辑0的时间,在0.56+0.565到0.56+1.69ms这个时间范围之内呢,见如下程序段;

逻辑0的高低电平时间为1.125ms,而逻辑1的高低电平时间为2.25ms,此时irtime>=9,意味着时间为9*0.2777=2.499ms,很显然大于2.25ms,所以无法接受信号,但是如果改成6或7,即时间小于2.25ms,又能接收到信号。

红色箭头处,所加的测试程序

另外在测试 if(irtime<63&&irtime>=48)程序段,即接收头码的时间时发现,接收端接收的头码时间在13ms以上,也就是说高电平9ms与低电平4.5ms的时间都接收到了,在网上查询时,找到了接收端NEC的时序图如下:

所以接收端应该是在接收到中断信号后,定时器计时时间为9+4.5.即在4.5ms的下降沿停止计时。 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值