分享一个STM32CubeMX实现SDIO+DMA+FatFs的步骤

2019-12-11 18:30发布

我的软硬件环境是:STM32CubeMX V4.25   Keil 5.18   STM32F429BITx

首先在端口配置中选择SDIO和FatFS:
FATFS.png (58.35 KB, 下载次数: 0) 下载附件 2018-8-20 09:14 上传

配置完成后生成代码,这时还不能直接使用,需要重写一下SD卡收发的回调函数,我是在sd_driver.c文件末尾的用户保护代码区增加了以下内容:
(以上STM32CubeMX部分配置网上教程很多,但很少有人提及回调函数这个问题,不知道是不是以前的版本不需要这一步?)
/* USER CODE BEGIN lastSection */
/* can be used to modify / undefine previous code or add new code */

void HAL_SD_TxCpltCallback(SD_HandleTypeDef *hsd)
{
    BSP_SD_WriteCpltCallback();
}

void HAL_SD_RxCpltCallback(SD_HandleTypeDef *hsd)
{
     BSP_SD_ReadCpltCallback();
}
       
/* USER CODE END lastSection */

完成后即可正常使用FatFS文件系统了:
res=f_mount(&SDFatFS, (TCHAR const*)SDPath, 1);
result = f_open(&file,sFileName,FA_OPEN_EXISTING|FA_WRITE|FA_OPEN_ALWAYS);
略.....
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
18条回答
ZXF_CUG
1楼-- · 2019-12-13 08:38
了无 发表于 2018-8-23 20:37
非常好的教程,有没有dma  加文件系统加spi flash的配置方案

spiflash没有现成的  可能得自己写点程序  我还没试过
dtcc1234
2楼-- · 2019-12-13 09:50
非常好的示范,谢谢!
hwh1328
3楼-- · 2019-12-13 13:50
谢谢楼主的分享!
网络孤客
4楼-- · 2019-12-13 15:42
 精彩回答 2  元偷偷看……
g921002
5楼-- · 2019-12-13 17:32
樓主最後一段最重要,之前調試失敗就是死在那邊。
zdhxzy1981
6楼-- · 2019-12-13 22:34
感谢楼主!

一周热门 更多>