【ESP32 - 红外接收】| 使用红外接收模块接收红外遥控信号,并打印在串口

注意事项/前要

在本项目中,使用ESP32开发板和红外接收模块来接收红外遥控器信号,并在串口中打印接收到的按键信息。

注意,本项目使用的IRremote库为2.6旧版本,如果使用高版本会导致This version is no longer supported!提示

红外接收模块为简单封装模块,引脚有三个,参考时可以根据具体型号进行接线。

模块与开发板接线

模块引脚

Arduino ESP32 引脚

VCC

3.3V 、5V

GND

GND

OUT

GPIO 15

完整代码

  • 本项目使用的IRremote库为2.6旧版本
  • 如果使用高版本会导致This version is no longer supported!提示
  • FFFFFFFF信号为长按
  • 在自己项目中,可以将变量赋值results.value
#include <IRremote.h>

// 定义红外接收引脚
const int RECV_PIN = 15; // ESP32的GPIO 15引脚

IRrecv irrecv(RECV_PIN); // 创建IRrecv对象
decode_results results;  // 创建解码结果对象

void setup() {
  Serial.begin(115200);           // 初始化串口通信
  irrecv.enableIRIn();            // 启用红外接收
  Serial.println("红外接收器已启动,准备接收信号..."); 
  Serial.println("羡林i版权所有.");
}

void loop() {
  if (irrecv.decode(&results)) {  // 检测到红外信号
    Serial.print("接收到的红外编码:");
    Serial.println(results.value, HEX); // 打印接收到的红外编码,十六进制格式
    irrecv.resume();                    // 接收下一个信号
  }
  delay(100); // 延时100毫秒,避免串口输出过快
}

开发环境:Arduino IDE、ESP32 Dev Module

代码辅助:ChatGPT-4o

作者:羡林i

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值