STM32F4xx HAL Documentation
Hardware Abstraction Layer for STM32F4 familiy
Loading...
Searching...
No Matches
SPI Private Functions

Private functions. More...

Collaboration diagram for SPI Private Functions:

Functions

static void SPI_DMATransmitCplt (DMA_HandleTypeDef *hdma)
 DMA SPI transmit process complete callback.
 
static void SPI_DMAReceiveCplt (DMA_HandleTypeDef *hdma)
 DMA SPI receive process complete callback.
 
static void SPI_DMATransmitReceiveCplt (DMA_HandleTypeDef *hdma)
 DMA SPI transmit receive process complete callback.
 
static void SPI_DMAHalfTransmitCplt (DMA_HandleTypeDef *hdma)
 DMA SPI half transmit process complete callback.
 
static void SPI_DMAHalfReceiveCplt (DMA_HandleTypeDef *hdma)
 DMA SPI half receive process complete callback.
 
static void SPI_DMAHalfTransmitReceiveCplt (DMA_HandleTypeDef *hdma)
 DMA SPI half transmit receive process complete callback.
 
static void SPI_DMAError (DMA_HandleTypeDef *hdma)
 DMA SPI communication error callback.
 
static void SPI_DMAAbortOnError (DMA_HandleTypeDef *hdma)
 DMA SPI communication abort callback, when initiated by HAL services on Error (To be called at end of DMA Abort procedure following error occurrence).
 
static void SPI_DMATxAbortCallback (DMA_HandleTypeDef *hdma)
 DMA SPI Tx communication abort callback, when initiated by user (To be called at end of DMA Tx Abort procedure following user abort request).
 
static void SPI_DMARxAbortCallback (DMA_HandleTypeDef *hdma)
 DMA SPI Rx communication abort callback, when initiated by user (To be called at end of DMA Rx Abort procedure following user abort request).
 
static HAL_StatusTypeDef SPI_WaitFlagStateUntilTimeout (SPI_HandleTypeDef *hspi, uint32_t Flag, FlagStatus State, uint32_t Timeout, uint32_t Tickstart)
 Handle SPI Communication Timeout.
 
static void SPI_TxISR_8BIT (struct __SPI_HandleTypeDef *hspi)
 Handle the data 8-bit transmit in Interrupt mode.
 
static void SPI_TxISR_16BIT (struct __SPI_HandleTypeDef *hspi)
 Handle the data 16-bit transmit in Interrupt mode.
 
static void SPI_RxISR_8BIT (struct __SPI_HandleTypeDef *hspi)
 Manage the receive 8-bit in Interrupt context.
 
static void SPI_RxISR_16BIT (struct __SPI_HandleTypeDef *hspi)
 Manage the 16-bit receive in Interrupt context.
 
static void SPI_2linesRxISR_8BIT (struct __SPI_HandleTypeDef *hspi)
 Rx 8-bit handler for Transmit and Receive in Interrupt mode.
 
static void SPI_2linesTxISR_8BIT (struct __SPI_HandleTypeDef *hspi)
 Tx 8-bit handler for Transmit and Receive in Interrupt mode.
 
static void SPI_2linesTxISR_16BIT (struct __SPI_HandleTypeDef *hspi)
 Tx 16-bit handler for Transmit and Receive in Interrupt mode.
 
static void SPI_2linesRxISR_16BIT (struct __SPI_HandleTypeDef *hspi)
 Rx 16-bit handler for Transmit and Receive in Interrupt mode.
 
static void SPI_AbortRx_ISR (SPI_HandleTypeDef *hspi)
 Handle abort a Rx transaction.
 
static void SPI_AbortTx_ISR (SPI_HandleTypeDef *hspi)
 Handle abort a Tx or Rx/Tx transaction.
 
static void SPI_CloseRxTx_ISR (SPI_HandleTypeDef *hspi)
 Handle the end of the RXTX transaction.
 
