STM32H735xx HAL User Manual
Functions
UART Private Functions
UART

Functions

static void UART_EndTxTransfer (UART_HandleTypeDef *huart)
 End ongoing Tx transfer on UART peripheral (following error detection or Transmit completion).
static void UART_EndRxTransfer (UART_HandleTypeDef *huart)
 End ongoing Rx transfer on UART peripheral (following error detection or Reception completion).
static void UART_DMATransmitCplt (DMA_HandleTypeDef *hdma)
 DMA UART transmit process complete callback.
static void UART_DMAReceiveCplt (DMA_HandleTypeDef *hdma)
 DMA UART receive process complete callback.
static void UART_DMARxHalfCplt (DMA_HandleTypeDef *hdma)
 DMA UART receive process half complete callback.
static void UART_DMATxHalfCplt (DMA_HandleTypeDef *hdma)
 DMA UART transmit process half complete callback.
static void UART_DMAError (DMA_HandleTypeDef *hdma)
 DMA UART communication error callback.
static void UART_DMAAbortOnError (DMA_HandleTypeDef *hdma)
 DMA UART communication abort callback, when initiated by HAL services on Error (To be called at end of DMA Abort procedure following error occurrence).
static void UART_DMATxAbortCallback (DMA_HandleTypeDef *hdma)
 DMA UART Tx communication abort callback, when initiated by user (To be called at end of DMA Tx Abort procedure following user abort request).
static void UART_DMARxAbortCallback (DMA_HandleTypeDef *hdma)
 DMA UART Rx communication abort callback, when initiated by user (To be called at end of DMA Rx Abort procedure following user abort request).
static void UART_DMATxOnlyAbortCallback (DMA_HandleTypeDef *hdma)
 DMA UART Tx communication abort callback, when initiated by user by a call to HAL_UART_AbortTransmit_IT API (Abort only Tx transfer) (This callback is executed at end of DMA Tx Abort procedure following user abort request, and leads to user Tx Abort Complete callback execution).
static void UART_DMARxOnlyAbortCallback (DMA_HandleTypeDef *hdma)
 DMA UART Rx communication abort callback, when initiated by user by a call to HAL_UART_AbortReceive_IT API (Abort only Rx transfer) (This callback is executed at end of DMA Rx Abort procedure following user abort request, and leads to user Rx Abort Complete callback execution).
static void UART_TxISR_8BIT (UART_HandleTypeDef *huart)
 TX interrupt handler for 7 or 8 bits data word length .
static void UART_TxISR_16BIT (UART_HandleTypeDef *huart)
 TX interrupt handler for 9 bits data word length.
static void UART_TxISR_8BIT_FIFOEN (UART_HandleTypeDef *huart)
 TX interrupt handler for 7 or 8 bits data word length and FIFO mode is enabled.
static void UART_TxISR_16BIT_FIFOEN (UART_HandleTypeDef *huart)
 TX interrupt handler for 9 bits data word length and FIFO mode is enabled.
static void UART_EndTransmit_IT (UART_HandleTypeDef *huart)
 Wrap up transmission in non-blocking mode.
static void UART_RxISR_8BIT (UART_HandleTypeDef *huart)
 RX interrupt handler for 7 or 8 bits data word length .
static void UART_RxISR_16BIT (UART_HandleTypeDef *huart)
 RX interrupt handler for 9 bits data word length .
static void UART_RxISR_8BIT_FIFOEN (UART_HandleTypeDef *huart)
 RX interrupt handler for 7 or 8 bits data word length and FIFO mode is enabled.
static void UART_RxISR_16BIT_FIFOEN (UART_HandleTypeDef *huart)
 RX interrupt handler for 9 bits data word length and FIFO mode is enabled.
void UART_InitCallbacksToDefault (UART_HandleTypeDef *huart)
 Initialize the callbacks to their default values.
HAL_StatusTypeDef UART_SetConfig (UART_HandleTypeDef *huart)
 Configure the UART peripheral.
void UART_AdvFeatureConfig (UART_HandleTypeDef *huart)
 Configure the UART peripheral advanced features.
HAL_StatusTypeDef UART_CheckIdleState (UART_HandleTypeDef *huart)
 Check the UART Idle State.
HAL_StatusTypeDef UART_WaitOnFlagUntilTimeout (UART_HandleTypeDef *huart, uint32_t Flag, FlagStatus Status, uint32_t Tickstart, uint32_t Timeout)
 This function handles UART Communication Timeout.
HAL_StatusTypeDef UART_Start_Receive_IT (UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size)
 Start Receive operation in interrupt mode.
