红外接收hs0038NEC协议

发送端:(调制、编码)

1:560us脉冲 + 1680 低电平

0:560us脉冲 + 560 低电平

发送端就是要传递信息,计算机世界中信息的载体就是二进制比特,红外发送端就是想要把二进制信息传递出去让接收端接收到,要制定一个规则,上面的就是规则

接收端:(解调、译码)

有脉冲时接收端表现为低电平

无脉冲时接收端表现为高电平

1:560us低 + 1680高

0:560us低 + 560高

数据格式:

引导码 + 地址码(客户码) + 地址反码 + 控制码 + 控制反码

先接收到的是每个字节的低位

引导码:9ms低电平+4.5ms高电平 ,就是把钥匙, 单片机只有检测到了引导码出现了才确认接收后面的数据,保证数据接收的正确性,利用这一点,可以利用单片机的下降沿中断来告诉单片机有红外信息来了

客户码:为了区分各红外遥控设备使之不会互相干扰

操作码:用户实际须要的编码按下不同的键产生不同的操作码,待接收端接收到后根据其进行不同的操作

反码:可以增加传输的可靠性,用于校验

连发码:100ms高电平后还会有 9ms低电平+ 2.5ms高电平  +0.56 低电平

程序思路:

  思路一: 按部就班的解析,阻塞延时

  思路二:根据  引导码、数据0、数据1、连发码 的高电平持续的时间不同,来判断,可以用输入捕获高电平来实现

                4200~4700 :表明是引导码  ,标准值4500(4.5ms)

                400~700:  数据0 ,标准值 560(560us)

                1500~1800: 数据1 ,标准值 1680 (1680us)

                 2300~2600 :连发码  ,标准值 2500 (2.5ms)

  

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

small_planet

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值