static void SPI_CloseRx_ISR (SPI_HandleTypeDef *hspi)
 Handle the end of the RX transaction.
 
static void SPI_CloseTx_ISR (SPI_HandleTypeDef *hspi)
 Handle the end of the TX transaction.
 
static HAL_StatusTypeDef SPI_EndRxTransaction (SPI_HandleTypeDef *hspi, uint32_t Timeout, uint32_t Tickstart)
 Handle the check of the RX transaction complete.
 
static HAL_StatusTypeDef SPI_EndRxTxTransaction (SPI_HandleTypeDef *hspi, uint32_t Timeout, uint32_t Tickstart)
 Handle the check of the RXTX or TX transaction complete.
 

Detailed Description

Private functions.

Function Documentation

◆ SPI_DMATransmitCplt()

static void SPI_DMATransmitCplt ( DMA_HandleTypeDef * hdma)
static

◆ SPI_DMAReceiveCplt()

◆ SPI_DMATransmitReceiveCplt()

◆ SPI_DMAHalfTransmitCplt()

static void SPI_DMAHalfTransmitCplt ( DMA_HandleTypeDef * hdma)
static

#include <stm32f4xx_hal_spi.c>

DMA SPI half transmit process complete callback.

Parameters
hdmapointer to a DMA_HandleTypeDef structure that contains the configuration information for the specified DMA module.
Return values
None

Definition at line 2905 of file stm32f4xx_hal_spi.c.

References HAL_SPI_TxHalfCpltCallback().

Referenced by HAL_SPI_Transmit_DMA().

◆ SPI_DMAHalfReceiveCplt()

static void SPI_DMAHalfReceiveCplt ( DMA_HandleTypeDef * hdma)
static

#include <stm32f4xx_hal_spi.c>

DMA SPI half receive process complete callback.

Parameters
hdmapointer to a DMA_HandleTypeDef structure that contains the configuration information for the specified DMA module.
Return values
None

Definition at line 2923 of file stm32f4xx_hal_spi.c.

References HAL_SPI_RxHalfCpltCallback().

Referenced by HAL_SPI_Receive_DMA(), and HAL_SPI_TransmitReceive_DMA().

◆ SPI_DMAHalfTransmitReceiveCplt()

static void SPI_DMAHalfTransmitReceiveCplt ( DMA_HandleTypeDef * hdma)
static

#include <stm32f4xx_hal_spi.c>

DMA SPI half transmit receive process complete callback.

Parameters
hdmapointer to a DMA_HandleTypeDef structure that contains the configuration information for the specified DMA module.
Return values
None

Definition at line 2941 of file stm32f4xx_hal_spi.c.

References HAL_SPI_TxRxHalfCpltCallback().

Referenced by HAL_SPI_TransmitReceive_DMA().

◆ SPI_DMAError()

static void SPI_DMAError ( DMA_HandleTypeDef * hdma)
static

#include <stm32f4xx_hal_spi.c>

DMA SPI communication error callback.

Parameters
hdmapointer to a DMA_HandleTypeDef structure that contains the configuration information for the specified DMA module.
Return values
None

Definition at line 2959 of file stm32f4xx_hal_spi.c.

References __SPI_HandleTypeDef::ErrorCode, HAL_SPI_ERROR_DMA, HAL_SPI_ErrorCallback(), HAL_SPI_STATE_READY, __SPI_HandleTypeDef::Instance, and __SPI_HandleTypeDef::State.

Referenced by HAL_SPI_Receive_DMA(), HAL_SPI_Transmit_DMA(), and HAL_SPI_TransmitReceive_DMA().

◆ SPI_DMAAbortOnError()

static void SPI_DMAAbortOnError ( DMA_HandleTypeDef * hdma)
static

#include <stm32f4xx_hal_spi.c>

DMA SPI communication abort callback, when initiated by HAL services on Error (To be called at end of DMA Abort procedure following error occurrence).

Parameters
hdmaDMA handle.
Return values
None

Definition at line 2982 of file stm32f4xx_hal_spi.c.

