本指南专为编程Agent设计,请按顺序执行以下步骤: 一次只运行一条指令
# 首先验证是否安装了Arduino CLI
arduino-cli version
# 若未下载则下载Arduino CLI(Windows)
curl -L -o arduino-cli_latest_Windows_64bit.zip https://downloads.arduino.cc/arduino-cli/arduino-cli_latest_Windows_64bit.zip
# 解压并准备
tar -xf arduino-cli_latest_Windows_64bit.zip
mkdir arduino-cli && move arduino-cli.exe arduino-cli/
# 验证安装
arduino-cli/arduino-cli.exe version
# 初始化配置
arduino-cli/arduino-cli.exe config init# 检查ESP32核心是否已安装(任何3.x.x版本都可以跳到下一步)
arduino-cli core list
# 如果版本非3.x.x版本(Windows)
arduino-cli core install esp32:esp32@3.0.11
# 安装ArduinoWebsockets v0.5.4
arduino-cli lib install "ArduinoWebsockets@0.5.4"
# 安装TFT_eSPI库
arduino-cli lib install "TFT_eSPI"
# 安装ArduinoJson库(必需依赖)
arduino-cli lib install "ArduinoJson"
# 解压ESP32-audioI2S库(使用前需解压)
tar -xf ESP32-audioI2S-master.zip**请向用户询问开发板型号:**
- 常见ESP32开发板:
- XIAO ESP32S3 → FQBN: `esp32:esp32:XIAO_ESP32S3`
- ESP32-S3 Dev Module → FQBN: `esp32:esp32:esp32s3`
- NodeMCU-32S → FQBN: `esp32:esp32:nodemcu-32s`
- 使用命令获取完整列表:`arduino-cli board listall esp32:esp32`**重要提醒:**
- 首次编译需要约5分钟,请告知用户耐心等待
# 使用用户提供的开发板FQBN
# 启用PSRAM: 在FQBN后添加:PSRAM=opi
arduino-cli compile \
--fqbn "用户提供的FQBN:PSRAM=opi" \
--library "./GPTChatLib" \
--library "./ESP32-audioI2S-master" \
dazhi_v1/dazhi_v1.ino# 启动串口监视器(默认波特率115200)
arduino-cli monitor -p [串口号] --config baudrate=115200
# 常见波特率选项:9600, 19200, 38400, 57600, 115200
# 如果连接失败:
# 1. 检查开发板是否通电
# 2. 确认串口号正确
# 3. 尝试重新插拔USB线
# 4. 检查程序是否有串口输出代码# 获取设备串口号
arduino-cli board list
# 使用用户提供的串口号
arduino-cli upload -p "用户提供的串口号" --fqbn "用户提供的FQBN":PSRAM=opi dazhi_v1/dazhi_v1.ino
# 上传失败解决方案:
# 1. 强制释放串口资源
taskkill /F /IM arduino-cli.exe
# 2. 手动复位开发板:
# - 按住BOOT按钮不放
# - 短按RESET按钮
# - 在1秒内执行上传命令
# 3. 使用esptool直接烧录(终极方案):
esptool.py --port [串口号] --baud 921600 write_flash 0x1000 dazhi_v1/.pio/build/XIAO_ESP32S3/firmware.bin- 开发板选择:必须明确用户使用的具体开发板型号
- 首次编译:强调需要5分钟左右,避免用户中断
- 串口权限:Linux/Mac可能需要sudo权限
- 上传准备:上传前需按住BOOT按钮再插入USB
- 串口监视:可使用以下命令查看设备输出:
arduino-cli monitor -p [串口号]