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

ESP32在Arduino IDE中同时使用AT指令与自定义代码的方法问询

ESP32同时运行AT指令与Arduino自定义代码的实现方案

问题核心原因

官方AT固件是独立的完整固件,占据ESP32 Flash的全部用户程序空间,通过Arduino IDE上传自定义代码时会直接覆盖原有AT固件,因此AT指令会失效。

可用解决方案

  • 方案1:Arduino代码内集成AT指令服务(最推荐)
    无需单独烧录官方AT固件,直接在你的Arduino项目中实现轻量AT指令响应逻辑。你可以正常编写自定义业务代码,同时预留串口监听逻辑,通过Serial.read()等接口读取串口输入的AT指令,匹配到对应指令后返回标准AT响应即可。如果需要用到官方AT固件的WiFi、蓝牙等功能,直接调用ESP32 Arduino内核自带的WiFi、BluetoothSerial等库实现对应功能即可,开发成本最低。
  • 方案2:自定义分区表运行双固件
    修改ESP32的Flash分区表,拆分出两个独立的程序分区,分别烧录官方AT固件和你的Arduino自定义代码,两个固件通过共享内存、内部UART透传的方式实现通信。该方案操作复杂度较高,需要自行适配分区规则和跨固件通信逻辑,仅适合对ESP32底层有足够了解的开发者使用
  • 方案3:AT指令透传转发
    如果你的使用场景是外接主控通过AT指令调用ESP32的网络能力,同时ESP32需要运行自定义逻辑,可以直接在Arduino代码中实现AT指令透传:收到外接主控的AT指令后直接调用内核API执行操作,结果按AT标准格式返回给外接主控即可,完全可以实现和官方AT固件一致的使用体验。

内容的提问来源于stack exchange,提问作者황영진

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 04:06:03