References HAL_SPI_ErrorCallback(), __SPI_HandleTypeDef::RxXferCount, and __SPI_HandleTypeDef::TxXferCount.

Referenced by HAL_SPI_IRQHandler().

◆ SPI_DMATxAbortCallback()

static void SPI_DMATxAbortCallback ( DMA_HandleTypeDef * hdma)
static

#include <stm32f4xx_hal_spi.c>

DMA SPI Tx communication abort callback, when initiated by user (To be called at end of DMA Tx Abort procedure following user abort request).

Note
When this callback is executed, User Abort complete call back is called only if no Abort still ongoing for Rx DMA Handle.
Parameters
hdmaDMA handle.
Return values
None

Definition at line 3004 of file stm32f4xx_hal_spi.c.

References __HAL_SPI_CLEAR_FREFLAG, __HAL_SPI_CLEAR_OVRFLAG, __SPI_HandleTypeDef::ErrorCode, HAL_SPI_AbortCpltCallback(), HAL_SPI_ERROR_ABORT, HAL_SPI_ERROR_NONE, HAL_SPI_STATE_READY, __SPI_HandleTypeDef::hdmarx, __SPI_HandleTypeDef::hdmatx, __SPI_HandleTypeDef::Instance, __SPI_HandleTypeDef::RxXferCount, SPI_DEFAULT_TIMEOUT, SPI_FLAG_TXE, __SPI_HandleTypeDef::State, __SPI_HandleTypeDef::TxXferCount, and __DMA_HandleTypeDef::XferAbortCallback.

Referenced by HAL_SPI_Abort_IT().

◆ SPI_DMARxAbortCallback()

static void SPI_DMARxAbortCallback ( DMA_HandleTypeDef * hdma)
static

#include <stm32f4xx_hal_spi.c>

DMA SPI Rx communication abort callback, when initiated by user (To be called at end of DMA Rx Abort procedure following user abort request).

Note
When this callback is executed, User Abort complete call back is called only if no Abort still ongoing for Tx DMA Handle.
Parameters
hdmaDMA handle.
Return values
None

Definition at line 3069 of file stm32f4xx_hal_spi.c.

References __HAL_SPI_CLEAR_FREFLAG, __HAL_SPI_CLEAR_OVRFLAG, __HAL_SPI_DISABLE, __SPI_HandleTypeDef::ErrorCode, HAL_GetTick(), HAL_OK, HAL_SPI_AbortCpltCallback(), HAL_SPI_ERROR_ABORT, HAL_SPI_ERROR_NONE, HAL_SPI_STATE_READY, __SPI_HandleTypeDef::hdmarx, __SPI_HandleTypeDef::hdmatx, __SPI_HandleTypeDef::Instance, __SPI_HandleTypeDef::RxXferCount, SPI_DEFAULT_TIMEOUT, SPI_EndRxTxTransaction(), __SPI_HandleTypeDef::State, __SPI_HandleTypeDef::TxXferCount, and __DMA_HandleTypeDef::XferAbortCallback.

Referenced by HAL_SPI_Abort_IT().

◆ SPI_WaitFlagStateUntilTimeout()

static HAL_StatusTypeDef SPI_WaitFlagStateUntilTimeout ( SPI_HandleTypeDef * hspi,
uint32_t Flag,
FlagStatus State,
uint32_t Timeout,
uint32_t Tickstart )
static

#include <stm32f4xx_hal_spi.c>

Handle SPI Communication Timeout.

Parameters
hspipointer to a SPI_HandleTypeDef structure that contains the configuration information for SPI module.
FlagSPI flag to check
Stateflag state to check
TimeoutTimeout duration
Tickstarttick start value
Return values
HALstatus

Definition at line 3487 of file stm32f4xx_hal_spi.c.

