首先在端口配置中选择SDIO和FatFS:然后修改SDIO的配置,增加收发DMA,如下图:打开DMA和SDIO的中断,且...
首先我们看一下硬件电路图,这是标准的SDIO接口: 在cubemx中设置SDIO接口的时候,如下图: 选择SDIO接口; 因为硬件上我们连接的是D0~D3,所以选择SD 4bits Wide bus,使用4bit宽度的SDIO总线;选择之后,右侧图中的SDIO相关引脚被选中(变绿),与连接TF卡的引脚对应; 接着设置SDIO的时钟分频,这里我们选择8分频(注意这...
- DEBUG接口配置:配置好DEBUG接口,这对于调试和程序下载至关重要。- DMA配置:使用DMA可以减少MCU的资源开销,提高数据传输效率。根据SDIO的配置,正确配置DMA以支持数据传输。- 文件系统配置:在STM32CubeMX中启用FATFS,并配置相关的文件系统参数。适当增加堆栈大小,以避免在读写大数据时出现错误。在main函数中,首...
之后,我们看到数据手册的SDIO章节,我们可以看到SDIO外设分为:1)AHB总线接口 和 2)SDIO适配器两大块,且使用不同的时钟,这也就是我们在时钟树配置中可以看到有两路时钟配置的原因了!从下图我们可以知道,SDIO外设不同于其他外设,其外设模块部分与中断、DMA是分开的,并采用不同的时钟!编辑 关于AHB总线接口及SDIO适配器...
通过SDIO_SdCardSetDeviceMode,后才算数.这里只是定义一个默认的模式(SD_DMA_MODE) static u8 StopCondition=0; //是否发送停止传输标志位,DMA多块读写的时候用到 volatile SDIO_SD_ERROR_INFO TransferError=SD_OK; //数据传输错误标志,DMA读写时使用 volatile u8 TransferEnd=0; //传输结束标志,DMA读写时...
首先使能SDIO接口的SD4线模式,参数设置默认即可: 使能DMA收发,参数默认即可: 使能SDIO中断: 使能SDIO功能后,再配置FATFS文件系统,选择FATFS,使能SD Card,然后可以对文件系统的一些功能进行配置,这里使能了中文以及长文件名的功能,会占用较大的单片机flash空间。对于一些flash比较小的单片机,则需要对一些功能进行裁剪以节省...
第一步设置时钟,rtc还有SDIO,如图所示 i_抛物线 仗剑天涯 3 2,FATFS选择SD card i_抛物线 仗剑天涯 3 3,选择串口2,打印数据,便于调试 i_抛物线 仗剑天涯 3 4时钟配置,如图 i_抛物线 仗剑天涯 3 5,串口配置,开启DMA i_抛物线 仗剑天涯 3 6,SDIO配置,发送接收开启DMA,其他配置默认 i_抛物线 仗剑天...
我测了一下,我的板子,移动了DMA方式的SDIO驱动。利用官方的例程,跑FATFS,写文件只能达到120KB/s...
【STM32】使用SDIO进行SD卡读写,包含文件管理FatFs(一)-初步认识SD卡 【STM32】使用SDIO进行SD卡读写,包含文件管理FatFs(二)-了解SD总线,命令的相关介绍 【STM32】使用SDIO进行SD卡读写,包含文件管理FatFs(三)-SD卡的操作流程 【STM32】使用SDIO进行SD卡读写,包含文件管理FatFs(四)-介绍库函数,获取一些SD卡的...
本文将主要分享关于使用 CubeMx 配置 stm32 的工程,通过SDIO总线完成 SD卡/SD nand 的读写,并配置FATFS,采用文件操作实现对 SD卡/SD nand 的读写操作;此外还将分享博主在调试过程中遇到的一些问题,比如CubeMx自动生成的驱动存在的bug等,以及分享关于驱动部分的代码分析!