思澈科技软件开发工具包  2.20
I2S Exported Macros

Macros

#define __HAL_I2S_RESET_HANDLE_STATE(__HANDLE__)   ((__HANDLE__)->State = HAL_I2S_STATE_RESET)
 Reset I2S handle state. More...
 
#define __HAL_I2S_TX_ENABLE(__HANDLE__)   ((__HANDLE__)->Instance->AUDIO_TX_FUNC_EN |= I2S_AUDIO_TX_FUNC_EN_TX_EN)
 Enable the specified I2S TX peripheral . More...
 
#define __HAL_I2S_TX_DISABLE(__HANDLE__)   ((__HANDLE__)->Instance->AUDIO_TX_FUNC_EN &= (~I2S_AUDIO_TX_FUNC_EN_TX_EN))
 Disable the specified I2S TX peripheral . More...
 
#define __HAL_I2S_RX_ENABLE(__HANDLE__)   ((__HANDLE__)->Instance->AUDIO_RX_FUNC_EN |= I2S_AUDIO_RX_FUNC_EN_RX_EN)
 Enable the specified I2S RX peripheral . More...
 
#define __HAL_I2S_RX_DISABLE(__HANDLE__)   ((__HANDLE__)->Instance->AUDIO_RX_FUNC_EN &= (~I2S_AUDIO_RX_FUNC_EN_RX_EN))
 Disable the specified I2S RX peripheral . More...
 
#define __HAL_I2S_TX_INTF_ENABLE(__HANDLE__)   ((__HANDLE__)->Instance->AUDIO_TX_FUNC_EN |= I2S_AUDIO_TX_FUNC_EN_TX_INTF_SEL)
 Use the external I2S TX interface. More...
 
#define __HAL_I2S_TX_INTF_DISABLE(__HANDLE__)   ((__HANDLE__)->Instance->AUDIO_TX_FUNC_EN &= (~I2S_AUDIO_TX_FUNC_EN_TX_INTF_SEL))
 Use internal APB TX interface. More...
 
#define __HAL_I2S_RX_INTF_ENABLE(__HANDLE__)   ((__HANDLE__)->Instance->AUDIO_RX_FUNC_EN |= I2S_AUDIO_RX_FUNC_EN_RX_INTF_SEL)
 Use the external I2S RX interface . More...
 
#define __HAL_I2S_RX_INTF_DISABLE(__HANDLE__)   ((__HANDLE__)->Instance->AUDIO_RX_FUNC_EN &= (~I2S_AUDIO_RX_FUNC_EN_RX_INTF_SEL))
 Use internal APB RX interface. More...
 
#define __HAL_I2S_ENABLE_IT(__HANDLE__, __INTERRUPT__)   ((__HANDLE__)->Instance->INT_MASK |= (__INTERRUPT__))
 Enable the specified I2S interrupts. More...
 
#define __HAL_I2S_DISABLE_IT(__HANDLE__, __INTERRUPT__)   ((__HANDLE__)->Instance->INT_MASK &= (~(__INTERRUPT__)))
 Disable the specified I2S interrupts. More...
 
#define __HAL_I2S_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__)   ((((__HANDLE__)->Instance->INT_MASK & (__INTERRUPT__)) == (__INTERRUPT__)) ? SET : RESET)
 Checks if the specified I2S interrupt source is enabled or disabled. More...
 
#define __HAL_I2S_GET_FLAG(__HANDLE__, __FLAG__)   ((((__HANDLE__)->Instance->FIFO_STATUS) & (__FLAG__)) == (__FLAG__))
 Checks whether the specified I2S flag is set or not. More...
 
#define __HAL_I2S_CLEAR_OVRFLAG(__HANDLE__)   (((__HANDLE__)->Instance->INT_STATUS) &= (~I2S_INT_STATUS_RX_FIFO_OVERFLOW))
 Clears the I2S OVR pending flag. More...
 
#define __HAL_I2S_CLEAR_UDRFLAG(__HANDLE__)   (((__HANDLE__)->Instance->INT_STATUS) &= (~I2S_INT_STATUS_TX_FIFO_UNDERFLOW))
 Clears the I2S UDR pending flag. More...
 
#define __HAL_I2S_CLK_XTAL(__HANDLE__)   (((__HANDLE__)->Instance->DEBUG_LOOP) &= (~I2S_DEBUG_LOOP_SP_CLK_SEL))
 Set the I2S clock from crystal. More...
 
#define __HAL_I2S_CLK_PLL(__HANDLE__)   (((__HANDLE__)->Instance->DEBUG_LOOP) |= (I2S_DEBUG_LOOP_SP_CLK_SEL))
 Set the I2S clock from pll. More...
 