References __HAL_SPI_DISABLE, __HAL_SPI_DISABLE_IT, __HAL_SPI_GET_FLAG, __HAL_UNLOCK, SPI_InitTypeDef::CRCCalculation, SPI_InitTypeDef::Direction, HAL_GetTick(), HAL_MAX_DELAY, HAL_OK, HAL_SPI_STATE_READY, HAL_TIMEOUT, __SPI_HandleTypeDef::Init, SPI_InitTypeDef::Mode, SPI_CRCCALCULATION_ENABLE, SPI_DIRECTION_1LINE, SPI_DIRECTION_2LINES_RXONLY, SPI_IT_ERR, SPI_IT_RXNE, SPI_IT_TXE, SPI_MODE_MASTER, SPI_RESET_CRC, and __SPI_HandleTypeDef::State.

Referenced by HAL_SPI_Receive(), HAL_SPI_TransmitReceive(), SPI_DMAReceiveCplt(), SPI_DMATransmitReceiveCplt(), SPI_EndRxTransaction(), and SPI_EndRxTxTransaction().

◆ SPI_TxISR_8BIT()

static void SPI_TxISR_8BIT ( struct __SPI_HandleTypeDef * hspi)
static

#include <stm32f4xx_hal_spi.c>

Handle the data 8-bit transmit in Interrupt mode.

Parameters
hspipointer to a SPI_HandleTypeDef structure that contains the configuration information for SPI module.
Return values
None

Definition at line 3432 of file stm32f4xx_hal_spi.c.

References SPI_InitTypeDef::CRCCalculation, __SPI_HandleTypeDef::Init, __SPI_HandleTypeDef::Instance, __SPI_HandleTypeDef::pTxBuffPtr, SPI_CloseTx_ISR(), SPI_CRCCALCULATION_ENABLE, and __SPI_HandleTypeDef::TxXferCount.

Referenced by HAL_SPI_Transmit_IT().

◆ SPI_TxISR_16BIT()

static void SPI_TxISR_16BIT ( struct __SPI_HandleTypeDef * hspi)
static

#include <stm32f4xx_hal_spi.c>

Handle the data 16-bit transmit in Interrupt mode.

Parameters
hspipointer to a SPI_HandleTypeDef structure that contains the configuration information for SPI module.
Return values
None

Definition at line 3457 of file stm32f4xx_hal_spi.c.

References SPI_InitTypeDef::CRCCalculation, __SPI_HandleTypeDef::Init, __SPI_HandleTypeDef::Instance, __SPI_HandleTypeDef::pTxBuffPtr, SPI_CloseTx_ISR(), SPI_CRCCALCULATION_ENABLE, and __SPI_HandleTypeDef::TxXferCount.

Referenced by HAL_SPI_Transmit_IT().

◆ SPI_RxISR_8BIT()

static void SPI_RxISR_8BIT ( struct __SPI_HandleTypeDef * hspi)
static

#include <stm32f4xx_hal_spi.c>

Manage the receive 8-bit in Interrupt context.

Parameters
hspipointer to a SPI_HandleTypeDef structure that contains the configuration information for SPI module.
Return values
None

Definition at line 3343 of file stm32f4xx_hal_spi.c.

References SPI_InitTypeDef::CRCCalculation, __SPI_HandleTypeDef::Init, __SPI_HandleTypeDef::Instance, __SPI_HandleTypeDef::pRxBuffPtr, __SPI_HandleTypeDef::RxISR, __SPI_HandleTypeDef::RxXferCount, SPI_CloseRx_ISR(), and SPI_CRCCALCULATION_ENABLE.

Referenced by HAL_SPI_Receive_IT().

◆ SPI_RxISR_16BIT()

static void SPI_RxISR_16BIT ( struct __SPI_HandleTypeDef * hspi)
static

#include <stm32f4xx_hal_spi.c>

Manage the 16-bit receive in Interrupt context.

Parameters
hspipointer to a SPI_HandleTypeDef structure that contains the configuration information for SPI module.
Return values
None

Definition at line 3399 of file stm32f4xx_hal_spi.c.

