把IDE自带的红外收发例程功能整合到一个程序里面。
开发板是ARDUINO UNO
就是下面的代码:
如果不加最后一句发射语句,则可以正常接收,通过IDE串口窗口可以看到接收数据;
如果加上最后那句发射语句,则收不到数据。
反复尝试,不管把那句发射语句放到loop内什么地方,只要是加上就不能接收数据。
希望了解底层工作的大神给个指示,谢谢!
#include <IRremote.h>
int RECV_PIN = 11;
IRsend irsend;
IRrecv irrecv(RECV_PIN);
decode_results results;
void setup() {
Serial.begin(9600);
irrecv.enableIRIn(); // Start the receiver
}
void loop(){
if (irrecv.decode(&results)) {
Serial.println(results.value, HEX);
irrecv.resume(); // Receive the next value
}
//irsend.sendNEC(0x807F18E7,32);
int RECV_PIN = 11;
IRsend irsend;
IRrecv irrecv(RECV_PIN);
decode_results results;
void setup()
{
Serial.begin(9600);
irrecv.enableIRIn(); // Start the receiver
}
void loop()
{
if (irrecv.decode(&results))
{
Serial.println(results.value, HEX);
irrecv.resume(); // Receive the next value
}
if (millis() % 2000 == 0) //Send every 2000ms
{
irsend.sendNEC(0x807F18E7, 32);
}
}[/kenrobot_code]