#define __HAL_I2S_SET_SPCLK_DIV(__HANDLE__, __DIV__)
 Set the I2S SP clock divider. More...
 

Detailed Description

Macro Definition Documentation

◆ __HAL_I2S_CLEAR_OVRFLAG

#define __HAL_I2S_CLEAR_OVRFLAG (   __HANDLE__)    (((__HANDLE__)->Instance->INT_STATUS) &= (~I2S_INT_STATUS_RX_FIFO_OVERFLOW))

Clears the I2S OVR pending flag.

Parameters
__HANDLE__specifies the I2S Handle.
Return values
None

◆ __HAL_I2S_CLEAR_UDRFLAG

#define __HAL_I2S_CLEAR_UDRFLAG (   __HANDLE__)    (((__HANDLE__)->Instance->INT_STATUS) &= (~I2S_INT_STATUS_TX_FIFO_UNDERFLOW))

Clears the I2S UDR pending flag.

Parameters
__HANDLE__specifies the I2S Handle.
Return values
None

◆ __HAL_I2S_CLK_PLL

#define __HAL_I2S_CLK_PLL (   __HANDLE__)    (((__HANDLE__)->Instance->DEBUG_LOOP) |= (I2S_DEBUG_LOOP_SP_CLK_SEL))

Set the I2S clock from pll.

Parameters
__HANDLE__specifies the I2S Handle.
Return values
None

◆ __HAL_I2S_CLK_XTAL

#define __HAL_I2S_CLK_XTAL (   __HANDLE__)    (((__HANDLE__)->Instance->DEBUG_LOOP) &= (~I2S_DEBUG_LOOP_SP_CLK_SEL))

Set the I2S clock from crystal.

Parameters
__HANDLE__specifies the I2S Handle.
Return values
None

◆ __HAL_I2S_DISABLE_IT

#define __HAL_I2S_DISABLE_IT (   __HANDLE__,
  __INTERRUPT__ 
)    ((__HANDLE__)->Instance->INT_MASK &= (~(__INTERRUPT__)))

Disable the specified I2S interrupts.

Parameters
__HANDLE__specifies the I2S Handle.
__INTERRUPT__specifies the interrupt source to enable or disable. This parameter can be one of the following values:
  • I2S_IT_TXE: Tx buffer empty interrupt enable
  • I2S_IT_RXNE: RX buffer not empty interrupt enable
Return values
None

◆ __HAL_I2S_ENABLE_IT

#define __HAL_I2S_ENABLE_IT (   __HANDLE__,
  __INTERRUPT__ 
)    ((__HANDLE__)->Instance->INT_MASK |= (__INTERRUPT__))

Enable the specified I2S interrupts.

Parameters
__HANDLE__specifies the I2S Handle.
__INTERRUPT__specifies the interrupt source to enable or disable. This parameter can be one of the following values:
  • I2S_IT_TXE: Tx buffer empty interrupt enable
  • I2S_IT_RXNE: RX buffer not empty interrupt enable
Return values
None

◆ __HAL_I2S_GET_FLAG

#define __HAL_I2S_GET_FLAG (   __HANDLE__,
  __FLAG__ 
)    ((((__HANDLE__)->Instance->FIFO_STATUS) & (__FLAG__)) == (__FLAG__))

Checks whether the specified I2S flag is set or not.

Parameters
__HANDLE__specifies the I2S Handle.
__FLAG__specifies the flag to check. This parameter can be one of the following values:
  • I2S_FLAG_RXNE: Receive buffer not empty flag
  • I2S_FLAG_TXE: Transmit buffer empty flag
  • I2S_FLAG_UDR: Underrun flag
  • I2S_FLAG_OVR: Overrun flag
  • I2S_FLAG_FRE: Frame error flag
  • I2S_FLAG_CHSIDE: Channel Side flag
  • I2S_FLAG_BSY: Busy flag
Return values
Thenew state of FLAG (TRUE or FALSE).

◆ __HAL_I2S_GET_IT_SOURCE

#define __HAL_I2S_GET_IT_SOURCE (   __HANDLE__,
  __INTERRUPT__ 
)    ((((__HANDLE__)->Instance->INT_MASK & (__INTERRUPT__)) == (__INTERRUPT__)) ? SET : RESET)

Checks if the specified I2S interrupt source is enabled or disabled.

Parameters
__HANDLE__specifies the I2S Handle. This parameter can be I2S where x: 1, 2, or 3 to select the I2S peripheral.
__INTERRUPT__specifies the I2S interrupt source to check. This parameter can be one of the following values:
  • I2S_IT_TXE: Tx buffer empty interrupt enable
  • I2S_IT_RXNE: RX buffer not empty interrupt enable
  • I2S_IT_ERR: Error interrupt enable