HAL_StatusTypeDef UART_Start_Receive_DMA (UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size)
 Start Receive operation in DMA mode.

Function Documentation

HAL_StatusTypeDef UART_CheckIdleState ( UART_HandleTypeDef huart)
static void UART_DMAAbortOnError ( DMA_HandleTypeDef hdma) [static]

DMA UART 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 3838 of file stm32h7xx_hal_uart.c.

References __UART_HandleTypeDef::ErrorCallback, HAL_UART_ErrorCallback(), __DMA_HandleTypeDef::Parent, __UART_HandleTypeDef::RxXferCount, and __UART_HandleTypeDef::TxXferCount.

Referenced by HAL_UART_IRQHandler().

static void UART_DMAError ( DMA_HandleTypeDef hdma) [static]
static void UART_DMAReceiveCplt ( DMA_HandleTypeDef hdma) [static]
static void UART_DMARxAbortCallback ( DMA_HandleTypeDef hdma) [static]

DMA UART 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 3916 of file stm32h7xx_hal_uart.c.

References __HAL_UART_CLEAR_FLAG, __HAL_UART_SEND_REQ, __UART_HandleTypeDef::AbortCpltCallback, __UART_HandleTypeDef::ErrorCode, __UART_HandleTypeDef::gState, HAL_UART_AbortCpltCallback(), HAL_UART_ERROR_NONE, HAL_UART_RECEPTION_STANDARD, HAL_UART_STATE_READY, __UART_HandleTypeDef::hdmarx, __UART_HandleTypeDef::hdmatx, __DMA_HandleTypeDef::Parent, __UART_HandleTypeDef::ReceptionType, __UART_HandleTypeDef::RxState, __UART_HandleTypeDef::RxXferCount, __UART_HandleTypeDef::TxXferCount, UART_CLEAR_FEF, UART_CLEAR_NEF, UART_CLEAR_OREF, UART_CLEAR_PEF, UART_RXDATA_FLUSH_REQUEST, and __DMA_HandleTypeDef::XferAbortCallback.

Referenced by HAL_UART_Abort_IT().

static void UART_DMARxHalfCplt ( DMA_HandleTypeDef hdma) [static]
static void UART_DMARxOnlyAbortCallback ( DMA_HandleTypeDef hdma) [static]

DMA UART Rx communication abort callback, when initiated by user by a call to HAL_UART_AbortReceive_IT API (Abort only Rx transfer) (This callback is executed at end of DMA Rx Abort procedure following user abort request, and leads to user Rx Abort Complete callback execution).

Parameters:
hdmaDMA handle.
Return values:
None

Definition at line 4001 of file stm32h7xx_hal_uart.c.

References __HAL_UART_CLEAR_FLAG, __HAL_UART_SEND_REQ, __UART_HandleTypeDef::AbortReceiveCpltCallback, HAL_UART_AbortReceiveCpltCallback(), HAL_UART_RECEPTION_STANDARD, HAL_UART_STATE_READY, __TIM_HandleTypeDef::hdma, __UART_HandleTypeDef::ReceptionType, __UART_HandleTypeDef::RxState, __UART_HandleTypeDef::RxXferCount, UART_CLEAR_FEF, UART_CLEAR_NEF, UART_CLEAR_OREF, UART_CLEAR_PEF, and UART_RXDATA_FLUSH_REQUEST.

Referenced by HAL_UART_AbortReceive_IT().

static void UART_DMATransmitCplt ( DMA_HandleTypeDef hdma) [static]

DMA UART transmit process complete callback.

Parameters:
hdmaDMA handle.
Return values:
None

Definition at line 3655 of file stm32h7xx_hal_uart.c.

References DMA_CIRCULAR, HAL_UART_TxCpltCallback(), __DMA_HandleTypeDef::Init, __UART_HandleTypeDef::Instance, DMA_InitTypeDef::Mode, __DMA_HandleTypeDef::Parent, __UART_HandleTypeDef::TxCpltCallback, and __UART_HandleTypeDef::TxXferCount.

Referenced by HAL_UART_Transmit_DMA().

static void UART_DMATxAbortCallback ( DMA_HandleTypeDef hdma) [static]
static void UART_DMATxHalfCplt ( DMA_HandleTypeDef hdma) [static]

DMA UART transmit process half complete callback.

Parameters:
hdmaDMA handle.
Return values:
None

Definition at line 3689 of file stm32h7xx_hal_uart.c.

References HAL_UART_TxHalfCpltCallback(), __DMA_HandleTypeDef::Parent, and __UART_HandleTypeDef::TxHalfCpltCallback.

Referenced by HAL_UART_Transmit_DMA().

