ESP32-WROOM-32D模组上传Arduino IDE示例编译的固件后总是重启,该如何解决

    手头的ESP32-WROOM-32D模组搭载的是单核CPU,因此Arduino IDE需要配置成单核编译模式。用ESP32的示例编译并上传固件后不断重启:

例如GetChipID,源代码: 

uint32_t chipId = 0;

void setup() {

       Serial.begin(115200);

}

void loop() {

       for(int i=0; i<17; i=i+8) {

         chipId |= ((ESP.getEfuseMac() >> (40 - i)) & 0xff) << i;

       }

       Serial.printf("ESP32 Chip model = %s Rev %d\n", ESP.getChipModel(), ESP.getChipRevision());

       Serial.printf("This chip has %d cores\n", ESP.getChipCores());

  Serial.print("Chip ID: "); Serial.println(chipId);

 

       delay(3000);

}

则运行后会不断重启并打印如下信息:

Rebooting...

ets Jun  8 2016 00:22:57

rst:0xc (SW_CPU_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)

configsip: 0, SPIWP:0xee

clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00

mode:DIO, clock div:1

load:0x3fff0018,len:4

load:0x3fff001c,len:1216

ho 0 tail 12 room 4

load:0x40078000,len:10944

load:0x40080400,len:6388

entry 0x400806b4

E (104) system_api: Base MAC address from BLK0 of EFUSE CRC error, efuse_crc = 0x00; calc_crc = 0xd0

abort() was called at PC 0x400e1753 on core 0

ELF file SHA256: 0000000000000000

Backtrace: 0x4008443b:0x3ffb1ee0 0x40084699:0x3ffb1f00 0x400e1753:0x3ffb1f20 0x400d0cee:0x3ffb1f60 0x400d0b9b:0x3ffb1f90 0x400d14f1:0x3ffb1fb0 0x40085651:0x3ffb1fd0

如果把源码中的

for(int i=0; i<17; i=i+8) {

         chipId |= ((ESP.getEfuseMac() >> (40 - i)) & 0xff) << i;

       }

这一部分注释掉,即:

uint32_t chipId = 0;

void setup() {

       Serial.begin(115200);

}

void loop() {

       Serial.printf("ESP32 Chip model = %s Rev %d\n", ESP.getChipModel(), ESP.getChipRevision());

       Serial.printf("This chip has %d cores\n", ESP.getChipCores());

  Serial.print("Chip ID: "); Serial.println(chipId);

 

       delay(3000);

}

则可以完全正。

请教各位大佬指教一下,这是什么原因?该如何解决?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值