#include <IRremote.h>
int RECV_PIN = 7;
IRrecv irrecv(RECV_PIN);
decode_results results;
程序如下:
void setup()
{
Serial.begin(9600);
pinMode(11, OUTPUT);
irrecv.enableIRIn(); // Start the receiver
}
void loop() {
if (irrecv.decode(&results)) {
Serial.println(results.value, HEX);
switch (results.value)
{
case 0x40BF30CF:
digitalWrite(11, HIGH);
break;
case 0x40BF906F:
digitalWrite(11, LOW);
break;
}
irrecv.resume(); // Receive the next value
}
delay(100);
}
串口接收:
FFFFFFFF
FFFFFFFF
F761B2A3
F761B2A3
F761B2A3
FFFFFFFF
F761B2A3
FFFFFFFF
F761B2A3
F761B2A3
FFFFFFFF
F761B2A3
FFFFFFFF
FFFFFFFF
FFFFFFFF
FFFFFFFF
F761B2A3
F761B2A3
FFFFFFFF
F761B2A3
FFFFFFFF
F761B2A3
FFFFFFFF
F761B2A3
40BF
F761B2A3
F761B2A3
F761B2A3
FFFFFFFF
F761B2A3
FFFFFFFF
F761B2A3
FFFFFFFF
FFFFFFFF
F761B2A3
FFFFFFFF
FFFFFFFF
F761B2A3
FFFFFFFF
FFFFFFFF
FFFFFFFF
FFFFFFFF
FFFFFFFF
40BF906F
FFFFFFFF
其中只有一个正确,触动继电器,怎么解决? |