smart-home/ESP32编译烧录指南.md
2026-02-26 09:16:34 +08:00

2.1 KiB
Raw Blame History

ESP32固件编译烧录指南

🔧 编译步骤

1. 打开ESP-IDF环境

cd d:\XinJiaPo\Firefly_code\smart-home\firefly_esp32
& "D:\Espressif5.5.2\Espressif\frameworks\esp-idf-v5.5.2\export.ps1"

2. 清理之前的构建

idf.py clean

3. 配置项目

idf.py menuconfig

重要配置项

  • Component config → HTTP Server → Max HTTP Request Headers: 32
  • Component config → HTTP Server → Max HTTP URI Handlers: 30
  • Component config → LWIP → Max number of open sockets: 16

4. 编译固件

idf.py build

5. 烧录固件

idf.py -p COM7 flash

6. 监控串口输出

idf.py -p COM7 monitor

🎯 验证步骤

1. 检查HTTP服务器启动

串口应该显示:

I (xxx) ACRemoteAPI: HTTP服务器启动成功端口: 80

2. 测试/ir接口

curl "http://192.168.1.3/ir?cmd=PING"

应该返回:

{"success":true,"status":"ok","action":"PING","message":"设备在线"}

3. 测试红外控制

curl "http://192.168.1.3/ir?cmd=SOCKET:ON"

应该返回:

{"success":true,"status":"ok","action":"SOCKET:ON","pending":true,"message":"命令已接收,正在执行"}

🐛 常见问题

问题1: 编译失败

解决: 检查ESP-IDF环境是否正确配置

问题2: 烧录失败

解决:

  • 检查COM端口是否正确
  • 确保ESP32处于下载模式
  • 尝试按住BOOT按钮后重新烧录

问题3: HTTP服务器启动失败

解决:

  • 检查内存是否足够
  • 确认配置参数正确
  • 查看串口日志获取详细错误信息

📊 预期结果

编译烧录成功后:

  1. /ir接口可以正常访问
  2. 红外控制命令可以正确执行
  3. APP客厅监控页面可以正常控制设备
  4. 串口显示红外发射日志

🔍 调试技巧

查看HTTP路由注册

串口搜索:HTTP服务器启动成功

查看红外命令执行

串口搜索:红外控制命令红外发射

查看内存使用

串口搜索:free heapmemory