![]()
![]()
#define __STM32F4xx_HAL_SAI_H
![]()
![]()
#include "stm32f4xx_hal_def.h"
![]()
![]()
Exported types
![]()
![]()
HAL_SAI_StateTypeDef
![]()
![]()
HAL_SAI_STATE_RESET
![]()
![]()
HAL_SAI_STATE_READY
![]()
![]()
HAL_SAI_STATE_BUSY
![]()
![]()
HAL_SAI_STATE_BUSY_TX
![]()
![]()
HAL_SAI_STATE_BUSY_RX
![]()
![]()
HAL_SAI_STATE_TIMEOUT
![]()
![]()
HAL_SAI_STATE_ERROR
![]()
![]()
SAIcallback
![]()
![]()
SAI_InitTypeDef
![]()
![]()
AudioMode
![]()
![]()
Synchro
![]()
![]()
SynchroExt
![]()
![]()
OutputDrive
![]()
![]()
NoDivider
![]()
![]()
FIFOThreshold
![]()
![]()
ClockSource
![]()
![]()
AudioFrequency
![]()
![]()
Mckdiv
![]()
![]()
MonoStereoMode
![]()
![]()
CompandingMode
![]()
![]()
TriState
![]()
![]()
Protocol
![]()
![]()
DataSize
![]()
![]()
FirstBit
![]()
![]()
ClockStrobing
![]()
![]()
SAI_FrameInitTypeDef
![]()
![]()
FrameLength
![]()
![]()
ActiveFrameLength
![]()
![]()
FSDefinition
![]()
![]()
FSPolarity
![]()
![]()
FSOffset
![]()
![]()
SAI_SlotInitTypeDef
![]()
![]()
FirstBitOffset
![]()
![]()
SlotSize
![]()
![]()
SlotNumber
![]()
![]()
SlotActive
![]()
![]()
__SAI_HandleTypeDef
![]()
![]()
Instance
![]()
![]()
Init
![]()
![]()
FrameInit
![]()
![]()
SlotInit
![]()
![]()
pBuffPtr
![]()
![]()
XferSize
![]()
![]()
XferCount
![]()
![]()
hdmatx
![]()
![]()
hdmarx
![]()
![]()
mutecallback
![]()
![]()
InterruptServiceRoutine
![]()
![]()
Lock
![]()
![]()
State
![]()
![]()
ErrorCode
![]()
![]()
Exported constants
![]()
![]()
#define HAL_SAI_ERROR_NONE
![]()
![]()
#define HAL_SAI_ERROR_OVR
![]()
![]()
#define HAL_SAI_ERROR_UDR
![]()
![]()
#define HAL_SAI_ERROR_AFSDET
![]()
![]()
#define HAL_SAI_ERROR_LFSDET
![]()
![]()
#define HAL_SAI_ERROR_CNREADY
![]()
![]()
#define HAL_SAI_ERROR_WCKCFG
![]()
![]()
#define HAL_SAI_ERROR_TIMEOUT
![]()
![]()
#define HAL_SAI_ERROR_DMA
![]()
![]()
#define HAL_SAI_ERROR_INVALID_CALLBACK
![]()
![]()
#define SAI_SYNCEXT_DISABLE
![]()
![]()
#define SAI_SYNCEXT_OUTBLOCKA_ENABLE
![]()
![]()
#define SAI_SYNCEXT_OUTBLOCKB_ENABLE
![]()
![]()
#define SAI_I2S_STANDARD
![]()
![]()
#define SAI_I2S_MSBJUSTIFIED
![]()
![]()
#define SAI_I2S_LSBJUSTIFIED
![]()
![]()
#define SAI_PCM_LONG
![]()
![]()
#define SAI_PCM_SHORT
![]()
![]()
#define SAI_PROTOCOL_DATASIZE_16BIT
![]()
![]()
#define SAI_PROTOCOL_DATASIZE_16BITEXTENDED
![]()
![]()
#define SAI_PROTOCOL_DATASIZE_24BIT
![]()
![]()
#define SAI_PROTOCOL_DATASIZE_32BIT
![]()
![]()
#define SAI_AUDIO_FREQUENCY_192K
![]()
![]()
#define SAI_AUDIO_FREQUENCY_96K
![]()
![]()
#define SAI_AUDIO_FREQUENCY_48K
![]()
![]()
#define SAI_AUDIO_FREQUENCY_44K
![]()
![]()
#define SAI_AUDIO_FREQUENCY_32K
![]()
![]()
#define SAI_AUDIO_FREQUENCY_22K
![]()
![]()
#define SAI_AUDIO_FREQUENCY_16K
![]()
![]()
#define SAI_AUDIO_FREQUENCY_11K
![]()
![]()
#define SAI_AUDIO_FREQUENCY_8K
![]()
![]()
#define SAI_AUDIO_FREQUENCY_MCKDIV
![]()
![]()
#define SAI_MODEMASTER_TX
![]()
![]()
#define SAI_MODEMASTER_RX
![]()
![]()
#define SAI_MODESLAVE_TX
![]()
![]()
#define SAI_MODESLAVE_RX
![]()
![]()
#define SAI_FREE_PROTOCOL
![]()
![]()
#define SAI_SPDIF_PROTOCOL
![]()
![]()
#define SAI_AC97_PROTOCOL
![]()
![]()
#define SAI_DATASIZE_8
![]()
![]()
#define SAI_DATASIZE_10
![]()
![]()
#define SAI_DATASIZE_16
![]()
![]()
#define SAI_DATASIZE_20
![]()
![]()
#define SAI_DATASIZE_24
![]()
![]()
#define SAI_DATASIZE_32
![]()
![]()
#define SAI_FIRSTBIT_MSB
![]()
![]()
#define SAI_FIRSTBIT_LSB
![]()
![]()
#define SAI_CLOCKSTROBING_FALLINGEDGE
![]()
![]()
#define SAI_CLOCKSTROBING_RISINGEDGE
![]()
![]()
#define SAI_ASYNCHRONOUS
![]()
![]()
#define SAI_SYNCHRONOUS
![]()
![]()
#define SAI_SYNCHRONOUS_EXT_SAI1
![]()
![]()
#define SAI_SYNCHRONOUS_EXT_SAI2
![]()
![]()
#define SAI_OUTPUTDRIVE_DISABLE
![]()
![]()
#define SAI_OUTPUTDRIVE_ENABLE
![]()
![]()
#define SAI_MASTERDIVIDER_ENABLE
![]()
![]()
#define SAI_MASTERDIVIDER_DISABLE
![]()
![]()
#define SAI_FS_STARTFRAME
![]()
![]()
#define SAI_FS_CHANNEL_IDENTIFICATION
![]()
![]()
#define SAI_FS_ACTIVE_LOW
![]()
![]()
#define SAI_FS_ACTIVE_HIGH
![]()
![]()
#define SAI_FS_FIRSTBIT
![]()
![]()
#define SAI_FS_BEFOREFIRSTBIT
![]()
![]()
#define SAI_SLOTSIZE_DATASIZE
![]()
![]()
#define SAI_SLOTSIZE_16B
![]()
![]()
#define SAI_SLOTSIZE_32B
![]()
![]()
#define SAI_SLOT_NOTACTIVE
![]()
![]()
#define SAI_SLOTACTIVE_0
![]()
![]()
#define SAI_SLOTACTIVE_1
![]()
![]()
#define SAI_SLOTACTIVE_2
![]()
![]()
#define SAI_SLOTACTIVE_3
![]()
![]()
#define SAI_SLOTACTIVE_4
![]()
![]()
#define SAI_SLOTACTIVE_5
![]()
![]()
#define SAI_SLOTACTIVE_6
![]()
![]()
#define SAI_SLOTACTIVE_7
![]()
![]()
#define SAI_SLOTACTIVE_8
![]()
![]()
#define SAI_SLOTACTIVE_9
![]()
![]()
#define SAI_SLOTACTIVE_10
![]()
![]()
#define SAI_SLOTACTIVE_11
![]()
![]()
#define SAI_SLOTACTIVE_12
![]()
![]()
#define SAI_SLOTACTIVE_13
![]()
![]()
#define SAI_SLOTACTIVE_14
![]()
![]()
#define SAI_SLOTACTIVE_15
![]()
![]()
#define SAI_SLOTACTIVE_ALL
![]()
![]()
#define SAI_STEREOMODE
![]()
![]()
#define SAI_MONOMODE
![]()
![]()
#define SAI_OUTPUT_NOTRELEASED
![]()
![]()
#define SAI_OUTPUT_RELEASED
![]()
![]()
#define SAI_FIFOTHRESHOLD_EMPTY
![]()
![]()
#define SAI_FIFOTHRESHOLD_1QF
![]()
![]()
#define SAI_FIFOTHRESHOLD_HF
![]()
![]()
#define SAI_FIFOTHRESHOLD_3QF
![]()
![]()
#define SAI_FIFOTHRESHOLD_FULL
![]()
![]()
#define SAI_NOCOMPANDING
![]()
![]()
#define SAI_ULAW_1CPL_COMPANDING
![]()
![]()
#define SAI_ALAW_1CPL_COMPANDING
![]()
![]()
#define SAI_ULAW_2CPL_COMPANDING
![]()
![]()
#define SAI_ALAW_2CPL_COMPANDING
![]()
![]()
#define SAI_ZERO_VALUE
![]()
![]()
#define SAI_LAST_SENT_VALUE
![]()
![]()
#define SAI_IT_OVRUDR
![]()
![]()
#define SAI_IT_MUTEDET
![]()
![]()
#define SAI_IT_WCKCFG
![]()
![]()
#define SAI_IT_FREQ
![]()
![]()
#define SAI_IT_CNRDY
![]()
![]()
#define SAI_IT_AFSDET
![]()
![]()
#define SAI_IT_LFSDET
![]()
![]()
#define SAI_FLAG_OVRUDR
![]()
![]()
#define SAI_FLAG_MUTEDET
![]()
![]()
#define SAI_FLAG_WCKCFG
![]()
![]()
#define SAI_FLAG_FREQ
![]()
![]()
#define SAI_FLAG_CNRDY
![]()
![]()
#define SAI_FLAG_AFSDET
![]()
![]()
#define SAI_FLAG_LFSDET
![]()
![]()
#define SAI_FIFOSTATUS_EMPTY
![]()
![]()
#define SAI_FIFOSTATUS_LESS1QUARTERFULL
![]()
![]()
#define SAI_FIFOSTATUS_1QUARTERFULL
![]()
![]()
#define SAI_FIFOSTATUS_HALFFULL
![]()
![]()
#define SAI_FIFOSTATUS_3QUARTERFULL
![]()
![]()
#define SAI_FIFOSTATUS_FULL
![]()
![]()
Exported macro
![]()
![]()
#define __HAL_SAI_RESET_HANDLE_STATE
![]()
![]()
#define __HAL_SAI_ENABLE_IT
![]()
![]()
#define __HAL_SAI_DISABLE_IT
![]()
![]()
#define __HAL_SAI_GET_IT_SOURCE
![]()
![]()
#define __HAL_SAI_GET_FLAG
![]()
![]()
#define __HAL_SAI_CLEAR_FLAG
![]()
![]()
#define __HAL_SAI_ENABLE
![]()
![]()
#define __HAL_SAI_DISABLE
![]()
![]()
#include "stm32f4xx_hal_sai_ex.h"
![]()
![]()
Exported functions
![]()
![]()
HAL_SAI_InitProtocol(SAI_HandleTypeDef *, uint32_t, uint32_t, uint32_t);
![]()
![]()
HAL_SAI_Init(SAI_HandleTypeDef *);
![]()
![]()
HAL_SAI_DeInit(SAI_HandleTypeDef *);
![]()
![]()
HAL_SAI_MspInit(SAI_HandleTypeDef *);
![]()
![]()
HAL_SAI_MspDeInit(SAI_HandleTypeDef *);
![]()
![]()
HAL_SAI_Transmit(SAI_HandleTypeDef *, uint8_t *, uint16_t, uint32_t);
![]()
![]()
HAL_SAI_Receive(SAI_HandleTypeDef *, uint8_t *, uint16_t, uint32_t);
![]()
![]()
HAL_SAI_Transmit_IT(SAI_HandleTypeDef *, uint8_t *, uint16_t);
![]()
![]()
HAL_SAI_Receive_IT(SAI_HandleTypeDef *, uint8_t *, uint16_t);
![]()
![]()
HAL_SAI_Transmit_DMA(SAI_HandleTypeDef *, uint8_t *, uint16_t);
![]()
![]()
HAL_SAI_Receive_DMA(SAI_HandleTypeDef *, uint8_t *, uint16_t);
![]()
![]()
HAL_SAI_DMAPause(SAI_HandleTypeDef *);
![]()
![]()
HAL_SAI_DMAResume(SAI_HandleTypeDef *);
![]()
![]()
HAL_SAI_DMAStop(SAI_HandleTypeDef *);
![]()
![]()
HAL_SAI_Abort(SAI_HandleTypeDef *);
![]()
![]()
HAL_SAI_EnableTxMuteMode(SAI_HandleTypeDef *, uint16_t);
![]()
![]()
HAL_SAI_DisableTxMuteMode(SAI_HandleTypeDef *);
![]()
![]()
HAL_SAI_EnableRxMuteMode(SAI_HandleTypeDef *, SAIcallback, uint16_t);
![]()
![]()
HAL_SAI_DisableRxMuteMode(SAI_HandleTypeDef *);
![]()
![]()
HAL_SAI_IRQHandler(SAI_HandleTypeDef *);
![]()
![]()
HAL_SAI_TxHalfCpltCallback(SAI_HandleTypeDef *);
![]()
![]()
HAL_SAI_TxCpltCallback(SAI_HandleTypeDef *);
![]()
![]()
HAL_SAI_RxHalfCpltCallback(SAI_HandleTypeDef *);
![]()
![]()
HAL_SAI_RxCpltCallback(SAI_HandleTypeDef *);
![]()
![]()
HAL_SAI_ErrorCallback(SAI_HandleTypeDef *);
![]()
![]()
HAL_SAI_GetState(const SAI_HandleTypeDef *);
![]()
![]()
HAL_SAI_GetError(const SAI_HandleTypeDef *);
![]()
![]()
Private macros
![]()
![]()
#define IS_SAI_BLOCK_MUTE_COUNTER
![]()
![]()
#define IS_SAI_SLOT_ACTIVE
![]()
![]()
#define IS_SAI_BLOCK_SLOT_NUMBER
![]()
![]()
#define IS_SAI_BLOCK_FIRSTBIT_OFFSET
![]()
![]()
#define IS_SAI_BLOCK_MASTER_DIVIDER
![]()
![]()
#define IS_SAI_BLOCK_FRAME_LENGTH
![]()
![]()
#define IS_SAI_BLOCK_ACTIVE_FRAME