我用的是
STM32F407vgt sdio DMA 写入sd卡。
挂载Fatfs文件系统,需要高速存取数据,目标是一秒存200帧 每帧约200字节。
发现存取速度达不到要求。
程序大致是这样
- ...
- f_lseek();
- f_write();
- f_sync();
- ...
于是单步调试 发现f_lseek和f_write()都很快(us级别)
但是执行f_sync这个函数时就花了6-8毫秒。
还有执行别的任务要执行,所以远远达不到200帧。
ps:我看别的飞控源码他们每秒能存2000hz的数据,是怎么做到的。
有没有做过类似项目的?分享一下经验。
或者不用fatfs怎么存sd卡方便读取和速度快一些?