static void UART_DMATxOnlyAbortCallback ( DMA_HandleTypeDef hdma) [static]

DMA UART Tx communication abort callback, when initiated by user by a call to HAL_UART_AbortTransmit_IT API (Abort only Tx transfer) (This callback is executed at end of DMA Tx Abort procedure following user abort request, and leads to user Tx Abort Complete callback execution).

Parameters:
hdmaDMA handle.
Return values:
None

Definition at line 3968 of file stm32h7xx_hal_uart.c.

References __HAL_UART_SEND_REQ, __UART_HandleTypeDef::AbortTransmitCpltCallback, __UART_HandleTypeDef::FifoMode, __UART_HandleTypeDef::gState, HAL_UART_AbortTransmitCpltCallback(), HAL_UART_STATE_READY, __DMA_HandleTypeDef::Parent, __UART_HandleTypeDef::TxXferCount, UART_FIFOMODE_ENABLE, and UART_TXDATA_FLUSH_REQUEST.

Referenced by HAL_UART_AbortTransmit_IT().

static void UART_EndRxTransfer ( UART_HandleTypeDef huart) [static]

End ongoing Rx transfer on UART peripheral (following error detection or Reception completion).

Parameters:
huartUART handle.
Return values:
None

Definition at line 3629 of file stm32h7xx_hal_uart.c.

References HAL_UART_RECEPTION_STANDARD, HAL_UART_RECEPTION_TOIDLE, HAL_UART_STATE_READY, __UART_HandleTypeDef::Instance, __UART_HandleTypeDef::ReceptionType, __UART_HandleTypeDef::RxISR, and __UART_HandleTypeDef::RxState.

Referenced by HAL_UART_DMAStop(), HAL_UART_IRQHandler(), and UART_DMAError().

static void UART_EndTransmit_IT ( UART_HandleTypeDef huart) [static]

Wrap up transmission in non-blocking mode.

Parameters:
huartpointer to a UART_HandleTypeDef structure that contains the configuration information for the specified UART module.
Return values:
None

Definition at line 4176 of file stm32h7xx_hal_uart.c.

References __UART_HandleTypeDef::gState, HAL_UART_STATE_READY, HAL_UART_TxCpltCallback(), __UART_HandleTypeDef::Instance, __UART_HandleTypeDef::TxCpltCallback, and __UART_HandleTypeDef::TxISR.

Referenced by HAL_UART_IRQHandler().

static void UART_EndTxTransfer ( UART_HandleTypeDef huart) [static]

End ongoing Tx transfer on UART peripheral (following error detection or Transmit completion).

Parameters:
huartUART handle.
Return values:
None

Definition at line 3613 of file stm32h7xx_hal_uart.c.

References __UART_HandleTypeDef::gState, HAL_UART_STATE_READY, and __UART_HandleTypeDef::Instance.

Referenced by HAL_UART_DMAStop(), and UART_DMAError().

static void UART_RxISR_16BIT ( UART_HandleTypeDef huart) [static]
static void UART_RxISR_16BIT_FIFOEN ( UART_HandleTypeDef huart) [static]
static void UART_RxISR_8BIT ( UART_HandleTypeDef huart) [static]
static void UART_RxISR_8BIT_FIFOEN ( UART_HandleTypeDef huart) [static]
HAL_StatusTypeDef UART_SetConfig ( UART_HandleTypeDef huart)

Configure the UART peripheral.

Parameters:
huartUART handle.
Return values:
HALstatus

Definition at line 3023 of file stm32h7xx_hal_uart.c.

