完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
是否有人与我遇到相同的问题
SDK版本3.1.0 在SPI Flash Size & Map: 32Mbit(512KB+512KB)的MAP下,其实只要是(512KB+512KB)的MAP中,user2的代码擦写user1的代码扇区时出现的崩溃。1024K+1024K MAP中可以正常操作。 就是代码在@0x81000地址启动后的user2下,执行了spi_flash_erase_sector(1);擦除0x1000地址的扇区,之后就卡死崩溃。 |
|
相关推荐
1个回答
|
|
在这种情况下,Flash 512K+512K MAP下擦写扇区后崩溃的原因可能有以下几点:
1. **扇区擦除范围**:首先,确保擦除的扇区范围是正确的。在ESP32中,扇区大小为64KB。如果擦除的扇区范围不正确,可能会导致设备崩溃。 2. **Flash映射问题**:在512K+512K的映射中,可能存在一些映射问题,导致擦写操作失败。在1024K+1024K的映射中,由于扇区大小和映射方式的不同,可能不会出现这个问题。 3. **SPI Flash驱动问题**:可能是SPI Flash驱动的问题,导致在特定情况下无法正确擦写扇区。可以尝试更新SPI Flash驱动或者使用其他驱动来解决这个问题。 4. **硬件问题**:如果硬件存在问题,可能会导致擦写操作失败。可以尝试更换SPI Flash芯片或者检查硬件连接是否正常。 5. **软件问题**:可能是ESP32 SDK版本3.1.0中的软件问题。可以尝试升级到更高版本的SDK,看看是否解决了这个问题。 为了解决这个问题,你可以尝试以下步骤: 1. 确保擦除的扇区范围是正确的,例如:`spi_flash_erase_sector(1)` 应该擦除0x1000到0x1FFFF的地址范围内的数据。 2. 检查SPI Flash驱动是否是最新的,或者尝试使用其他驱动。 3. 升级ESP32 SDK到更高版本,看看是否解决了这个问题。 4. 如果可能的话,更换SPI Flash芯片或者检查硬件连接是否正常。 |
|
|
|
只有小组成员才能发言,加入小组>>
343 浏览 0 评论
1192 浏览 1 评论
587浏览 6评论
484浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
468浏览 5评论
467浏览 4评论
443浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-28 11:47 , Processed in 0.721219 second(s), Total 47, Slave 41 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号