A24 STM32_HAL库函数 之 I2s通用驱动 -- A-- 所有函数的介绍及使用 1 该驱动函数预览 1.1 HAL_I2S_Init 1.2 HAL_I2S_DeInit 1.3 HAL_I2S_MspInit 1.4 HAL_I2S_MspDeInit 1.5 HAL_I2S_Transmit 1.6 HAL_I2S_Receive 1.7 HAL_I2S_Transmit_IT 1.8 HAL_I2S_Receive_IT 1.9 HAL_I2S_Transmit_DMA 1.10 HAL_I2S_Receive_DMA 该文档修改记录: 总结
1 该驱动函数预览
序号 函数名 描述 1 HAL_I2S_Init() 初始化I2S接口。 2 HAL_I2S_DeInit() 反初始化I2S接口。 3 HAL_I2S_MspInit() 初始化MCU外设相关的I2S引脚或资源。 4 HAL_I2S_MspDeInit() 反初始化MCU外设相关的I2S引脚或资源。 5 HAL_I2S_Transmit() 通过I2S接口发送数据。 6 HAL_I2S_Receive() 通过I2S接口接收数据。 7 HAL_I2S_Transmit_IT() 使用中断发送数据通过I2S接口。 8 HAL_I2S_Receive_IT() 使用中断接收数据通过I2S接口。 9 HAL_I2S_Transmit_DMA() 使用DMA发送数据通过I2S接口。 10 HAL_I2S_Receive_DMA() 使用DMA接收数据通过I2S接口。 11 HAL_I2S_DMAPause() 暂停I2S DMA传输。 12 HAL_I2S_DMAResume() 恢复I2S DMA传输。 13 HAL_I2S_DMAStop() 停止I2S DMA传输。 14 HAL_I2S_IRQHandler() I2S中断处理程序。 15 HAL_I2S_TxHalfCpltCallback() I2S发送半完成回调函数。 16 HAL_I2S_TxCpltCallback() I2S发送完成回调函数。 17 HAL_I2S_RxHalfCpltCallback() I2S接收半完成回调函数。 18 HAL_I2S_RxCpltCallback() I2S接收完成回调函数。 19 HAL_I2S_ErrorCallback() I2S错误回调函数。 20 HAL_I2S_GetState() 获取I2S接口的状态。 21 HAL_I2S_GetError() 获取I2S接口的错误状态。
以下是使用模板:
# include "stm32f4xx_hal.h" int main ( void ) { HAL_Init ( ) ; HAL_I2S_MspInit ( ) ; HAL_I2S_Init ( ) ; HAL_I2S_Transmit ( ) ; HAL_I2S_Receive ( ) ; HAL_I2S_Transmit_DMA ( ) ; HAL_I2S_Receive_DMA ( ) ; HAL_I2S_IRQHandler ( ) ; uint32_t i2sState = HAL_I2S_GetState ( ) ; uint32_t i2sError = HAL_I2S_GetError ( ) ; HAL_I2S_DeInit ( ) ; HAL_I2S_MspDeInit ( ) ; return 0 ;
}
1.1 HAL_I2S_Init
函数名 HAL_I2S_Init 函数原形 HAL_StatusTypeDef HAL_I2S_Init(I2S_HandleTypeDef *hi2s) 功能描述 初始化 I2S 外设 输入参数 hi2s:I2S 句柄,指向一个 I2S_HandleTypeDef 结构体 输出参数 无 返回值 HAL_StatusTypeDef:操作状态,可以是 HAL_OK 或 HAL_ERROR 先决条件 无 被调用函数 无
1.2 HAL_I2S_DeInit
函数名 HAL_I2S_DeInit 函数原形 HAL_StatusTypeDef HAL_I2S_DeInit(I2S_HandleTypeDef *hi2s) 功能描述 反初始化 I2S 外设 输入参数 hi2s:I2S 句柄,指向一个 I2S_HandleTypeDef 结构体 输出参数 无 返回值 HAL_StatusTypeDef:操作状态,可以是 HAL_OK 或 HAL_ERROR 先决条件 无 被调用函数 无
1.3 HAL_I2S_MspInit
函数名 HAL_I2S_MspInit 函数原形 void HAL_I2S_MspInit(I2S_HandleTypeDef *hi2s) 功能描述 初始化 I2S 外设的 GPIO、时钟和 DMA 配置 输入参数 hi2s:I2S 句柄,指向一个 I2S_HandleTypeDef 结构体 输出参数 无 返回值 无 先决条件 无 被调用函数 无
1.4 HAL_I2S_MspDeInit
函数名 HAL_I2S_MspDeInit 函数原形 void HAL_I2S_MspDeInit(I2S_HandleTypeDef *hi2s) 功能描述 反初始化 I2S 外设的 GPIO、时钟和 DMA 配置 输入参数 hi2s:I2S 句柄,指向一个 I2S_HandleTypeDef 结构体 输出参数 无 返回值 无 先决条件 无 被调用函数 无
1.5 HAL_I2S_Transmit
函数名 HAL_I2S_Transmit 函数原形 HAL_StatusTypeDef HAL_I2S_Transmit(I2S_HandleTypeDef *hi2s, uint16_t *pData, uint16_t Size, uint32_t Timeout) 功能描述 通过 I2S 外设发送数据 输入参数 1 hi2s:I2S 句柄,指向一个 I2S_HandleTypeDef 结构体 输入参数 2 pData:指向发送数据的缓冲区 输入参数 3 Size:要发送的数据长度 输入参数 4 Timeout:超时时间 输出参数 无 返回值 HAL_StatusTypeDef:操作状态,可以是 HAL_OK 或 HAL_ERROR 先决条件 无 被调用函数 无
1.6 HAL_I2S_Receive
函数名 HAL_I2S_Receive 函数原形 HAL_StatusTypeDef HAL_I2S_Receive(I2S_HandleTypeDef *hi2s, uint16_t *pData, uint16_t Size, uint32_t Timeout) 功能描述 通过 I2S 外设接收数据 输入参数 1 hi2s:I2S 句柄,指向一个 I2S_HandleTypeDef 结构体 输入参数 2 pData:指向接收数据的缓冲区 输入参数 3 Size:要接收的数据长度 输入参数 4 Timeout:超时时间 输出参数 无 返回值 HAL_StatusTypeDef:操作状态,可以是 HAL_OK 或 HAL_ERROR 先决条件 无 被调用函数 无
1.7 HAL_I2S_Transmit_IT
函数名 HAL_I2S_Transmit_IT 函数原形 HAL_StatusTypeDef HAL_I2S_Transmit_IT(I2S_HandleTypeDef *hi2s, uint16_t *pData, uint16_t Size) 功能描述 使用中断方式通过 I2S 外设发送数据 输入参数 1 hi2s:I2S 句柄,指向一个 I2S_HandleTypeDef 结构体 输入参数 2 pData:指向发送数据的缓冲区 输入参数 3 Size:要发送的数据长度 输出参数 无 返回值 HAL_StatusTypeDef:操作状态,可以是 HAL_OK 或 HAL_ERROR 先决条件 无 被调用函数 无
1.8 HAL_I2S_Receive_IT
函数名 HAL_I2S_Receive_IT 函数原形 HAL_StatusTypeDef HAL_I2S_Receive_IT(I2S_HandleTypeDef *hi2s, uint16_t *pData, uint16_t Size) 功能描述 使用中断方式通过 I2S 外设接收数据 输入参数 1 hi2s:I2S 句柄,指向一个 I2S_HandleTypeDef 结构体 输入参数 2 pData:指向接收数据的缓冲区 输入参数 3 Size:要接收的数据长度 输出参数 无 返回值 HAL_StatusTypeDef:操作状态,可以是 HAL_OK 或 HAL_ERROR 先决条件 无 被调用函数 无
1.9 HAL_I2S_Transmit_DMA
函数名 HAL_I2S_Transmit_DMA 函数原形 HAL_StatusTypeDef HAL_I2S_Transmit_DMA(I2S_HandleTypeDef *hi2s, uint16_t *pData, uint16_t Size) 功能描述 使用 DMA 方式通过 I2S 外设发送数据 输入参数 1 hi2s:I2S 句柄,指向一个 I2S_HandleTypeDef 结构体 输入参数 2 pData:指向发送数据的缓冲区 输入参数 3 Size:要发送的数据长度 输出参数 无 返回值 HAL_StatusTypeDef:操作状态,可以是 HAL_OK 或 HAL_ERROR 先决条件 无 被调用函数 无
1.10 HAL_I2S_Receive_DMA
函数名 HAL_I2S_Receive_DMA 函数原形 HAL_StatusTypeDef HAL_I2S_Receive_DMA(I2S_HandleTypeDef *hi2s, uint16_t *pData, uint16_t Size) 功能描述 使用 DMA 方式通过 I2S 外设接收数据 输入参数 1 hi2s:I2S 句柄,指向一个 I2S_HandleTypeDef 结构体 输入参数 2 pData:指向接收数据的缓冲区 输入参数 3 Size:要接收的数据长度 输出参数 无 返回值 HAL_StatusTypeDef:操作状态,可以是 HAL_OK 或 HAL_ERROR 先决条件 无 被调用函数 无
该文档修改记录:
修改时间 修改说明 2024年4月30日 第一次发布,介绍了该博客驱动所有函数的介绍及使用
总结
以上就是该博客驱动所有函数的介绍及使用的内容。 有不明白的地方欢迎留言;有建议欢迎留言,我后面编写文档好改进。 创作不容,如果文档对您有帮助,记得给个赞。