References __HAL_RCC_GET_FLAG, __HAL_RCC_GET_HSI_DIVIDER, assert_param, UART_InitTypeDef::BaudRate, UART_InitTypeDef::ClockPrescaler, CSI_VALUE, HAL_RCC_GetPCLK1Freq(), HAL_RCC_GetPCLK2Freq(), HAL_RCCEx_GetD3PCLK1Freq(), HAL_RCCEx_GetPLL2ClockFreq(), HAL_RCCEx_GetPLL3ClockFreq(), HSI_VALUE, UART_InitTypeDef::HwFlowCtl, __UART_HandleTypeDef::Init, __UART_HandleTypeDef::Instance, IS_LPUART_STOPBITS, IS_UART_BAUDRATE, IS_UART_HARDWARE_FLOW_CONTROL, IS_UART_MODE, IS_UART_ONE_BIT_SAMPLE, IS_UART_OVERSAMPLING, IS_UART_PARITY, IS_UART_PRESCALER, IS_UART_STOPBITS, IS_UART_WORD_LENGTH, LPUART_BRR_MAX, LPUART_BRR_MIN, LSE_VALUE, UART_InitTypeDef::Mode, __UART_HandleTypeDef::NbRxDataToProcess, __UART_HandleTypeDef::NbTxDataToProcess, UART_InitTypeDef::OneBitSampling, UART_InitTypeDef::OverSampling, UART_InitTypeDef::Parity, PLL2_ClocksTypeDef::PLL2_Q_Frequency, PLL3_ClocksTypeDef::PLL3_Q_Frequency, RCC_FLAG_HSIDIV, __UART_HandleTypeDef::RxISR, UART_InitTypeDef::StopBits, __UART_HandleTypeDef::TxISR, UART_BRR_MAX, UART_BRR_MIN, UART_CLOCKSOURCE_CSI, UART_CLOCKSOURCE_D2PCLK1, UART_CLOCKSOURCE_D2PCLK2, UART_CLOCKSOURCE_D3PCLK1, UART_CLOCKSOURCE_HSI, UART_CLOCKSOURCE_LSE, UART_CLOCKSOURCE_PLL2, UART_CLOCKSOURCE_PLL3, UART_DIV_LPUART, UART_DIV_SAMPLING16, UART_DIV_SAMPLING8, UART_GETCLOCKSOURCE, UART_INSTANCE_LOWPOWER, UART_OVERSAMPLING_8, UARTPrescTable, USART_CR1_FIELDS, USART_CR3_FIELDS, and UART_InitTypeDef::WordLength.

Referenced by HAL_HalfDuplex_Init(), HAL_LIN_Init(), HAL_MultiProcessor_Init(), HAL_RS485Ex_Init(), and HAL_UART_Init().

HAL_StatusTypeDef UART_Start_Receive_DMA ( UART_HandleTypeDef huart,
uint8_t *  pData,
uint16_t  Size 
)

Start Receive operation in DMA mode.

Note:
This function could be called by all HAL UART API providing reception in DMA mode.
When calling this function, parameters validity is considered as already checked, i.e. Rx State, buffer address, ... UART Handle is assumed as Locked.
Parameters:
huartUART handle.
pDataPointer to data buffer (u8 or u16 data elements).
SizeAmount of data elements (u8 or u16) to be received.
Return values:
HALstatus

Definition at line 3553 of file stm32h7xx_hal_uart.c.

References __UART_HandleTypeDef::ErrorCode, HAL_DMA_Start_IT(), HAL_UART_ERROR_DMA, HAL_UART_ERROR_NONE, HAL_UART_STATE_BUSY_RX, HAL_UART_STATE_READY, __UART_HandleTypeDef::hdmarx, __UART_HandleTypeDef::Init, __UART_HandleTypeDef::Instance, UART_InitTypeDef::Parity, __UART_HandleTypeDef::pRxBuffPtr, __UART_HandleTypeDef::RxState, __UART_HandleTypeDef::RxXferSize, UART_DMAError(), UART_DMAReceiveCplt(), UART_DMARxHalfCplt(), UART_PARITY_NONE, __DMA_HandleTypeDef::XferAbortCallback, __DMA_HandleTypeDef::XferCpltCallback, __DMA_HandleTypeDef::XferErrorCallback, and __DMA_HandleTypeDef::XferHalfCpltCallback.

Referenced by HAL_UART_Receive_DMA(), and HAL_UARTEx_ReceiveToIdle_DMA().

HAL_StatusTypeDef UART_Start_Receive_IT ( UART_HandleTypeDef huart,
uint8_t *  pData,
uint16_t  Size 
)

Start Receive operation in interrupt mode.

Note:
This function could be called by all HAL UART API providing reception in Interrupt mode.
When calling this function, parameters validity is considered as already checked, i.e. Rx State, buffer address, ... UART Handle is assumed as Locked.
Parameters:
huartUART handle.
pDataPointer to data buffer (u8 or u16 data elements).
SizeAmount of data elements (u8 or u16) to be received.
Return values:
HALstatus

Definition at line 3477 of file stm32h7xx_hal_uart.c.

References __UART_HandleTypeDef::ErrorCode, __UART_HandleTypeDef::FifoMode, HAL_UART_ERROR_NONE, HAL_UART_STATE_BUSY_RX, __UART_HandleTypeDef::Init, __UART_HandleTypeDef::Instance, __UART_HandleTypeDef::NbRxDataToProcess, UART_InitTypeDef::Parity, __UART_HandleTypeDef::pRxBuffPtr, __UART_HandleTypeDef::RxISR, __UART_HandleTypeDef::RxState, __UART_HandleTypeDef::RxXferCount, __UART_HandleTypeDef::RxXferSize, UART_FIFOMODE_ENABLE, UART_MASK_COMPUTATION, UART_PARITY_NONE, UART_RxISR_16BIT(), UART_RxISR_16BIT_FIFOEN(), UART_RxISR_8BIT(), UART_RxISR_8BIT_FIFOEN(), UART_WORDLENGTH_9B, and UART_InitTypeDef::WordLength.

