不同系列的 ESP 产品对应的软件 CHIP ID 是什么?

不同系列的 ESP 产品对应的软件 CHIP ID 信息请参考 esp-idf/components/bootloader_support/include/esp_app_format.h

如下:

c 复制代码
typedef enum {
    ESP_CHIP_ID_ESP32 = 0x0000,  /*!< chip ID: ESP32 */
    ESP_CHIP_ID_ESP32S2 = 0x0002,  /*!< chip ID: ESP32-S2 */
    ESP_CHIP_ID_ESP32C3 = 0x0005, /*!< chip ID: ESP32-C3 */
    ESP_CHIP_ID_ESP32S3 = 0x0009, /*!< chip ID: ESP32-S3 */
    ESP_CHIP_ID_ESP32C2 = 0x000C, /*!< chip ID: ESP32-C2 */
    ESP_CHIP_ID_ESP32C6 = 0x000D, /*!< chip ID: ESP32-C6 */
    ESP_CHIP_ID_ESP32H2 = 0x0010, /*!< chip ID: ESP32-H2 */
    ESP_CHIP_ID_ESP32P4 = 0x0012, /*!< chip ID: ESP32-P4 */
    ESP_CHIP_ID_ESP32C5 = 0x0013, /*!< chip ID: ESP32-C5 */
    ESP_CHIP_ID_INVALID = 0xFFFF /*!< Invalid chip ID (we defined it to make sure the esp_chip_id_t is 2 bytes size) */
} __attribute__((packed)) esp_chip_id_t;

当应用固件与芯片型号不匹配时,通常会报告如下错误:

c 复制代码
// For example : The Chip is ESP32, the firmware is ESP32-C3
E (7515) esp_https_ota: Mismatch chip id, expected 0, found 5

注意:这里的 expected 0, found 5 都是十进制打印,因此需要将 CHIP ID Number 由两字节的十六进制转换为十进制,即:

芯片型号 ESP32 ESP32-C2 ESP32-C3 ESP32-C5 ESP32-C6 ESP32-S2 ESP32-S3 ESP32-H2 ESP32-P4
CHIP ID 0x0 0xC 0x5 0x13 0xD 0x2 0x9 0x10 0x12
打印结果 0 12 5 19 13 2 9 16 18
相关推荐
黎雁·泠崖2 小时前
C 语言指针进阶教程:const 修饰、野指针规避与传址调用
c语言·开发语言
历程里程碑3 小时前
C++ 17异常处理:高效捕获与精准修复
java·c语言·开发语言·jvm·c++
Dillon Dong4 小时前
从C到Simulink:用Counter模块玩转嵌入式定时器
c语言·stm32·simulink
宵时待雨4 小时前
C语言笔记归纳22:预处理详解
c语言·开发语言·笔记
superman超哥4 小时前
仓颉语言中循环语句(for/while)的深度剖析与工程实践
c语言·开发语言·c++·python·仓颉
小尧嵌入式5 小时前
Linux进程线程与进程间通信
linux·运维·服务器·c语言·开发语言·数据结构·microsoft
IT方大同5 小时前
C语言选择控制结构
c语言·开发语言
智者知已应修善业5 小时前
【字符串提取3个整数求和】2024-2-11
c语言·c++·经验分享·笔记·算法
晚秋大魔王5 小时前
C语言-宏的基础、进阶、高级、内置宏的用法
c语言·开发语言·
进阶的猪6 小时前
stm32 GPIO输出-使用固件库点亮LED灯 Q&A
c语言·笔记·stm32·单片机