stm32 文件系统dma大小_STM32F407 SD卡文件系统接口优化-DMA字节对齐问题

针对STM32F407设备,通过SD卡文件系统接口优化提高读取速度。文章探讨了DMA字节对齐问题,如何影响读取效率,以及如何通过调整DMA设置实现非对齐数据的读取,最终成功将图片显示时间从300ms降低到100ms。
摘要由CSDN通过智能技术生成

前几天,做了图片显示的实验,将一张24BIT的BMP从SD卡显示到TFT LCD上。

LCD用FSMC控制。

速度真他慢,真像PPT的渐变效果。

测试了一下,300ms一屏,实在无法忍受。

决定看看时间都浪费在哪里。

测试1:

如果刷一种颜色到LCD,只要10ms。

程序就是用FOR循环将320*240个U16发到LCD。

测试2:

屏蔽从SD卡读数据,只执行将原来图片显示中显示的代码。

运行时间27ms。应该算正常,毕竟有不少的数据处理。

也就是说,读数据画了270ms。要优化,就只能从大头入手,毕竟你就算把图片数据处理全优化掉,也才17ms。

根据本人多人经验:只要涉及到数据读取速度的优化,有一个屡试不爽的方法,就是一次读多一点的数据。

由于RAM不够,不可能将图片一次性全部读到RAM,原来的程序是每次读一行,那么我们现在就改为一次读10行吧。

测试3:

改为一次读10行或者20行,测试,时间300ms?

经验失效?

不应该,毕竟多年经验。而且时间确实是浪费在读数据啊?

分析一下读数据,并输出LOG调试,发现问题:

1 每次读一行,FATFS文件系统调用SD卡接口时,只会读一个SECTOR。

2 每次读多行,FATFS文件系统调用SD卡接口时,会读取多个SECTOR。但是&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值