嗨,有人可以帮助我吗?我正在尝试使用 esp8266 通过 IR 控制我的 A/c 我一直在尝试多种方法来使其工作,但不幸的是无济于事。我设法让我的电视和其他 IR 系统工作,但 A/C 不工作。所有其他设备都使用 NEC 协议,而空调显示它具有 Panasonic 协议。
这就是说,当我使用 sendPanasonic 指定 Panasonic 地址和 IR 的十六进制时,它也不起作用。所以我求助于使用来自 Ir Rec 的原始数据 (sendRaw)。
当我关闭 A/C(关闭命令)时,我得到的数据读取转储如下:
代码:
全选Encoding : PANASONIC
Code : C4D3:64800004 (48 bits)
timing[99]:
+3850, -1450 + 600, -1250 + 600, -1250 + 600, - 500
+ 550, - 550 + 600, - 500 + 600, -1250 + 600, - 500
+ 550, - 550 + 600, -1250 + 600, -1250 + 600, - 500
+ 550, -1300 + 600, - 500 + 550, - 500 + 650, -1250
+ 550, -1300 + 600, - 500 + 600, -1250 + 600, -1250
+ 600, - 500 + 550, - 550 + 600, -1250 + 550, - 550
+ 550, - 550 + 600, -1250 + 550, - 550 + 550, - 550
+ 600, - 500 + 550, - 550 + 550, - 550 + 600, - 500
+ 600, - 500 + 600, - 500 + 600, - 500 + 550, - 550
+ 550, - 550 + 600, - 500 + 600, - 500 + 600, - 500
+ 600, - 500 + 550, - 550 + 600, - 500 + 600, - 500
+ 550, - 550 + 550, - 550 + 600, -1250 + 600, - 500
+ 600, - 500 + 600
unsigned int rawData[99] = {3850,1450, 600,1250, 600,1250, 600,500, 550,550, 600,500, 600,1250, 600,500, 550,550, 600,1250, 600,1250, 600,500, 550,1300, 600,500, 550,500, 650,1250, 550,1300, 600,500, 600,1250, 600,1250, 600,500, 550,550, 600,1250, 550,550, 550,550, 600,1250, 550,550, 550,550, 600,500, 550,550, 550,550, 600,500, 600,500, 600,500, 600,500, 550,550, 550,550, 600,500, 600,500, 600,500, 600,500, 550,550, 600,500, 600,500, 550,550, 550,550, 600,1250, 600,500, 600,500, 600}; // PANASONIC C4D3:64800004
unsigned int addr = 0xC4D3;
unsigned int data = 0x64800004;
我正在使用这段代码:
代码:
全选#include
IRsend irsend(0); //an IR led is connected to GPIO pin 0
unsigned int rawData[99] = {3850,1450, 550,1300, 550,1300, 550,550, 550,550, 550,550, 550,1300, 550,550, 550,550, 550,1300, 550,1300, 550,550, 550,1300, 550,550, 550,550, 550,1300, 550,1300, 550,550, 550,1300, 550,1300, 550,550, 550,550, 550,1300, 550,550, 550,550, 550,1300, 550,550, 550,550, 550,550, 550,550, 550,550, 550,550, 550,550, 550,550, 550,550, 550,550, 550,550, 550,550, 550,550, 550,550, 550,550, 600,500, 600,500, 600,500, 600,500, 550,550, 550,1300, 550,550, 550,550, 550}; // PANASONIC C4D3:64800004
void setup()
{
irsend.begin();
Serial.begin(9600);
}
t
void loop() {
Serial.println("Raw");
irsend.sendRaw(rawData, 99,38);
delay(2000);
}
有人能指出我正确的方向吗,如果我能指出如何完成这项工作,那就太好了!