STM32G474xx HAL 用户手册
函数
IO 操作函数
SAI 导出函数

数据传输函数。 更多...

函数

HAL_StatusTypeDef HAL_SAI_Transmit (SAI_HandleTypeDef *hsai, uint8_t *pData, uint16_t Size, uint32_t Timeout)
 在阻塞模式下发送一定量的数据。
HAL_StatusTypeDef HAL_SAI_Receive (SAI_HandleTypeDef *hsai, uint8_t *pData, uint16_t Size, uint32_t Timeout)
 在阻塞模式下接收一定量的数据。
HAL_StatusTypeDef HAL_SAI_Transmit_IT (SAI_HandleTypeDef *hsai, uint8_t *pData, uint16_t Size)
 在中断模式下以非阻塞方式发送一定量的数据。
HAL_StatusTypeDef HAL_SAI_Receive_IT (SAI_HandleTypeDef *hsai, uint8_t *pData, uint16_t Size)
 在中断模式下以非阻塞方式接收一定量的数据。
HAL_StatusTypeDef HAL_SAI_DMAPause (SAI_HandleTypeDef *hsai)
 暂停从媒体播放音频流。
HAL_StatusTypeDef HAL_SAI_DMAResume (SAI_HandleTypeDef *hsai)
 恢复从媒体播放音频流。
HAL_StatusTypeDef HAL_SAI_DMAStop (SAI_HandleTypeDef *hsai)
 停止从媒体播放音频流。
HAL_StatusTypeDef HAL_SAI_Abort (SAI_HandleTypeDef *hsai)
 中止当前传输并禁用 SAI。
HAL_StatusTypeDef HAL_SAI_Transmit_DMA (SAI_HandleTypeDef *hsai, uint8_t *pData, uint16_t Size)
 在 DMA 模式下以非阻塞方式发送一定量的数据。
HAL_StatusTypeDef HAL_SAI_Receive_DMA (SAI_HandleTypeDef *hsai, uint8_t *pData, uint16_t Size)
 在 DMA 模式下以非阻塞方式接收一定量的数据。
HAL_StatusTypeDef HAL_SAI_EnableTxMuteMode (SAI_HandleTypeDef *hsai, uint16_t val)
 启用发送静音模式。
HAL_StatusTypeDef HAL_SAI_DisableTxMuteMode (SAI_HandleTypeDef *hsai)
 禁用发送静音模式。
HAL_StatusTypeDef HAL_SAI_EnableRxMuteMode (SAI_HandleTypeDef *hsai, SAIcallback callback, uint16_t counter)
 启用接收静音检测。
HAL_StatusTypeDef HAL_SAI_DisableRxMuteMode (SAI_HandleTypeDef *hsai)
 禁用接收静音检测。
void HAL_SAI_IRQHandler (SAI_HandleTypeDef *hsai)
 处理 SAI 中断请求。
__weak void HAL_SAI_TxCpltCallback (SAI_HandleTypeDef *hsai)
 发送传输完成回调函数。
__weak void HAL_SAI_TxHalfCpltCallback (SAI_HandleTypeDef *hsai)
 发送传输半完成回调函数。
__weak void HAL_SAI_RxCpltCallback (SAI_HandleTypeDef *hsai)
 接收传输完成回调函数。
__weak void HAL_SAI_RxHalfCpltCallback (SAI_HandleTypeDef *hsai)
 接收传输半完成回调函数。
__weak void HAL_SAI_ErrorCallback (SAI_HandleTypeDef *hsai)
 SAI 错误回调函数。

详细描述

数据传输函数。

  ==============================================================================
                      ##### IO 操作函数 #####
  ==============================================================================
  [..]
    本小节提供一组用于管理 SAI 数据传输的函数。

    (+) 有两种传输模式:
      (++) 阻塞模式:通信在轮询模式下执行。
           所有数据处理的状态在传输完成后由同一函数返回。
      (++) 非阻塞模式:通信使用中断或 DMA 执行。
           这些函数返回传输启动的状态。
           数据处理的结束将通过专用的 SAI IRQ(使用中断模式时)或 DMA IRQ(使用 DMA 模式时)指示。

    (+) 阻塞模式函数有:
      (++) HAL_SAI_Transmit()
      (++) HAL_SAI_Receive()

    (+) 使用中断的非阻塞模式函数有:
      (++) HAL_SAI_Transmit_IT()
      (++) HAL_SAI_Receive_IT()

    (+) 使用 DMA 的非阻塞模式函数有:
      (++) HAL_SAI_Transmit_DMA()
      (++) HAL_SAI_Receive_DMA()

    (+) 在非阻塞模式下提供了一组传输完成回调函数:
      (++) HAL_SAI_TxCpltCallback()
      (++) HAL_SAI_RxCpltCallback()
      (++) HAL_SAI_ErrorCallback()


函数文档

HAL_StatusTypeDef HAL_SAI_Abort ( SAI_HandleTypeDef hsai)

中止当前传输并禁用 SAI。

参数:
hsai指向包含 SAI 模块配置信息的 SAI_HandleTypeDef 结构体的指针。
返回值:
HAL状态

定义位于文件 stm32g4xx_hal_sai.c 的第 1388 行。

引用了 HAL_DMA_Abort(), HAL_SAI_STATE_BUSY_RX, HAL_SAI_STATE_BUSY_TX, HAL_SAI_STATE_READY, __SAI_HandleTypeDef::hdmarx, __SAI_HandleTypeDef::hdmatx, __SAI_HandleTypeDef::Instance, SAI_Disable(), 和 __SAI_HandleTypeDef::State

HAL_SAI_IRQHandler() 引用。

HAL_StatusTypeDef HAL_SAI_DisableRxMuteMode ( SAI_HandleTypeDef hsai)

禁用接收静音检测。

参数:
hsai指向包含 SAI 模块配置信息的 SAI_HandleTypeDef 结构体的指针。
返回值:
HAL状态

定义位于文件 stm32g4xx_hal_sai.c 的第 1664 行。

引用了 __HAL_SAI_DISABLE_IT, HAL_SAI_STATE_RESET, __SAI_HandleTypeDef::mutecallback, SAI_IT_MUTEDET, 和 __SAI_HandleTypeDef::State