STM32G474xx HAL用户手册
宏定义
SPI导出宏
SPI

宏定义

#define __HAL_SPI_RESET_HANDLE_STATE(__HANDLE__)
 重置SPI句柄状态。
#define __HAL_SPI_ENABLE_IT(__HANDLE__, __INTERRUPT__)   SET_BIT((__HANDLE__)->Instance->CR2, (__INTERRUPT__))
 使能指定的SPI中断。
#define __HAL_SPI_DISABLE_IT(__HANDLE__, __INTERRUPT__)   CLEAR_BIT((__HANDLE__)->Instance->CR2, (__INTERRUPT__))
 禁用指定的SPI中断。
#define __HAL_SPI_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__)
 检查指定的SPI中断源是否已使能。
#define __HAL_SPI_GET_FLAG(__HANDLE__, __FLAG__)   ((((__HANDLE__)->Instance->SR) & (__FLAG__)) == (__FLAG__))
 检查指定的SPI标志是否已设置。
#define __HAL_SPI_CLEAR_CRCERRFLAG(__HANDLE__)   ((__HANDLE__)->Instance->SR = (uint16_t)(~SPI_FLAG_CRCERR))
 清除SPI CRCERR待处理标志。
#define __HAL_SPI_CLEAR_MODFFLAG(__HANDLE__)
 清除SPI MODF待处理标志。
#define __HAL_SPI_CLEAR_OVRFLAG(__HANDLE__)
 清除SPI OVR待处理标志。
#define __HAL_SPI_CLEAR_FREFLAG(__HANDLE__)
 清除SPI FRE待处理标志。
#define __HAL_SPI_ENABLE(__HANDLE__)   SET_BIT((__HANDLE__)->Instance->CR1, SPI_CR1_SPE)
 使能SPI外设。
#define __HAL_SPI_DISABLE(__HANDLE__)   CLEAR_BIT((__HANDLE__)->Instance->CR1, SPI_CR1_SPE)
 禁用SPI外设。

宏定义文档

#define __HAL_SPI_CLEAR_CRCERRFLAG (   __HANDLE__)    ((__HANDLE__)->Instance->SR = (uint16_t)(~SPI_FLAG_CRCERR))

清除SPI CRCERR待处理标志。

参数:
__HANDLE__指定SPI句柄。该参数可以是SPIx,其中x:1、2或3,用于选择SPI外设。
返回值:

定义于文件stm32g4xx_hal_spi.h499行。

被以下函数引用:HAL_SPI_Receive()HAL_SPI_TransmitReceive()SPI_CloseRx_ISR()SPI_CloseRxTx_ISR()SPI_DMAReceiveCplt()SPI_DMATransmitReceiveCplt()

#define __HAL_SPI_CLEAR_FREFLAG (   __HANDLE__)
值:
do{                                              \
    __IO uint32_t tmpreg_fre = 0x00U;              \
    tmpreg_fre = (__HANDLE__)->Instance->SR;       \
    UNUSED(tmpreg_fre);                            \
  } while(0U)

清除SPI FRE待处理标志。

参数:
__HANDLE__指定SPI句柄。该参数可以是SPIx,其中x:1、2或3,用于选择SPI外设。
返回值:

定义于文件stm32g4xx_hal_spi.h532行。

被以下函数引用:HAL_SPI_Abort()HAL_SPI_Abort_IT()HAL_SPI_IRQHandler()SPI_DMARxAbortCallback()SPI_DMATxAbortCallback()

#define __HAL_SPI_CLEAR_MODFFLAG (   __HANDLE__)
值:
do{                                                    \
    __IO uint32_t tmpreg_modf = 0x00U;                   \
    tmpreg_modf = (__HANDLE__)->Instance->SR;            \
    CLEAR_BIT((__HANDLE__)->Instance->CR1, SPI_CR1_SPE); \
    UNUSED(tmpreg_modf);                                 \
  } while(0U)

清除SPI MODF待处理标志。

参数:
__HANDLE__指定SPI句柄。该参数可以是SPIx,其中x:1、2或3,用于选择SPI外设。
返回值:

定义于文件stm32g4xx_hal_spi.h506行。

被以下函数引用:HAL_SPI_IRQHandler()

#define __HAL_SPI_CLEAR_OVRFLAG (   __HANDLE__)
值:
do{                                              \
    __IO uint32_t tmpreg_ovr = 0x00U;              \
    tmpreg_ovr = (__HANDLE__)->Instance->DR;       \
    tmpreg_ovr = (__HANDLE__)->Instance->SR;       \
    UNUSED(tmpreg_ovr);                            \
  } while(0U)

清除SPI OVR待处理标志。

参数:
__HANDLE__指定SPI句柄。该参数可以是SPIx,其中x:1、2或3,用于选择SPI外设。
返回值:

定义于文件stm32g4xx_hal_spi.h519行。

被以下函数引用:HAL_SPI_Abort()HAL_SPI_Abort_IT()HAL_SPI_IRQHandler()HAL_SPI_Transmit()SPI_CloseTx_ISR()SPI_DMARxAbortCallback()SPI_DMATransmitCplt()SPI_DMATxAbortCallback()

#define __HAL_SPI_DISABLE (   __HANDLE__)    CLEAR_BIT((__HANDLE__)->Instance->CR1, SPI_CR1_SPE)

禁用SPI外设。

参数:
__HANDLE__指定SPI句柄。该参数可以是SPIx,其中x:1、2或3,用于选择SPI外设。
返回值:

定义于文件stm32g4xx_hal_spi.h551行。

被以下函数引用:HAL_SPI_Abort()HAL_SPI_DeInit()HAL_SPI_Init()HAL_SPI_Receive()HAL_SPI_Receive_DMA()HAL_SPI_Receive_IT()HAL_SPI_Transmit()HAL_SPI_Transmit_DMA()HAL_SPI_Transmit_IT()SPI_AbortRx_ISR()SPI_AbortTx_ISR()SPI_DMARxAbortCallback()SPI_DMATxAbortCallback()SPI_EndRxTransaction()SPI_WaitFifoStateUntilTimeout()SPI_WaitFlagStateUntilTimeout()

#define __HAL_SPI_DISABLE_IT (   __HANDLE__,
  __INTERRUPT__ 
)    CLEAR_BIT((__HANDLE__)->Instance->CR2, (__INTERRUPT__))

禁用指定的SPI中断。

参数:
__HANDLE__指定SPI句柄。该参数可以是SPIx,其中x:1、2或3,用于选择SPI外设。
__INTERRUPT__指定要禁用的中断源。该参数可以是以下值之一:
  • SPI_IT_TXE:发送缓冲区空中断使能
  • SPI_IT_RXNE:接收缓冲区非空中断使能
  • SPI_IT_ERR:错误中断使能
返回值:

定义于文件stm32g4xx_hal_spi.h461行。

被以下函数引用:HAL_SPI_IRQHandler()SPI_2linesRxISR_16BIT()SPI_2linesRxISR_16BITCRC()SPI_2linesRxISR_8BIT()SPI_2linesRxISR_8BITCRC()SPI_2linesTxISR_16BIT()SPI_2linesTxISR_8BIT()SPI_CloseRx_ISR()SPI_CloseRxTx_ISR()SPI_CloseTx_ISR()SPI_DMAReceiveCplt()SPI_DMATransmitCplt()SPI_DMATransmitReceiveCplt()SPI_RxISR_16BIT