本人菜鸟,刚开始学习Arduino,看了论坛里的红外遥控的教材,学习如何控制我们家的三星空调,空调的遥控原始码已经通过逻辑分析仪获取,如下:
3290,8725,737,276,763,1237,724,290,750,250,763,250,750,250,737,263,724,290,697,316,684,1329,658,342,619,395,605,1395,605,408,592,421,579,1421,579,1434,566,1434,566,1448,553,1448,553,461,540,461,540,474,526,474,540,474,513,487,526,487,513,487,513,500,500,500,500,513,500,500,500,513,487,513,500,513,487,526,474,513,500,513,487,513,500,513,487,526,487,513,487,513,500,513,487,513,500,513,487,513,487,526,487,513,487,513,500,513,487,513,500,1513,487,1513,500,1500,500,1500,500,3027,2961,9054,474,1527,474,526,487,513,487,526,487,513,487,513,500,513,487,513,500,513,487,1527,474,526,487,513,487,1513,487,526,487,1513,487,1513,500,1500,500,1513,487,1513,487,1527,487,513,487,513,500,513,487,526,474,526,487,513,487,513,500,513,487,526,487,513,487,513,500,513,487,513,487,526,487,513,487,526,487,513,487,513,500,513,487,513,500,513,487,513,500,513,487,513,487,526,487,513,487,526,487,513,487,526,487,513,487,526,487,513,487,513,487,526,487,513,487,526,487,2027,2961,9041,487,1513,487,513,500,513,487,513,500,513,487,513,500,500,500,513,487,513,500,1513,487,513,500,513,487,1513,487,513,474,172372(264位)
但是当我发射红外原始码的时候,空调有一定反应,但是无法完成开机,貌似是原始码没有接收完全.于是我使用逻辑分析仪采样我自己通过sendRaw函数发送的原始码发现,确实最后几位没有采样到.
以下是我二次采样到的编码:
3382,8725,803,224,829,1198,790,237,803,211,816,224,790,197,803,237,750,276,711,316,684,1342,658,355,619,408,592,1434,566,447,579,447,553,1474,540,1500,526,1500,513,1500,513,1513,513,513,500,513,500,526,487,513,513,540,461,540,487,526,487,540,461,566,461,540,461,553,474,566,447,566,461,566,461,553,447,579,434,566,461,566,447,553,487,553,434,592,434,566,461,566,461,553,461,553,474,566,434,566,461,566,461,553,434,566,474,566,447,566,461,1579,434,1592,447,1540,461,1566,461,3093,2935,9146,434,1592,434,592,434,566,461,579,434,566,461,566,461,553,434,566,474,553,461,1592,434,579,434,566,461,1566,447,566,461,1566,461,1566,461,1553,461,1566,461,1553,461,1592,434,553,474,553,461,566,434,592,434,553,474,553,474,526,487,566,434,592,434,553,461,566,461,566,447,553,461,579,434,566,461,566,461,566,447,540,500,526,474,553,461,566,461,566,447,566,447,553,461,566,461,566,461,553,461,566,434,592,447,553,461,553,474,553,461,566,434,579,447,553,474,553,461,2092,2935,9133,474,1553,461,553,474,553,434,566,474,553,461,553,461,566,461,566,434,566,461,1579,434,566,461,566,461,33966(只有260)
反复实验总是会有几位丢失(不确定位数),不知道是什么原因,请各位大神帮帮忙啊.
我的代码如下:- #include <IRremote.h>
- IRsend irsend;// 新建一个IRsend对象,
-
- void setup(){
- pinMode(4,OUTPUT);
- digitalWrite(4,LOW);
- }
-
- void loop(){
- unsigned int rawCodes_ac_close[]={3290,8725,737,276,763,1237,724,290,750,250,763,250,750,250,737,263,724,290,697,316,684,1329,658,342,619,395,605,1395,605,408,592,421,579,1421,579,1434,566,1434,566,1448,553,1448,553,461,540,461,540,474,526,474,540,474,513,487,526,487,513,487,513,500,500,500,500,513,500,500,500,513,487,513,500,513,487,526,474,513,500,513,487,513,500,513,487,526,487,513,487,513,500,513,487,513,500,513,487,513,487,526,487,513,487,513,500,513,487,513,500,1513,487,1513,500,1500,500,1500,500,3027,2961,9054,474,1527,474,526,487,513,487,526,487,513,487,513,500,513,487,513,500,513,487,1527,474,526,487,513,487,1513,487,526,487,1513,487,1513,500,1500,500,1513,487,1513,487,1527,487,513,487,513,500,513,487,526,474,526,487,513,487,513,500,513,487,526,487,513,487,513,500,513,487,513,487,526,487,513,487,526,487,513,487,513,500,513,487,513,500,513,487,513,500,513,487,513,487,526,487,513,487,526,487,513,487,526,487,513,487,526,487,513,487,513,487,526,487,513,487,526,487,2027,2961,9041,487,1513,487,513,500,513,487,513,500,513,487,513,500,500,500,513,487,513,500,1513,487,513,500,513,487,1513,487,513,474,172372};
-
- irsend.sendRaw(rawCodes_ac_close, 264, 38); // 调用sendRaw函数
- delay(2000);
- }
复制代码 |