寝室空调遥控解码
以前寝室的空调遥控器由宿管阿姨掌管,私心想着,若能仿制个遥控器能有多好。
此处解码的空调型号为海尔KFR-35GW/06NCA12,所用红外协议为NEC协议。NEC协议是众多红外遥控协议的其中一种,除NEC外,还有RC5等其它协议。
在NEC发送端,高电平用38k载波表示,低电平就为低电平,图一为发射端三极管集电极的电压波形
图一(发射端)
在接收端接收数据时,红外管接收到38k载波输出低电平;未接收到38k载波输出高电平。与发射端的波形相反,如图二所示。实际该空调的引导码与标准引导码不太一样,经过数字示波器的测量,发现其格式如图三所示。
图二(接收端)
图三(接收端)
图四为接收端IR1838的1pin的电压波形:
图四
红外接收电路:
红外发射电路:
38k载波产生的方法有两个:1.由555产生38k载波,然后与单片机产生的0-1码经过“与”操作,生成发送码;2.发送码直接用单片机产生,基本思路为:用IO口的第二功能输出38k方波,当需要发送高电平时,打开IO口第二功能;当需要发送低电平时,关闭IO口第二功能且输出低电平。发送高低电平的时间由定时器来控制。
为了使硬件上简单化,我使用了第2种方法。
经过反复试验,发现该遥控器的一帧包含14个字节,包括机身码、指令码、类型码、和数校验码,和数校验码就是将前13个字节模0xff相加。