Arduino入门实践之红外遥控模块
参考文档:http://www.taichi-maker.com/homepage/reference-index/arduino-library-index/irremote-library/
参考文档:https://www.arduino.cn/thread-3259-1-1.html
先获得按键编码
#include <IRremote.h> int RECV_PIN = 11; // 红外一体化接收头连接到Arduino 11号引脚 IRrecv irrecv(RECV_PIN);//声明一个IRrecv类型的对象,并接到RECV_PIN decode_results results; // 用于存储编码结果的对象 void setup() { Serial.begin(9600); // 初始化串口通信 irrecv.enableIRIn(); // 初始化红外解码 } void loop()
{ if (irrecv.decode(&results))
{ Serial.println(results.value, HEX); irrecv.resume(); // 接收下一个编码 } }
接下来使用红外遥控来控制led灯的暗亮
#include <IRremote.h> int RECV_PIN = 11; // 红外一体化接收头连接到Arduino 11号引脚 int LEDpin = 13; //定义LED输出引脚 IRrecv irrecv(RECV_PIN); decode_results results; // 用于存储编码结果的对象 void setup() { pinMode(LEDpin,OUTPUT); irrecv.enableIRIn(); // 初始化红外解码 } void loop() { if (irrecv.decode(&results)) { Serial.println( results.value); if( results.value == 0xFFA25D) //若接收到按键ON按下的指令,打开LED { digitalWrite(LEDpin,HIGH); } else if(results.value == 0xFFE21D) //接收到OFF按键按下的命令,关闭LED { digitalWrite(LEDpin,LOW); } irrecv.resume(); // 接收下一个编码 } }