Fatfs + DMA不等待 + OS管理 + LL库重构SDMMC驱动

2019-08-14 14:54发布

效率高于官方HAL库,.官方HAL和LL是结合用的,但是官方的LL其实也是HAL的一部分.我这个是完全LL库,修改过的LL库和自己优化过的逻辑结构.
并且有个超级完善的结构体,用操作系统信号量控制DMA传输,不要查询标志浪费CPU资源,非常方便.

先看看我定义的结构体.

2017-05-09_190854.png

TF卡上的CID CSD已经全部解释出来了.当然不是所有卡都是全齐字段的,我这种OV的山寨卡,贪便宜买的就有些没有.

DMA不查询标志位,用中断方法,然后中断发生后,操作系统所在任务才唤醒.也就是说,只要发了f_write之类的指令,任务就会马上挂起,然后等写入完成了,任务再继续进入,不需要占用CPU.

微信截图_20170509192023.png

程序基于STM32F769 DISCO实现,可以很方便移植到别的平台,包含了基本的测试.

STM32F769程序LL库FreeRTOS实验SDMMC_V2.zip (4.81 MB, 下载次数: 967) 2017-5-9 19:23 上传 点击文件名下载附件





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