完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
ESP-IDF 5.0.3
ESP32 WROOM 32E Windows 11 vscode 测试加密动作,使用官方例程FLASH_ENCRYPtiON,除了添加IO引脚动作,没有修改。 烧写到一台ESP32模块上,动作逻辑和调试信息都正常,之后我想测试一下加密的效果, 使用esptool命令读取flash内容: esptool.py -p COM7 read_flash 0x0 0x400000 dump.bin 之后将该flash内容全部烧写到新的ESP32模块中,使用esptool命令: esptool.py -p COM6 write_flash 0x0 dump.bin COM6对应模块没有任何反应,之后我重新把正常程序烧写到COM6模块,烧写动作正常, 但是该模块变砖,没有任何反应了。 我原来试过未加密的程序,将一个模块的FLASH内容读取,全部烧写到另一个模块上,动作正常。 在开发模式下的加密动作,应该可以重新烧写程序吧,没有真正修改熔丝位。 |
|
相关推荐
2个回答
|
|
对于 flash 加密,develop mode 或者 release mode 均会操作部分 efuse(即电熔丝)。
|
|
|
|
这个问题可能有几个原因导致:
1. **加密数据的不兼容**:如果原始设备上运行的程序被加密,直接复制到另一台设备上可能不会工作,因为加密数据可能依赖于原始设备的某些特定配置或密钥。 2. **烧录过程中的错误**:在烧录过程中可能存在错误,导致新设备无法正常启动。这可能是由于烧录速度过快、连接不稳定或烧录命令参数不正确等原因。 3. **硬件问题**:新设备可能存在硬件问题,导致无法正常工作。 4. **软件版本不匹配**:如果两台设备的ESP-IDF版本不同,可能会导致不兼容的问题。 解决这个问题的方法: 1. **重新烧录**:首先,尝试重新烧录原始的未加密程序到新设备上,看看设备是否可以正常工作。如果可以,那么问题可能出在加密数据的复制上。 2. **检查烧录参数**:确保烧录命令的参数正确,包括烧录速度、烧录起始地址等。 3. **更新ESP-IDF版本**:确保两台设备的ESP-IDF版本相同,以避免版本不匹配的问题。 4. **使用正确的加密和解密方法**:如果需要在两台设备之间共享加密数据,确保使用正确的加密和解密方法,以便数据可以在新设备上正确解密和执行。 5. **硬件检查**:如果上述方法都无法解决问题,可能需要检查新设备的硬件是否存在问题。 6. **使用esptool.py的擦除功能**:在烧录之前,使用esptool.py的擦除功能彻底擦除新设备的FLASH,以确保没有旧数据干扰。 ```bash esptool.py --port COM6 erase_flash ``` 7. **逐步烧录**:尝试逐步烧录不同的分区,以确定问题出在哪个部分。 8. **查看日志**:如果可能,查看烧录过程中的日志输出,这可能会提供一些关于问题的线索。 |
|
|
|
只有小组成员才能发言,加入小组>>
407浏览 6评论
339浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
322浏览 5评论
322浏览 4评论
310浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-16 21:21 , Processed in 0.892320 second(s), Total 80, Slave 64 queries .
Powered by 电子发烧友网
© 2015 www.ws-dc.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号