Referenced by HAL_UART_Receive_IT(), and HAL_UARTEx_ReceiveToIdle_IT().

static void UART_TxISR_16BIT ( UART_HandleTypeDef huart) [static]

TX interrupt handler for 9 bits data word length.

Note:
Function is called under interruption only, once interruptions have been enabled by HAL_UART_Transmit_IT().
Parameters:
huartUART handle.
Return values:
None

Definition at line 4063 of file stm32h7xx_hal_uart.c.

References __UART_HandleTypeDef::gState, HAL_UART_STATE_BUSY_TX, __UART_HandleTypeDef::Instance, __UART_HandleTypeDef::pTxBuffPtr, and __UART_HandleTypeDef::TxXferCount.

Referenced by HAL_UART_Transmit_IT().

static void UART_TxISR_16BIT_FIFOEN ( UART_HandleTypeDef huart) [static]

TX interrupt handler for 9 bits data word length and FIFO mode is enabled.

Note:
Function is called under interruption only, once interruptions have been enabled by HAL_UART_Transmit_IT().
Parameters:
huartUART handle.
Return values:
None

Definition at line 4135 of file stm32h7xx_hal_uart.c.

References __UART_HandleTypeDef::gState, HAL_UART_STATE_BUSY_TX, __UART_HandleTypeDef::Instance, __UART_HandleTypeDef::NbTxDataToProcess, __UART_HandleTypeDef::pTxBuffPtr, and __UART_HandleTypeDef::TxXferCount.

Referenced by HAL_UART_Transmit_IT().

static void UART_TxISR_8BIT ( UART_HandleTypeDef huart) [static]

TX interrupt handler for 7 or 8 bits data word length .

Note:
Function is called under interruption only, once interruptions have been enabled by HAL_UART_Transmit_IT().
Parameters:
huartUART handle.
Return values:
None

Definition at line 4034 of file stm32h7xx_hal_uart.c.

References __UART_HandleTypeDef::gState, HAL_UART_STATE_BUSY_TX, __UART_HandleTypeDef::Instance, __UART_HandleTypeDef::pTxBuffPtr, and __UART_HandleTypeDef::TxXferCount.

Referenced by HAL_UART_Transmit_IT().

static void UART_TxISR_8BIT_FIFOEN ( UART_HandleTypeDef huart) [static]

TX interrupt handler for 7 or 8 bits data word length and FIFO mode is enabled.

Note:
Function is called under interruption only, once interruptions have been enabled by HAL_UART_Transmit_IT().
Parameters:
huartUART handle.
Return values:
None

Definition at line 4095 of file stm32h7xx_hal_uart.c.

References __UART_HandleTypeDef::gState, HAL_UART_STATE_BUSY_TX, __UART_HandleTypeDef::Instance, __UART_HandleTypeDef::NbTxDataToProcess, __UART_HandleTypeDef::pTxBuffPtr, and __UART_HandleTypeDef::TxXferCount.

Referenced by HAL_UART_Transmit_IT().

HAL_StatusTypeDef UART_WaitOnFlagUntilTimeout ( UART_HandleTypeDef huart,
uint32_t  Flag,
FlagStatus  Status,
uint32_t  Tickstart,
uint32_t  Timeout 
)

This function handles UART Communication Timeout.

It waits until a flag is no longer in the specified status.

Parameters:
huartUART handle.
FlagSpecifies the UART flag to check
StatusThe actual Flag status (SET or RESET)
TickstartTick start value
TimeoutTimeout duration
Return values:
HALstatus

Definition at line 3413 of file stm32h7xx_hal_uart.c.

References __HAL_UART_CLEAR_FLAG, __HAL_UART_GET_FLAG, __UART_HandleTypeDef::ErrorCode, __UART_HandleTypeDef::gState, HAL_GetTick(), HAL_UART_ERROR_RTO, HAL_UART_STATE_READY, __UART_HandleTypeDef::Instance, __UART_HandleTypeDef::RxState, UART_CLEAR_RTOF, and UART_FLAG_RTOF.

Referenced by HAL_UART_Receive(), HAL_UART_Transmit(), HAL_UARTEx_StopModeWakeUpSourceConfig(), and UART_CheckIdleState().