STM32L486xx HAL User Manual
Modules | Functions
SWPMI Exported Functions
SWPMI

Modules

 Initialization/de-initialization methods
 

Initialization and Configuration functions.


 IO operation methods
 

SWPMI Transmit/Receive functions.


 SWPMI IRQ handler and callbacks
 

SWPMI IRQ handler.


 Peripheral Control methods
 

SWPMI control functions.


Functions

HAL_StatusTypeDef HAL_SWPMI_Init (SWPMI_HandleTypeDef *hswpmi)
 Initialize the SWPMI peripheral according to the specified parameters in the SWPMI_InitTypeDef.
HAL_StatusTypeDef HAL_SWPMI_DeInit (SWPMI_HandleTypeDef *hswpmi)
 De-initialize the SWPMI peripheral.
void HAL_SWPMI_MspInit (SWPMI_HandleTypeDef *hswpmi)
 Initialize the SWPMI MSP.
void HAL_SWPMI_MspDeInit (SWPMI_HandleTypeDef *hswpmi)
 DeInitialize the SWPMI MSP.
HAL_StatusTypeDef HAL_SWPMI_RegisterCallback (SWPMI_HandleTypeDef *hswpmi, HAL_SWPMI_CallbackIDTypeDef CallbackID, pSWPMI_CallbackTypeDef pCallback)
 Register a user SWPMI callback to be used instead of the weak predefined callback.
HAL_StatusTypeDef HAL_SWPMI_UnRegisterCallback (SWPMI_HandleTypeDef *hswpmi, HAL_SWPMI_CallbackIDTypeDef CallbackID)
 Unregister a user SWPMI callback.
HAL_StatusTypeDef HAL_SWPMI_Transmit (SWPMI_HandleTypeDef *hswpmi, uint32_t *pData, uint16_t Size, uint32_t Timeout)
 Transmit an amount of data in blocking mode.
HAL_StatusTypeDef HAL_SWPMI_Receive (SWPMI_HandleTypeDef *hswpmi, uint32_t *pData, uint16_t Size, uint32_t Timeout)
 Receive an amount of data in blocking mode.
HAL_StatusTypeDef HAL_SWPMI_Transmit_IT (SWPMI_HandleTypeDef *hswpmi, uint32_t *pData, uint16_t Size)
 Transmit an amount of data in non-blocking mode with interrupt.
HAL_StatusTypeDef HAL_SWPMI_Receive_IT (SWPMI_HandleTypeDef *hswpmi, uint32_t *pData, uint16_t Size)
 Receive an amount of data in non-blocking mode with interrupt.
HAL_StatusTypeDef HAL_SWPMI_Transmit_DMA (SWPMI_HandleTypeDef *hswpmi, uint32_t *pData, uint16_t Size)
 Transmit an amount of data in non-blocking mode with DMA interrupt.
HAL_StatusTypeDef HAL_SWPMI_Receive_DMA (SWPMI_HandleTypeDef *hswpmi, uint32_t *pData, uint16_t Size)
 Receive an amount of data in non-blocking mode with DMA interrupt.
HAL_StatusTypeDef HAL_SWPMI_DMAStop (SWPMI_HandleTypeDef *hswpmi)
 Stop all DMA transfers.
HAL_StatusTypeDef HAL_SWPMI_EnableLoopback (SWPMI_HandleTypeDef *hswpmi)
 Enable the Loopback mode.
HAL_StatusTypeDef HAL_SWPMI_DisableLoopback (SWPMI_HandleTypeDef *hswpmi)
 Disable the Loopback mode.
void HAL_SWPMI_IRQHandler (SWPMI_HandleTypeDef *hswpmi)
 Handle SWPMI interrupt request.
void HAL_SWPMI_TxCpltCallback (SWPMI_HandleTypeDef *hswpmi)
 Tx Transfer completed callback.
void HAL_SWPMI_TxHalfCpltCallback (SWPMI_HandleTypeDef *hswpmi)
 Tx Half Transfer completed callback.
void HAL_SWPMI_RxCpltCallback (SWPMI_HandleTypeDef *hswpmi)
 Rx Transfer completed callback.
void HAL_SWPMI_RxHalfCpltCallback (SWPMI_HandleTypeDef *hswpmi)
 Rx Half Transfer completed callback.
void HAL_SWPMI_ErrorCallback (SWPMI_HandleTypeDef *hswpmi)
 SWPMI error callback.
