打开电视时,8266把接收到的电视开机信号通知homeassistant进行自动化操作,这只是红外接收判断并切换LED的亮与灭,需要整合自动配网,上传MQTT,OTA

#include <IRremoteESP8266.h>//8266的红外库
#include <IRrecv.h>//上一个库中有包含,不知道为什么不引用会报错

#define  RECV_PIN 14//D5//红外接收引脚
 
IRrecv irrecv(RECV_PIN);   // 红外遥控初始化
decode_results results;   // 储存接收到的红外遥控信息
void setup(){
  pinMode(LED_BUILTIN,OUTPUT);//
  digitalWrite(LED_BUILTIN,LOW);
  Serial.begin(9600);
  Serial.println("Enabling IRin");
  irrecv.enableIRIn();//启动红外
  Serial.println("Enabled IRin");
}
void loop() {
  if (irrecv.decode(&results)){
    Serial.println(results.value,HEX);
    if (results.value == 0x40BE629D){//家里电视遥控开关的红外码是:40BE629D
      digitalWrite(LED_BUILTIN,!digitalRead(LED_BUILTIN));
      Serial.println("LED灯已:");
  
      }
   irrecv.resume();
    }

}
最后修改:2022 年 03 月 08 日
如果觉得我的文章对你有用,请随意赞赏