首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Arduino红外线接收器在按下按钮后无法工作

Arduino红外线接收器在按下按钮后无法工作
EN

Stack Overflow用户
提问于 2016-03-09 01:45:46
回答 1查看 378关注 0票数 1

我正在试着做一个简单的程序,可以接收红外线代码,同时发送另一个红外线代码,当我按下一个按钮。

我的问题是:红外线接收器只有在我按下按钮之前才能工作。如果我按下按钮,“第一个if-line”就不再起作用了。

代码语言:javascript
运行
复制
#include <IRremote.h>
IRsend irsend;

int RECV_PIN = 2;   //Transmitter pin (input)
IRrecv irrecv(RECV_PIN);  //TP-stuff
decode_results results;   //TP-stuff


void setup() {
  pinMode(9, INPUT);  //knapp 6, LEDIG
  pinMode(3, OUTPUT);  //IRSEND
  pinMode(2, INPUT); //tramsmititer pin
  Serial.begin(9600);
  irrecv.enableIRIn(); // Start the receiver //TP
}

void loop() {

  if (irrecv.decode(&results)) {                   //Transmitter IR
    Serial.println(results.value, HEX);           //Transmitter IR

    irrecv.resume(); // Receive the next value    //Transmitter IR


  } else if (digitalRead(9) == LOW) {
    irsend.sendNEC(0x20DF8679, 32); //LEDIG
    Serial.println("LEDIG knapp");
    digitalWrite(9, HIGH);
    delay(400);

  }
}
EN

回答 1

Stack Overflow用户

发布于 2018-03-20 00:38:48

发送和红外线信息后,再次启用红外线接收器:

代码语言:javascript
运行
复制
else if (digitalRead(9) == LOW) {
    irsend.sendNEC(0x20DF8679, 32); //LEDIG
    Serial.println("LEDIG knapp");
    digitalWrite(9, HIGH);
    delay(400);
    irrecv.enableIRIn();
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35874352

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档