Return values
Thenew state of IT (TRUE or FALSE).

◆ __HAL_I2S_RESET_HANDLE_STATE

#define __HAL_I2S_RESET_HANDLE_STATE (   __HANDLE__)    ((__HANDLE__)->State = HAL_I2S_STATE_RESET)

Reset I2S handle state.

Parameters
__HANDLE__I2S handle.
Return values
None

◆ __HAL_I2S_RX_DISABLE

#define __HAL_I2S_RX_DISABLE (   __HANDLE__)    ((__HANDLE__)->Instance->AUDIO_RX_FUNC_EN &= (~I2S_AUDIO_RX_FUNC_EN_RX_EN))

Disable the specified I2S RX peripheral .

Parameters
__HANDLE__specifies the I2S Handle.
Return values
None

◆ __HAL_I2S_RX_ENABLE

#define __HAL_I2S_RX_ENABLE (   __HANDLE__)    ((__HANDLE__)->Instance->AUDIO_RX_FUNC_EN |= I2S_AUDIO_RX_FUNC_EN_RX_EN)

Enable the specified I2S RX peripheral .

Parameters
__HANDLE__specifies the I2S Handle.
Return values
None

◆ __HAL_I2S_RX_INTF_DISABLE

#define __HAL_I2S_RX_INTF_DISABLE (   __HANDLE__)    ((__HANDLE__)->Instance->AUDIO_RX_FUNC_EN &= (~I2S_AUDIO_RX_FUNC_EN_RX_INTF_SEL))

Use internal APB RX interface.

Parameters
__HANDLE__specifies the I2S Handle.
Return values
None

◆ __HAL_I2S_RX_INTF_ENABLE

#define __HAL_I2S_RX_INTF_ENABLE (   __HANDLE__)    ((__HANDLE__)->Instance->AUDIO_RX_FUNC_EN |= I2S_AUDIO_RX_FUNC_EN_RX_INTF_SEL)

Use the external I2S RX interface .

Parameters
__HANDLE__specifies the I2S Handle.
Return values
None

◆ __HAL_I2S_SET_SPCLK_DIV

#define __HAL_I2S_SET_SPCLK_DIV (   __HANDLE__,
  __DIV__ 
)
Value:
do {\
((__HANDLE__)->Instance->DEBUG_LOOP) &= (~I2S_DEBUG_LOOP_SP_CLK_DIV); \
((__HANDLE__)->Instance->DEBUG_LOOP) |= ((__DIV__)<<I2S_DEBUG_LOOP_SP_CLK_DIV_Pos); \
((__HANDLE__)->Instance->DEBUG_LOOP) |= (((__DIV__)<<I2S_DEBUG_LOOP_SP_CLK_DIV_Pos) |(I2S_DEBUG_LOOP_SP_CLK_DIV_UPDATE)); \
}while(0)

Set the I2S SP clock divider.

Parameters
__HANDLE__specifies the I2S Handle.
__DIV__clock divider.
Return values
None

◆ __HAL_I2S_TX_DISABLE

#define __HAL_I2S_TX_DISABLE (   __HANDLE__)    ((__HANDLE__)->Instance->AUDIO_TX_FUNC_EN &= (~I2S_AUDIO_TX_FUNC_EN_TX_EN))

Disable the specified I2S TX peripheral .

Parameters
__HANDLE__specifies the I2S Handle.
Return values
None

◆ __HAL_I2S_TX_ENABLE

#define __HAL_I2S_TX_ENABLE (   __HANDLE__)    ((__HANDLE__)->Instance->AUDIO_TX_FUNC_EN |= I2S_AUDIO_TX_FUNC_EN_TX_EN)

Enable the specified I2S TX peripheral .

Parameters
__HANDLE__specifies the I2S Handle.
Return values
None

◆ __HAL_I2S_TX_INTF_DISABLE

#define __HAL_I2S_TX_INTF_DISABLE (   __HANDLE__)    ((__HANDLE__)->Instance->AUDIO_TX_FUNC_EN &= (~I2S_AUDIO_TX_FUNC_EN_TX_INTF_SEL))

Use internal APB TX interface.

Parameters
__HANDLE__specifies the I2S Handle.
Return values
None

◆ __HAL_I2S_TX_INTF_ENABLE

#define __HAL_I2S_TX_INTF_ENABLE (   __HANDLE__)    ((__HANDLE__)->Instance->AUDIO_TX_FUNC_EN |= I2S_AUDIO_TX_FUNC_EN_TX_INTF_SEL)

Use the external I2S TX interface.

Parameters
__HANDLE__specifies the I2S Handle.
Return values
None