打印

HAL库源文件stm32h7xx_hal_sd_ex.c学习笔记,主要用于配置SDIO自带的DMA(2018-09-28 V1.0)

[复制链接]
321|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
说明

此文件主要是配置SDIO自带的DMA。



这个源文件内容比较少:
(1)使用函数HAL_SDEx_ConfigDMAMultiBuffer配置buffer0和buffer1的起始地址以及大型。
(2)多缓冲的读写操作是通过函数HAL_SDEx_ReadBlocksDMAMultiBuffer和HAL_SDEx_WriteBlocksDMAMultiBuffer实现。


1、函数HAL_StatusTypeDef HAL_SDEx_ConfigDMAMultiBuffer(SD_HandleTypeDef *hsd, uint32_t *pDataBuffer0, uint32_t *pDataBuffer1, uint32_t BufferSize)

(1)配置的双缓冲,两个缓冲大小必须是一样的。

2、函数HAL_StatusTypeDef HAL_SDEx_ReadBlocksDMAMultiBuffer(SD_HandleTypeDef *hsd, uint32_t BlockAdd, uint32_t NumberOfBlocks)

(1)实现从地址BlockAdd开始读取NumberOfBlocks个块

3、函数HAL_StatusTypeDef HAL_SDEx_WriteBlocksDMAMultiBuffer(SD_HandleTypeDef *hsd, uint32_t BlockAdd, uint32_t NumberOfBlocks)

(1)实现从地址BlockAdd开始写入NumberOfBlocks个块

4、函数HAL_StatusTypeDef HAL_SDEx_ChangeDMABuffer(SD_HandleTypeDef *hsd, HAL_SDEx_DMABuffer_MemoryTypeDef Buffer, uint32_t *pDataBuffer)

(1)在运行状态下修改buffer0和buffer1的地址,如果当前在用buffer0,那么可修改buffer1,反之亦然。

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

377

主题

377

帖子

0

粉丝