HAL_SWPMI_StateTypeDef HAL_SWPMI_GetState (SWPMI_HandleTypeDef *hswpmi)
 Return the SWPMI handle state.
uint32_t HAL_SWPMI_GetError (SWPMI_HandleTypeDef *hswpmi)
 Return the SWPMI error code.

Function Documentation

HAL_StatusTypeDef HAL_SWPMI_DeInit ( SWPMI_HandleTypeDef hswpmi)
HAL_StatusTypeDef HAL_SWPMI_DisableLoopback ( SWPMI_HandleTypeDef hswpmi)

Disable the Loopback mode.

Parameters:
hswpmiSWPMI handle
Note:
Loopback mode is to be used only for test purposes
Return values:
HAL_OK/ HAL_BUSY

Definition at line 1201 of file stm32l4xx_hal_swpmi.c.

References __SWPMI_HandleTypeDef::Instance.

HAL_StatusTypeDef HAL_SWPMI_DMAStop ( SWPMI_HandleTypeDef hswpmi)

Stop all DMA transfers.

Parameters:
hswpmiSWPMI handle
Return values:
HAL_OK

Definition at line 1136 of file stm32l4xx_hal_swpmi.c.

References HAL_DMA_Abort(), HAL_SWPMI_STATE_READY, __SWPMI_HandleTypeDef::hdmarx, __SWPMI_HandleTypeDef::hdmatx, __SWPMI_HandleTypeDef::Instance, and __SWPMI_HandleTypeDef::State.

HAL_StatusTypeDef HAL_SWPMI_EnableLoopback ( SWPMI_HandleTypeDef hswpmi)

Enable the Loopback mode.

Parameters:
hswpmiSWPMI handle
Note:
Loopback mode is to be used only for test purposes
Return values:
HAL_OK/ HAL_BUSY

Definition at line 1173 of file stm32l4xx_hal_swpmi.c.

References __SWPMI_HandleTypeDef::Instance.

SWPMI error callback.

Parameters:
hswpmiSWPMI handle
Return values:
None

Definition at line 1478 of file stm32l4xx_hal_swpmi.c.

Referenced by HAL_SWPMI_Init(), HAL_SWPMI_IRQHandler(), HAL_SWPMI_UnRegisterCallback(), SWPMI_DMAAbortOnError(), SWPMI_DMAError(), and SWPMI_DMATransmitCplt().

uint32_t HAL_SWPMI_GetError ( SWPMI_HandleTypeDef hswpmi)

Return the SWPMI error code.

Parameters:
hswpmi: pointer to a SWPMI_HandleTypeDef structure that contains the configuration information for the specified SWPMI.
Return values:
SWPMIError Code

Definition at line 1524 of file stm32l4xx_hal_swpmi.c.

References __SWPMI_HandleTypeDef::ErrorCode.

Return the SWPMI handle state.

Parameters:
hswpmiSWPMI handle
Return values:
HALstate

Definition at line 1512 of file stm32l4xx_hal_swpmi.c.

References __SWPMI_HandleTypeDef::State.

HAL_StatusTypeDef HAL_SWPMI_Init ( SWPMI_HandleTypeDef hswpmi)

DeInitialize the SWPMI MSP.

Parameters:
hswpmiSWPMI handle
Return values:
None

Definition at line 408 of file stm32l4xx_hal_swpmi.c.

Referenced by HAL_SWPMI_DeInit(), and HAL_SWPMI_UnRegisterCallback().

Initialize the SWPMI MSP.

Parameters:
hswpmiSWPMI handle
Return values:
None

Definition at line 393 of file stm32l4xx_hal_swpmi.c.

Referenced by HAL_SWPMI_Init(), and HAL_SWPMI_UnRegisterCallback().

HAL_StatusTypeDef HAL_SWPMI_Receive ( SWPMI_HandleTypeDef hswpmi,
uint32_t *  pData,
uint16_t  Size,
uint32_t  Timeout 
)

Receive an amount of data in blocking mode.

Parameters:
hswpmipointer to a SWPMI_HandleTypeDef structure that contains the configuration information for SWPMI module.
pDataPointer to data buffer
SizeAmount of data to be received
TimeoutTimeout duration
Return values:
HALstatus

Definition at line 766 of file stm32l4xx_hal_swpmi.c.

