实验说明
红外遥控器发出的信号是一连串的二进制脉冲码。为了使其在无线传输过程中免受其他红外信号的干扰,通常都是先将其调制在特定的载波频率上,然后再经红外发射二极管发射出去,而红外线接收装置则要滤除其他杂波,接收该特定频率的信号并将其还原成二进制脉冲码,也就是解调。
库文件导入
实验准备
arduino主板-1
面包板-1
数据线-1
遥控器-1
红外接收头-1
跳线若干
连接电路
引脚说明
接线说明
红外接收头模块 | Arduino主板 |
---|---|
VCC | +5v |
GND | GND |
VOUT | 11(自定义) |
实验代码
#include <IRremote.h>
int RECV_PIN = 11; // 红外一体化接收头连接到Arduino 11号引脚
IRrecv 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(); // 接收下一个编码
}
}
实现效果