You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ESP32 Wroom32红外传输代码失效求助(IRremote v4.4.1)

问题排查与修复方案

代码层面错误

  • 串口初始化错误:setup()里的Serial.println(9600)是错误用法,串口初始化需调用Serial.begin(9600),println仅用于输出内容,无法完成波特率配置。
  • 参数合理性验证:IRremote v4.4.1的sendSony函数签名为void sendSony(uint16_t aAddress, uint8_t aCommand, uint8_t aNumberOfRepeats = 0),你传入的地址0x01、命令0x34、重复次数0格式合规,但需确认是否与接收设备的协议参数匹配。

修复后的代码:

#include <IRremote.hpp>
#define IRPin 26         // Transmitter pin

uint8_t sCommand = 0x34;
uint8_t sRepeats = 0;

void setup() {
  Serial.begin(9600); // 修正串口初始化
  IrSender.begin(IRPin);
  Serial.println("IR transmitter initialized"); // 增加初始化状态提示
}

void loop() {
  IrSender.sendSony(0x01, sCommand, sRepeats);
  Serial.println("IR send....");
  delay(5000);
}

硬件层面排查

  • 供电功率问题:多数红外发射模块需要5V供电才能保证有效发射功率,你当前使用3.3V可能导致信号微弱甚至无法被接收,建议将+引脚改接ESP32的5V引脚测试。
  • 连接可靠性检查:确认S引脚与ESP32引脚26的连接牢固,GND引脚与ESP32地端接触良好,无虚焊或松动情况。
  • 模块载波兼容性:Sony红外协议默认使用40kHz载波,确保你的发射模块支持该载波频率(通用型红外模块一般兼容)。

调试技巧

  • 用手机摄像头对准红外发射头,发送信号时观察是否有肉眼不可见的闪烁(手机摄像头可捕捉红外光):无闪烁说明硬件或代码未输出信号;有闪烁则说明信号已发出,需排查接收端或协议参数匹配问题。

内容的提问来源于stack exchange,提问作者Mzi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 19:45:57