STM32H735xx HAL User Manual
|
SWPMI Transmit/Receive functions. More...
Functions | |
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. |
SWPMI Transmit/Receive functions.
=============================================================================== ##### IO operation methods ##### =============================================================================== [..] This subsection provides a set of functions allowing to manage the SWPMI data transfers. (#) There are two modes of transfer: (++) Blocking mode: The communication is performed in polling mode. The HAL status of all data processing is returned by the same function after finishing transfer. (++) Non-Blocking mode: The communication is performed using Interrupts or DMA. The end of the data processing will be indicated through the dedicated SWPMI Interrupt handler (HAL_SWPMI_IRQHandler()) when using Interrupt mode or the selected DMA stream interrupt handler when using DMA mode. The HAL_SWPMI_TxCpltCallback(), HAL_SWPMI_RxCpltCallback() user callbacks will be executed respectively at the end of the transmit or receive process. The HAL_SWPMI_ErrorCallback() user callback will be executed when a communication error is detected. (#) Blocking mode API's are: (++) HAL_SWPMI_Transmit() (++) HAL_SWPMI_Receive() (#) Non-Blocking mode API's with Interrupt are: (++) HAL_SWPMI_Transmit_IT() (++) HAL_SWPMI_Receive_IT() (++) HAL_SWPMI_IRQHandler() (#) Non-Blocking mode API's with DMA are: (++) HAL_SWPMI_Transmit_DMA() (++) HAL_SWPMI_Receive_DMA() (++) HAL_SWPMI_DMAPause() (++) HAL_SWPMI_DMAResume() (++) HAL_SWPMI_DMAStop() (#) A set of Transfer Complete Callbacks are provided in Non-Blocking mode: (++) HAL_SWPMI_TxHalfCpltCallback() (++) HAL_SWPMI_TxCpltCallback() (++) HAL_SWPMI_RxHalfCpltCallback() (++) HAL_SWPMI_RxCpltCallback() (++) HAL_SWPMI_ErrorCallback() (#) The capability to launch the above IO operations in loopback mode for user application verification: (++) HAL_SWPMI_EnableLoopback() (++) HAL_SWPMI_DisableLoopback()
HAL_StatusTypeDef HAL_SWPMI_DisableLoopback | ( | SWPMI_HandleTypeDef * | hswpmi | ) |
Disable the Loopback mode.
hswpmi | SWPMI handle |
HAL_OK | / HAL_BUSY |
Definition at line 1247 of file stm32h7xx_hal_swpmi.c.
References __SWPMI_HandleTypeDef::Instance.
HAL_StatusTypeDef HAL_SWPMI_DMAStop | ( | SWPMI_HandleTypeDef * | hswpmi | ) |
Stop all DMA transfers.
hswpmi | SWPMI handle |
HAL | status |
Definition at line 1172 of file stm32h7xx_hal_swpmi.c.
References __SWPMI_HandleTypeDef::ErrorCode, HAL_DMA_Abort(), HAL_SWPMI_ERROR_DMA, 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.
hswpmi | SWPMI handle |
HAL_OK | / HAL_BUSY |
Definition at line 1219 of file stm32h7xx_hal_swpmi.c.
References __SWPMI_HandleTypeDef::Instance.
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.
hswpmi | pointer to a SWPMI_HandleTypeDef structure that contains the configuration information for SWPMI module. |
pData | Pointer to data buffer |
Size | Amount of data to be received |
Timeout | Timeout duration |
HAL | status |
Definition at line 766 of file stm32h7xx_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 | ||
) |
Receive an amount of data in non-blocking mode with DMA interrupt.
hswpmi | SWPMI handle |
pData | Pointer to data buffer |
Size | Amount of data to be received |
HAL | status |
Definition at line 1088 of file stm32h7xx_hal_swpmi.c.
References __HAL_SWPMI_ENABLE_IT, __SWPMI_HandleTypeDef::ErrorCode, HAL_DMA_Start_IT(), HAL_SWPMI_ERROR_DMA, 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::hdmarx, __SWPMI_HandleTypeDef::Instance, __SWPMI_HandleTypeDef::pRxBuffPtr, __SWPMI_HandleTypeDef::RxXferSize, __SWPMI_HandleTypeDef::State, SWPMI_DMAError(), SWPMI_DMAReceiveCplt(), SWPMI_DMARxHalfCplt(), SWPMI_IT_RXBERIE, SWPMI_IT_RXOVRIE, __DMA_HandleTypeDef::XferCpltCallback, __DMA_HandleTypeDef::XferErrorCallback, and __DMA_HandleTypeDef::XferHalfCpltCallback.
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.
hswpmi | SWPMI handle |
pData | Pointer to data buffer |
Size | Amount of data to be received |
HAL | status |
Definition at line 938 of file stm32h7xx_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::pRxBuffPtr, __SWPMI_HandleTypeDef::RxXferCount, __SWPMI_HandleTypeDef::RxXferSize, __SWPMI_HandleTypeDef::State, SWPMI_IT_RIE, SWPMI_IT_RXBERIE, SWPMI_IT_RXBFIE, and SWPMI_IT_RXOVRIE.
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.
hswpmi | pointer to a SWPMI_HandleTypeDef structure that contains the configuration information for SWPMI module. |
pData | Pointer to data buffer |
Size | Amount of data to be sent |
Timeout | Timeout duration |
HAL | status |
Definition at line 654 of file stm32h7xx_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 | ||
) |
Transmit an amount of data in non-blocking mode with DMA interrupt.
hswpmi | SWPMI handle |
pData | Pointer to data buffer |
Size | Amount of data to be sent |
HAL | status |
Definition at line 1001 of file stm32h7xx_hal_swpmi.c.
References __HAL_SWPMI_ENABLE_IT, __SWPMI_HandleTypeDef::ErrorCode, HAL_DMA_Start_IT(), HAL_SWPMI_ERROR_DMA, 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::hdmatx, __SWPMI_HandleTypeDef::Instance, __SWPMI_HandleTypeDef::pTxBuffPtr, __SWPMI_HandleTypeDef::State, SWPMI_DMAError(), SWPMI_DMATransmitCplt(), SWPMI_DMATxHalfCplt(), SWPMI_IT_TXUNRIE, __SWPMI_HandleTypeDef::TxXferCount, __SWPMI_HandleTypeDef::TxXferSize, __DMA_HandleTypeDef::XferCpltCallback, __DMA_HandleTypeDef::XferErrorCallback, and __DMA_HandleTypeDef::XferHalfCpltCallback.
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.
hswpmi | pointer to a SWPMI_HandleTypeDef structure that contains the configuration information for SWPMI module. |
pData | Pointer to data buffer |
Size | Amount of data to be sent |
HAL | status |
Definition at line 871 of file stm32h7xx_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.