References SPI_InitTypeDef::CRCCalculation, __SPI_HandleTypeDef::Init, __SPI_HandleTypeDef::Instance, __SPI_HandleTypeDef::pRxBuffPtr, __SPI_HandleTypeDef::RxISR, __SPI_HandleTypeDef::RxXferCount, SPI_CloseRx_ISR(), and SPI_CRCCALCULATION_ENABLE.

Referenced by HAL_SPI_Receive_IT().

◆ SPI_2linesRxISR_8BIT()

static void SPI_2linesRxISR_8BIT ( struct __SPI_HandleTypeDef * hspi)
static

#include <stm32f4xx_hal_spi.c>

Rx 8-bit handler for Transmit and Receive in Interrupt mode.

Parameters
hspipointer to a SPI_HandleTypeDef structure that contains the configuration information for SPI module.
Return values
None

Definition at line 3128 of file stm32f4xx_hal_spi.c.

References __HAL_SPI_DISABLE_IT, SPI_InitTypeDef::CRCCalculation, __SPI_HandleTypeDef::Init, __SPI_HandleTypeDef::Instance, __SPI_HandleTypeDef::pRxBuffPtr, __SPI_HandleTypeDef::RxISR, __SPI_HandleTypeDef::RxXferCount, SPI_CloseRxTx_ISR(), SPI_CRCCALCULATION_ENABLE, SPI_IT_ERR, SPI_IT_RXNE, and __SPI_HandleTypeDef::TxXferCount.

Referenced by HAL_SPI_TransmitReceive_IT().

◆ SPI_2linesTxISR_8BIT()

static void SPI_2linesTxISR_8BIT ( struct __SPI_HandleTypeDef * hspi)
static

#include <stm32f4xx_hal_spi.c>

Tx 8-bit handler for Transmit and Receive in Interrupt mode.

Parameters
hspipointer to a SPI_HandleTypeDef structure that contains the configuration information for SPI module.
Return values
None

Definition at line 3191 of file stm32f4xx_hal_spi.c.

References __HAL_SPI_DISABLE_IT, SPI_InitTypeDef::CRCCalculation, __SPI_HandleTypeDef::Init, __SPI_HandleTypeDef::Instance, __SPI_HandleTypeDef::pTxBuffPtr, __SPI_HandleTypeDef::RxXferCount, SPI_CloseRxTx_ISR(), SPI_CRCCALCULATION_ENABLE, SPI_IT_TXE, and __SPI_HandleTypeDef::TxXferCount.

Referenced by HAL_SPI_TransmitReceive_IT().

◆ SPI_2linesTxISR_16BIT()

static void SPI_2linesTxISR_16BIT ( struct __SPI_HandleTypeDef * hspi)
static

#include <stm32f4xx_hal_spi.c>

Tx 16-bit handler for Transmit and Receive in Interrupt mode.

Parameters
hspipointer to a SPI_HandleTypeDef structure that contains the configuration information for SPI module.
Return values
None

Definition at line 3283 of file stm32f4xx_hal_spi.c.

References __HAL_SPI_DISABLE_IT, SPI_InitTypeDef::CRCCalculation, __SPI_HandleTypeDef::Init, __SPI_HandleTypeDef::Instance, __SPI_HandleTypeDef::pTxBuffPtr, __SPI_HandleTypeDef::RxXferCount, SPI_CloseRxTx_ISR(), SPI_CRCCALCULATION_ENABLE, SPI_IT_TXE, and __SPI_HandleTypeDef::TxXferCount.

Referenced by HAL_SPI_TransmitReceive_IT().

◆ SPI_2linesRxISR_16BIT()

static void SPI_2linesRxISR_16BIT ( struct __SPI_HandleTypeDef * hspi)
static

#include <stm32f4xx_hal_spi.c>

Rx 16-bit handler for Transmit and Receive in Interrupt mode.

Parameters
hspipointer to a SPI_HandleTypeDef structure that contains the configuration information for SPI module.
Return values
None

