MCU: GD32F405
FATFS: R0.13a
裸机,没有跑RTOS。
工程使用了GD32F405的TCM(总大小为64KB),其中堆栈分别各用了2KB。
f_read读取的数据放到使用全局数组中,如果这个全局数组使用TCM内存,在读取数据小于512字节时,可以正常读取;如果大于512字节时,第一次可以正常读取,后面再读取就会出现FR_DISK_ERR。
如果不使用TCM,全局数组直接使用普通的SRAM,无论读取数据大于512字节还是小于512字节,都可以正常读取。
问题已经解决,但是原因还未查明,有空了再仔细查明。