一、NEC协议简介
NEC IR传输协议使用消息位的脉冲距离编码。每个脉冲(标记– RC发送器打开)的长度为562.5µs,载波频率为38kHz(26.3µs)。
逻辑0和逻辑1脉冲逻辑:
逻辑0:562.5µs的低电平脉冲,后跟562.5µs间隔,总发送时间为1.125ms
逻辑1:562.5µs的低电平脉冲,后跟1.6875ms的间隔,总发送时间为2.25ms
二、协议解析
当按下遥控器上的一个按键时,传输的消息序列如下:
- 9ms的高电平前导脉冲(逻辑数据位脉冲长度的16倍:562.5*16=9000)
- 4.5ms的低电平间隔
- 接收设备的8位地址码
- 地址码反码(8位设备地址按位取反)
- 8位命令码
- 命令码反码(8位命令码按位取反)
- 最后562.5us脉冲表示消息传输结束
三、逻辑分析仪实测分析
注意:
协议里的电平是从发射头角度来看,而下面的实际波形是红外接收头引脚输出的,是相反的电平。
1、当遥控器按键按下时的发送序列波形分析:
C1~C2:逻辑0
D1~D2:逻辑1
一个NEC接收数据帧占用的时间长度包括:(引导码,9ms的低电平和4.5ms的高电平,然后是32位数据(第一字节用户码,第二字节用户反码,第三字节是命令码,第四字节是命令反码)和1位停止位。
从波形图上可知:
地址码(0x00)+地址反码(0xff)+命令码(0x06)+命令反码(0xF9)