References HAL_GetTick(), HAL_SWPMI_STATE_BUSY_RX, HAL_SWPMI_STATE_BUSY_TX, HAL_SWPMI_STATE_BUSY_TX_RX, HAL_SWPMI_STATE_READY, __SWPMI_HandleTypeDef::Instance, __SWPMI_HandleTypeDef::State, SWPMI_FLAG_RXBFF, SWPMI_FLAG_RXNE, SWPMI_IT_RIE, SWPMI_IT_RXBERIE, SWPMI_IT_RXBFIE, SWPMI_IT_RXOVRIE, and SWPMI_IT_SRIE.

HAL_StatusTypeDef HAL_SWPMI_Receive_DMA ( SWPMI_HandleTypeDef hswpmi,
uint32_t *  pData,
uint16_t  Size 
)
HAL_StatusTypeDef HAL_SWPMI_Receive_IT ( SWPMI_HandleTypeDef hswpmi,
uint32_t *  pData,
uint16_t  Size 
)
HAL_StatusTypeDef HAL_SWPMI_RegisterCallback ( SWPMI_HandleTypeDef hswpmi,
HAL_SWPMI_CallbackIDTypeDef  CallbackID,
pSWPMI_CallbackTypeDef  pCallback 
)

Register a user SWPMI callback to be used instead of the weak predefined callback.

Parameters:
hswpmiSWPMI handle.
CallbackIDID of the callback to be registered. This parameter can be one of the following values:
pCallbackpointer to the callback function.
Return values:
HALstatus.

Definition at line 435 of file stm32l4xx_hal_swpmi.c.

References __SWPMI_HandleTypeDef::ErrorCallback, __SWPMI_HandleTypeDef::ErrorCode, HAL_SWPMI_ERROR_CB_ID, HAL_SWPMI_ERROR_INVALID_CALLBACK, HAL_SWPMI_MSPDEINIT_CB_ID, HAL_SWPMI_MSPINIT_CB_ID, HAL_SWPMI_RX_COMPLETE_CB_ID, HAL_SWPMI_RX_HALFCOMPLETE_CB_ID, HAL_SWPMI_STATE_READY, HAL_SWPMI_STATE_RESET, HAL_SWPMI_TX_COMPLETE_CB_ID, HAL_SWPMI_TX_HALFCOMPLETE_CB_ID, __SWPMI_HandleTypeDef::MspDeInitCallback, __SWPMI_HandleTypeDef::MspInitCallback, __SWPMI_HandleTypeDef::RxCpltCallback, __SWPMI_HandleTypeDef::RxHalfCpltCallback, __SWPMI_HandleTypeDef::State, __SWPMI_HandleTypeDef::TxCpltCallback, and __SWPMI_HandleTypeDef::TxHalfCpltCallback.

Rx Transfer completed callback.

Parameters:
hswpmiSWPMI handle
Return values:
None

Definition at line 1448 of file stm32l4xx_hal_swpmi.c.

Referenced by HAL_SWPMI_Init(), HAL_SWPMI_UnRegisterCallback(), SWPMI_DMAReceiveCplt(), and SWPMI_Receive_IT().

Rx Half Transfer completed callback.

Parameters:
hswpmiSWPMI handle
Return values:
None

Definition at line 1463 of file stm32l4xx_hal_swpmi.c.

Referenced by HAL_SWPMI_Init(), HAL_SWPMI_UnRegisterCallback(), and SWPMI_DMARxHalfCplt().

HAL_StatusTypeDef HAL_SWPMI_Transmit ( SWPMI_HandleTypeDef hswpmi,
uint32_t *  pData,
uint16_t  Size,
uint32_t  Timeout 
)

Transmit an amount of data in blocking mode.

Parameters:
hswpmipointer to a SWPMI_HandleTypeDef structure that contains the configuration information for SWPMI module.
pDataPointer to data buffer
SizeAmount of data to be sent
TimeoutTimeout duration
Return values:
HALstatus

Definition at line 662 of file stm32l4xx_hal_swpmi.c.

References __HAL_SWPMI_CLEAR_FLAG, __HAL_SWPMI_DISABLE_IT, __SWPMI_HandleTypeDef::ErrorCode, HAL_GetTick(), HAL_SWPMI_ERROR_TXBEF_TIMEOUT, HAL_SWPMI_STATE_BUSY_RX, HAL_SWPMI_STATE_BUSY_TX, HAL_SWPMI_STATE_BUSY_TX_RX, HAL_SWPMI_STATE_READY, __SWPMI_HandleTypeDef::Instance, __SWPMI_HandleTypeDef::State, SWPMI_FLAG_TCF, SWPMI_FLAG_TXBEF, SWPMI_FLAG_TXE, SWPMI_FLAG_TXUNRF, SWPMI_IT_TCIE, SWPMI_IT_TIE, SWPMI_IT_TXBEIE, SWPMI_IT_TXUNRIE, and SWPMI_WaitOnFlagSetUntilTimeout().

