新手上路
- 积分
- 29
- 金钱
- 29
- 注册时间
- 2016-1-30
- 在线时间
- 22 小时
|
20金钱
STM32CubeMX 生成了SDMMC1 SD卡 和FATFS代码,SD卡插入的情况下上电可以正常工作。但是如果拔出SD卡再插入SD卡后,就不能通过FATFS 接口再访问SD卡了,即使重新复位SDMMC1(HAL_SD_DeInit 然后HAL_SD_Init)也不能恢复正常,FATFS接口返回错误码为FR_DISK_ERR,但是重新上电后可以恢复正常,我想问下如何不重新上电的情况下从这个错误状态恢复,非常感谢。
除此之外,我在用FATFS+SD 做文件读写压力测试的时候(大约连续测试读写4天),极其偶尔的情况下也会出现文件系统接口返回FR_DISK_ERR,除了重新启动板子,否则不能从错误状态恢复。
我已经将SDMMC1的QoS设置为最高优先级(GPV->AXI_INI3_READ_QOS = 0xF; GPV->AXI_INI3_WRITE_QOS = 0xF;),避免因为总线拥堵导致SD卡访问异常,但是依然不能消除这个问题。
所以我才想如果发生错误的时候,是否可以重新启动SDMMC1部分来解决这个问题(HAL_SD_DeInit then HAL_SD_Init),但是我发现它还是不能将SDMMC1从错误状态恢复。
|
|