概要
FREERTOS下的SDIO+fatfs
实现文件读写
CUBEMX初始化
继续使用(一)的cubemx文件
若不使用,则需要自己创建通用的F407的CUBE工程,设置好RCC和SYS即可
修改SYS时钟源
OS下的SDIO需要开启DMA且打开中断使能,os的中断是从5号开始
开启fatfs
PA6设置为Input
开启freertos
选择v2,heap5
打开串口1作为调试输出端口
时钟对应修改
栈大小改为0x1000
点击生成
user和cubemx生成代码分离
gitee仓库获取usercode(2)
使用freertos后,task的创建都在自建的usermain.c内完成
将usercode添加进工程
file_task为读写测试函数,并在串口1输出各个读取状态
gitee仓库
移植注意事项
sdio.c中的
hsd.Init.BusWide = SDIO_BUS_WIDE_4B;需要更改为
hsd.Init.BusWide = SDIO_BUS_WIDE_1B;//不然不能过初始化
cubemx更新会导致工程需要重加载,解决办法为,在(工程名).uvprojx文件同目录下创建一个project.uvmpw解决
fatfs,使用f_write需要f_close才将缓存写入文件
相关文章
【F407+CUBEMX+EMWIN开发系列】(一) RA8875裸机