红外通信
红外通信是指通过发射红外辐射来传递信息或进行通信的过程。红外辐射是一种电磁辐射,具有较长的波长,位于可见光谱的红色区域之外。这种辐射可以用于许多应用,包括遥控器、红外摄像头、红外传感器等。
红外通信(Infrared Communication)作为一种无线通信技术,已经在现代生活中扮演了不可或缺的角色。其中,NEC码(NEC Protocol)作为红外通信的重要协议之一,在遥控设备、智能家居等领域发挥着重要作用,今天就来接好一下这种编码。
NEC码介绍
NEC码,全称为NEC红外通信协议,是一种广泛应用于红外遥控通信的协议标准。它具有明确的时序和数据格式,确保了遥控设备之间的可靠通信。NEC码的基本结构包括引导码、用户地址码、用户地址反码、命令码、命令反码和结束码有的遥控器一直按下可能还会有重复码。
NEC码的通信过程是基于脉宽编码(Pulse Width Modulation)的原理。
发送端将每个二进制位编码为一系列的脉宽,通常使用占空比来区分逻辑0和逻辑1。一个典型的NEC码数据帧以一个引导码开头,包含一个特定的脉宽组合,用于标识数据的起始。接下来是用户地址码和用户地址反码,用于标识遥控器和接收器之间的通信目标。最后是命令码和命令反码,表示具体的操作命令。整个数据帧以一个结束码结尾。
NEC编码中的逻辑0
逻辑"0":562.5µs的有效脉冲 + 562.5µs的空闲间隔,总时长为1.125ms。
NEC编码中的逻辑1
逻辑"1":562.5µs的有效脉冲 + 1.6875ms的空闲间隔,总时长为2.25ms(为逻辑0的一倍)。
NEC编码解释
每个序列均以9ms的脉冲(称为AGC脉冲)(是逻辑数据位使用的脉冲562.5us的16倍)开始,接下来是4.5毫秒的空闲可以理解这一过程是每一帧的起始标志
后面依次是
用户地址码 用户地址反码 用户命令码 用户命令反码 先LSB 在MSB
结束位为末尾的562.5µs的有效脉冲
重复码
即使一直按住遥控器上的一个键,命令帧也只会发送一次。 只要按键保持按下状态,就会每110毫秒发送一次重复码。 该重复码的组成为 9ms的AGC脉冲 + 2.25ms的空闲间隔 + 560µs的脉冲。
高频脉冲载波的频率是38KHZ
编程注意事项
电平取反
格外注意的是:VS1838、PC638、IRM-56384、3638、0038这些38K红外接收管的输出方式为开漏,故与上文的时序为反相,coding的代码内要记得取反。
并且因为OUTPUT引脚是开漏输出,需要外置上拉电阻,或者将MCU的GPIO配置为上拉输入。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/Mark_md/article/details/115053032
也就是说解析的数据 其实高频脉冲是低电平 低电平会被翻译成高电平。
红外接收管波形
因为输出管脚为开漏,故空闲状态为保持低功耗,输出电平为高电平。接收到38KHz载波信号时,输出低电平。
这个博客介绍的详细 :以防丢失
http://t.csdnimg.cn/eY2lA