STM32F407的FATFS读写速度问题

2019-07-20 08:23发布

原子哥,我参照你的测试代码,http://www.openedv.com/thread-94284-1-25.html,分别移植到STM32F103的板子和STM32F407的板子上测试了,STM32F407的SD驱动也是用的原子的,测试用的卡是C10的,同一张卡。每次写入字节数4096。
编译环境采用IAR,STM32F407的板子上测试,速度229k/s,太慢了,与原子哥的测试结果相差太大。底层SD卡驱动没问题,测试过多块写速度达到4M/s,单块写速度250k/s。
找了几天的原因,都发现不了问题。最后将FATFS写输出的块大小打印出来,发现FATFS输出块写是1和7交替出现。
捕获42.PNG
捕获41.PNG

而STM32F103的板子编译环境采用KEIL5, FATFS及上层程序都相同,FATFS输出的块写数基本都是8个,速度达到1.1M/s,所以他的速度明显高于STM32F407,
捕获11.PNG
捕获12.PNG


分析得到的: 上层程序基本没变,移植到STM32F407后,仅改变了编译环境,由KEIL换成了IAR,怎么FATFS输出的块写大小就变了呢?
原子哥,帮我分析下原因,万分感激!

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。