Definition at line 3227 of file stm32f4xx_hal_spi.c.

References __HAL_SPI_DISABLE_IT, SPI_InitTypeDef::CRCCalculation, __SPI_HandleTypeDef::Init, __SPI_HandleTypeDef::Instance, __SPI_HandleTypeDef::pRxBuffPtr, __SPI_HandleTypeDef::RxISR, __SPI_HandleTypeDef::RxXferCount, SPI_CloseRxTx_ISR(), SPI_CRCCALCULATION_ENABLE, SPI_IT_RXNE, and __SPI_HandleTypeDef::TxXferCount.

Referenced by HAL_SPI_TransmitReceive_IT().

◆ SPI_AbortRx_ISR()

static void SPI_AbortRx_ISR ( SPI_HandleTypeDef * hspi)
static

#include <stm32f4xx_hal_spi.c>

Handle abort a Rx transaction.

Parameters
hspipointer to a SPI_HandleTypeDef structure that contains the configuration information for SPI module.
Return values
None

Definition at line 3870 of file stm32f4xx_hal_spi.c.

References __HAL_SPI_DISABLE, __SPI_HandleTypeDef::ErrorCode, HAL_SPI_ERROR_ABORT, HAL_SPI_STATE_ABORT, __SPI_HandleTypeDef::Instance, SPI_DEFAULT_TIMEOUT, SPI_FLAG_TXE, __SPI_HandleTypeDef::State, and UNUSED.

Referenced by HAL_SPI_Abort(), and HAL_SPI_Abort_IT().

◆ SPI_AbortTx_ISR()

static void SPI_AbortTx_ISR ( SPI_HandleTypeDef * hspi)
static

#include <stm32f4xx_hal_spi.c>

Handle abort a Tx or Rx/Tx transaction.

Parameters
hspipointer to a SPI_HandleTypeDef structure that contains the configuration information for SPI module.
Return values
None

Definition at line 3906 of file stm32f4xx_hal_spi.c.

References __HAL_SPI_DISABLE, HAL_SPI_STATE_ABORT, __SPI_HandleTypeDef::Instance, and __SPI_HandleTypeDef::State.

Referenced by HAL_SPI_Abort(), and HAL_SPI_Abort_IT().

◆ SPI_CloseRxTx_ISR()

◆ SPI_CloseRx_ISR()

◆ SPI_CloseTx_ISR()

static void SPI_CloseTx_ISR ( SPI_HandleTypeDef * hspi)
static

◆ SPI_EndRxTransaction()

static HAL_StatusTypeDef SPI_EndRxTransaction ( SPI_HandleTypeDef * hspi,
uint32_t Timeout,
uint32_t Tickstart )
static

#include <stm32f4xx_hal_spi.c>

Handle the check of the RX transaction complete.

Parameters
hspipointer to a SPI_HandleTypeDef structure that contains the configuration information for SPI module.
TimeoutTimeout duration
Tickstarttick start value
Return values
HALstatus

Definition at line 3554 of file stm32f4xx_hal_spi.c.

References __HAL_SPI_DISABLE, SPI_InitTypeDef::Direction, __SPI_HandleTypeDef::ErrorCode, HAL_OK, HAL_SPI_ERROR_FLAG, HAL_TIMEOUT, __SPI_HandleTypeDef::Init, SPI_InitTypeDef::Mode, SPI_DIRECTION_1LINE, SPI_DIRECTION_2LINES_RXONLY, SPI_FLAG_BSY, SPI_FLAG_RXNE, SPI_MODE_MASTER, and SPI_WaitFlagStateUntilTimeout().

Referenced by HAL_SPI_Receive(), SPI_CloseRx_ISR(), and SPI_DMAReceiveCplt().

◆ SPI_EndRxTxTransaction()

static HAL_StatusTypeDef SPI_EndRxTxTransaction ( SPI_HandleTypeDef * hspi,
uint32_t Timeout,
uint32_t Tickstart )
static