最近在用阿波罗H743的开发板测试基于SD卡的FatFS性能,用了光盘里实验42FSTFS实验的代码来测试。当SDIO使用轮询方式时,写SD卡速度如下:
数据块大小(Byte) 数据块数量 耗时(ms) 速度
1. 4096 100 340 1.204MB/s
2. 8192 100 344 2.381MB/s
3. 16384 100 402 4.075MB/s
4. 32768 100 544 6.023MB/s
那第一个问题就是还有办法更快吗?存储数据的buffer已经是4字节对齐了,但是我看有个美国人的帖子,说是可以达到9MB/S。
目前我的SDMMCCLK是25M,尝试过加到50M,速度是一样的,是否有方法可以提高SDIO的有效时钟。
当我将SDIO改为DMA模式时(就是将SD_DMA_MODE这个宏设为1时), 代码会卡在
while(SDCardReadStatus==0){}; 这句,尝试降低时钟到12.5M也时卡在这,就没有走到过HAL_SD_RxCpltCallback()
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>