HAL_StatusTypeDef HAL_SWPMI_Transmit_DMA ( SWPMI_HandleTypeDef hswpmi,
uint32_t *  pData,
uint16_t  Size 
)
HAL_StatusTypeDef HAL_SWPMI_Transmit_IT ( SWPMI_HandleTypeDef hswpmi,
uint32_t *  pData,
uint16_t  Size 
)

Transmit an amount of data in non-blocking mode with interrupt.

Parameters:
hswpmipointer to a SWPMI_HandleTypeDef structure that contains the configuration information for SWPMI module.
pDataPointer to data buffer
SizeAmount of data to be sent
Return values:
HALstatus

Definition at line 863 of file stm32l4xx_hal_swpmi.c.

References __HAL_SWPMI_ENABLE_IT, __SWPMI_HandleTypeDef::ErrorCode, HAL_SWPMI_ERROR_NONE, HAL_SWPMI_STATE_BUSY_RX, HAL_SWPMI_STATE_BUSY_TX, HAL_SWPMI_STATE_BUSY_TX_RX, HAL_SWPMI_STATE_READY, __SWPMI_HandleTypeDef::Instance, __SWPMI_HandleTypeDef::pTxBuffPtr, __SWPMI_HandleTypeDef::State, SWPMI_IT_TCIE, SWPMI_IT_TIE, SWPMI_IT_TXBEIE, SWPMI_IT_TXUNRIE, __SWPMI_HandleTypeDef::TxXferCount, and __SWPMI_HandleTypeDef::TxXferSize.

Tx Transfer completed callback.

Parameters:
hswpmiSWPMI handle
Return values:
None

Definition at line 1418 of file stm32l4xx_hal_swpmi.c.

Referenced by HAL_SWPMI_Init(), HAL_SWPMI_UnRegisterCallback(), SWPMI_DMATransmitCplt(), and SWPMI_EndTransmit_IT().

Tx Half Transfer completed callback.

Parameters:
hswpmiSWPMI handle
Return values:
None

Definition at line 1433 of file stm32l4xx_hal_swpmi.c.

Referenced by HAL_SWPMI_Init(), HAL_SWPMI_UnRegisterCallback(), and SWPMI_DMATxHalfCplt().

HAL_StatusTypeDef HAL_SWPMI_UnRegisterCallback ( SWPMI_HandleTypeDef hswpmi,
HAL_SWPMI_CallbackIDTypeDef  CallbackID 
)

Unregister a user SWPMI callback.

SWPMI callback is redirected to the weak predefined callback.

Parameters:
hswpmiSWPMI handle.
CallbackIDID of the callback to be unregistered. This parameter can be one of the following values:
Return values:
HALstatus.

Definition at line 527 of file stm32l4xx_hal_swpmi.c.

References __SWPMI_HandleTypeDef::ErrorCallback, __SWPMI_HandleTypeDef::ErrorCode, HAL_SWPMI_ERROR_CB_ID, HAL_SWPMI_ERROR_INVALID_CALLBACK, HAL_SWPMI_ErrorCallback(), HAL_SWPMI_MspDeInit(), HAL_SWPMI_MSPDEINIT_CB_ID, HAL_SWPMI_MspInit(), HAL_SWPMI_MSPINIT_CB_ID, HAL_SWPMI_RX_COMPLETE_CB_ID, HAL_SWPMI_RX_HALFCOMPLETE_CB_ID, HAL_SWPMI_RxCpltCallback(), HAL_SWPMI_RxHalfCpltCallback(), HAL_SWPMI_STATE_READY, HAL_SWPMI_STATE_RESET, HAL_SWPMI_TX_COMPLETE_CB_ID, HAL_SWPMI_TX_HALFCOMPLETE_CB_ID, HAL_SWPMI_TxCpltCallback(), HAL_SWPMI_TxHalfCpltCallback(), __SWPMI_HandleTypeDef::MspDeInitCallback, __SWPMI_HandleTypeDef::MspInitCallback, __SWPMI_HandleTypeDef::RxCpltCallback, __SWPMI_HandleTypeDef::RxHalfCpltCallback, __SWPMI_HandleTypeDef::State, __SWPMI_HandleTypeDef::TxCpltCallback, and __SWPMI_HandleTypeDef::TxHalfCpltCallback.