This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TM4C129XNCZAD:从 SDcard 读取字节时出现 FatFS 错误

Guru**** 2391415 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1207525/tm4c129xnczad-fatfs-error-while-reading-bytes-from-sdcard

器件型号:TM4C129XNCZAD

我正在使用通过 MCU 上的 SPI3接口连接的8GB SD 卡、并发现有时在尝试打开文件时、某些迭代往往会使用 FR_DISK_ERR 失败

深入了解 TI 驱动程序内部的 FATfs 和 SDSPI 库后、我发现在将 CMD17发送到 SDCard 时会发生以下序列

CMD17 (0x51)+  u32_3_Buffer_len  u32_3_Buffer_len  + u32_1_Buffer_len  u32_0_Buffer_len + crc_val (默认 val 0x01)--> tx

然后我们应该 等待一个有效的超时响应;10次尝试、应为0x00、以便在函数"SDSPITiva_diskRead "处进行下一个接收步骤

但是、我一直接收到0x67、该消息使读取操作无效、并显示错误 FR_DISK_ERR

此外、 有时此值为0x00、但之后、在函数"rcvr_datablock"内、我们收到一个无效的令牌、该令牌应该是0xFE、但我们收到的是0xFF、它也使使用相同的错误代码 FR_DISK_ERR 的读取操作无效


这个错误发生在一个随机的方式在一个特定的时间约7或9毫秒,但一直拒绝所有 SDCard 打开操作,这是真正恼人的

此外、我注意到这个问题从使令牌无效开始、然后是 send_cmd、接着是令牌、以此类推、直到 SDcard 使用正确的值进行响应