STM32F103xB HAL User Manual
|
Header file of UART HAL module. More...
#include "stm32f1xx_hal_def.h"
Go to the source code of this file.
Data Structures | |
struct | UART_InitTypeDef |
UART Init Structure definition. More... | |
struct | __UART_HandleTypeDef |
UART handle Structure definition. More... | |
Defines | |
#define | HAL_UART_ERROR_NONE 0x00000000U |
#define | HAL_UART_ERROR_PE 0x00000001U |
#define | HAL_UART_ERROR_NE 0x00000002U |
#define | HAL_UART_ERROR_FE 0x00000004U |
#define | HAL_UART_ERROR_ORE 0x00000008U |
#define | HAL_UART_ERROR_DMA 0x00000010U |
#define | HAL_UART_ERROR_INVALID_CALLBACK 0x00000020U |
#define | UART_WORDLENGTH_8B 0x00000000U |
#define | UART_WORDLENGTH_9B ((uint32_t)USART_CR1_M) |
#define | UART_STOPBITS_1 0x00000000U |
#define | UART_STOPBITS_2 ((uint32_t)USART_CR2_STOP_1) |
#define | UART_PARITY_NONE 0x00000000U |
#define | UART_PARITY_EVEN ((uint32_t)USART_CR1_PCE) |
#define | UART_PARITY_ODD ((uint32_t)(USART_CR1_PCE | USART_CR1_PS)) |
#define | UART_HWCONTROL_NONE 0x00000000U |
#define | UART_HWCONTROL_RTS ((uint32_t)USART_CR3_RTSE) |
#define | UART_HWCONTROL_CTS ((uint32_t)USART_CR3_CTSE) |
#define | UART_HWCONTROL_RTS_CTS ((uint32_t)(USART_CR3_RTSE | USART_CR3_CTSE)) |
#define | UART_MODE_RX ((uint32_t)USART_CR1_RE) |
#define | UART_MODE_TX ((uint32_t)USART_CR1_TE) |
#define | UART_MODE_TX_RX ((uint32_t)(USART_CR1_TE | USART_CR1_RE)) |
#define | UART_STATE_DISABLE 0x00000000U |
#define | UART_STATE_ENABLE ((uint32_t)USART_CR1_UE) |
#define | UART_OVERSAMPLING_16 0x00000000U |
#define | UART_LINBREAKDETECTLENGTH_10B 0x00000000U |
#define | UART_LINBREAKDETECTLENGTH_11B ((uint32_t)USART_CR2_LBDL) |
#define | UART_WAKEUPMETHOD_IDLELINE 0x00000000U |
#define | UART_WAKEUPMETHOD_ADDRESSMARK ((uint32_t)USART_CR1_WAKE) |
#define | UART_FLAG_CTS ((uint32_t)USART_SR_CTS) |
#define | UART_FLAG_LBD ((uint32_t)USART_SR_LBD) |
#define | UART_FLAG_TXE ((uint32_t)USART_SR_TXE) |
#define | UART_FLAG_TC ((uint32_t)USART_SR_TC) |
#define | UART_FLAG_RXNE ((uint32_t)USART_SR_RXNE) |
#define | UART_FLAG_IDLE ((uint32_t)USART_SR_IDLE) |
#define | UART_FLAG_ORE ((uint32_t)USART_SR_ORE) |
#define | UART_FLAG_NE ((uint32_t)USART_SR_NE) |
#define | UART_FLAG_FE ((uint32_t)USART_SR_FE) |
#define | UART_FLAG_PE ((uint32_t)USART_SR_PE) |
#define | UART_IT_PE ((uint32_t)(UART_CR1_REG_INDEX << 28U | USART_CR1_PEIE)) |
#define | UART_IT_TXE ((uint32_t)(UART_CR1_REG_INDEX << 28U | USART_CR1_TXEIE)) |
#define | UART_IT_TC ((uint32_t)(UART_CR1_REG_INDEX << 28U | USART_CR1_TCIE)) |
#define | UART_IT_RXNE ((uint32_t)(UART_CR1_REG_INDEX << 28U | USART_CR1_RXNEIE)) |
#define | UART_IT_IDLE ((uint32_t)(UART_CR1_REG_INDEX << 28U | USART_CR1_IDLEIE)) |
#define | UART_IT_LBD ((uint32_t)(UART_CR2_REG_INDEX << 28U | USART_CR2_LBDIE)) |
#define | UART_IT_CTS ((uint32_t)(UART_CR3_REG_INDEX << 28U | USART_CR3_CTSIE)) |
#define | UART_IT_ERR ((uint32_t)(UART_CR3_REG_INDEX << 28U | USART_CR3_EIE)) |
#define | HAL_UART_RECEPTION_STANDARD (0x00000000U) |
#define | HAL_UART_RECEPTION_TOIDLE (0x00000001U) |
#define | __HAL_UART_RESET_HANDLE_STATE(__HANDLE__) |
Reset UART handle gstate & RxState. | |
#define | __HAL_UART_FLUSH_DRREGISTER(__HANDLE__) ((__HANDLE__)->Instance->DR) |
Flushes the UART DR register. | |
#define | __HAL_UART_GET_FLAG(__HANDLE__, __FLAG__) (((__HANDLE__)->Instance->SR & (__FLAG__)) == (__FLAG__)) |
Checks whether the specified UART flag is set or not. | |
#define | __HAL_UART_CLEAR_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->SR = ~(__FLAG__)) |
Clears the specified UART pending flag. | |
#define | __HAL_UART_CLEAR_PEFLAG(__HANDLE__) |
Clears the UART PE pending flag. | |
#define | __HAL_UART_CLEAR_FEFLAG(__HANDLE__) __HAL_UART_CLEAR_PEFLAG(__HANDLE__) |
Clears the UART FE pending flag. | |
#define | __HAL_UART_CLEAR_NEFLAG(__HANDLE__) __HAL_UART_CLEAR_PEFLAG(__HANDLE__) |
Clears the UART NE pending flag. | |
#define | __HAL_UART_CLEAR_OREFLAG(__HANDLE__) __HAL_UART_CLEAR_PEFLAG(__HANDLE__) |
Clears the UART ORE pending flag. | |
#define | __HAL_UART_CLEAR_IDLEFLAG(__HANDLE__) __HAL_UART_CLEAR_PEFLAG(__HANDLE__) |
Clears the UART IDLE pending flag. | |
#define | __HAL_UART_ENABLE_IT(__HANDLE__, __INTERRUPT__) |
Enable the specified UART interrupt. | |
#define | __HAL_UART_DISABLE_IT(__HANDLE__, __INTERRUPT__) |
Disable the specified UART interrupt. | |
#define | __HAL_UART_GET_IT_SOURCE(__HANDLE__, __IT__) |
Checks whether the specified UART interrupt source is enabled or not. | |
#define | __HAL_UART_HWCONTROL_CTS_ENABLE(__HANDLE__) |
Enable CTS flow control. | |
#define | __HAL_UART_HWCONTROL_CTS_DISABLE(__HANDLE__) |
Disable CTS flow control. | |
#define | __HAL_UART_HWCONTROL_RTS_ENABLE(__HANDLE__) |
Enable RTS flow control This macro allows to enable RTS hardware flow control for a given UART instance, without need to call HAL_UART_Init() function. | |
#define | __HAL_UART_HWCONTROL_RTS_DISABLE(__HANDLE__) |
Disable RTS flow control This macro allows to disable RTS hardware flow control for a given UART instance, without need to call HAL_UART_Init() function. | |
#define | __HAL_UART_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR1 |= USART_CR1_UE) |
Enable UART. | |
#define | __HAL_UART_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->CR1 &= ~USART_CR1_UE) |
Disable UART. | |
#define | UART_IT_MASK 0x0000FFFFU |
UART interruptions flag mask. | |
#define | UART_CR1_REG_INDEX 1U |
#define | UART_CR2_REG_INDEX 2U |
#define | UART_CR3_REG_INDEX 3U |
#define | IS_UART_WORD_LENGTH(LENGTH) |
#define | IS_UART_LIN_WORD_LENGTH(LENGTH) (((LENGTH) == UART_WORDLENGTH_8B)) |
#define | IS_UART_STOPBITS(STOPBITS) |
#define | IS_UART_PARITY(PARITY) |
#define | IS_UART_HARDWARE_FLOW_CONTROL(CONTROL) |
#define | IS_UART_MODE(MODE) ((((MODE) & 0x0000FFF3U) == 0x00U) && ((MODE) != 0x00U)) |
#define | IS_UART_STATE(STATE) |
#define | IS_UART_LIN_OVERSAMPLING(SAMPLING) (((SAMPLING) == UART_OVERSAMPLING_16)) |
#define | IS_UART_LIN_BREAK_DETECT_LENGTH(LENGTH) |
#define | IS_UART_WAKEUPMETHOD(WAKEUP) |
#define | IS_UART_BAUDRATE(BAUDRATE) ((BAUDRATE) <= 4500000U) |
#define | IS_UART_ADDRESS(ADDRESS) ((ADDRESS) <= 0x0FU) |
#define | UART_DIV_SAMPLING16(_PCLK_, _BAUD_) (((_PCLK_)*25U)/(4U*(_BAUD_))) |
#define | UART_DIVMANT_SAMPLING16(_PCLK_, _BAUD_) (UART_DIV_SAMPLING16((_PCLK_), (_BAUD_))/100U) |
#define | UART_DIVFRAQ_SAMPLING16(_PCLK_, _BAUD_) ((((UART_DIV_SAMPLING16((_PCLK_), (_BAUD_)) - (UART_DIVMANT_SAMPLING16((_PCLK_), (_BAUD_)) * 100U)) * 16U) + 50U) / 100U) |
#define | UART_BRR_SAMPLING16(_PCLK_, _BAUD_) |
#define | UART_DIV_SAMPLING8(_PCLK_, _BAUD_) (((_PCLK_)*25U)/(2U*(_BAUD_))) |
#define | UART_DIVMANT_SAMPLING8(_PCLK_, _BAUD_) (UART_DIV_SAMPLING8((_PCLK_), (_BAUD_))/100U) |
#define | UART_DIVFRAQ_SAMPLING8(_PCLK_, _BAUD_) ((((UART_DIV_SAMPLING8((_PCLK_), (_BAUD_)) - (UART_DIVMANT_SAMPLING8((_PCLK_), (_BAUD_)) * 100U)) * 8U) + 50U) / 100U) |
#define | UART_BRR_SAMPLING8(_PCLK_, _BAUD_) |
Typedefs | |
typedef uint32_t | HAL_UART_RxTypeTypeDef |
HAL UART Reception type definition. | |
typedef struct __UART_HandleTypeDef | UART_HandleTypeDef |
UART handle Structure definition. | |
typedef void(* | pUART_CallbackTypeDef )(UART_HandleTypeDef *huart) |
HAL UART Callback pointer definition. | |
typedef void(* | pUART_RxEventCallbackTypeDef )(struct __UART_HandleTypeDef *huart, uint16_t Pos) |
Enumerations | |
enum | HAL_UART_StateTypeDef { HAL_UART_STATE_RESET = 0x00U, HAL_UART_STATE_READY = 0x20U, HAL_UART_STATE_BUSY = 0x24U, HAL_UART_STATE_BUSY_TX = 0x21U, HAL_UART_STATE_BUSY_RX = 0x22U, HAL_UART_STATE_BUSY_TX_RX = 0x23U, HAL_UART_STATE_TIMEOUT = 0xA0U, HAL_UART_STATE_ERROR = 0xE0U } |
HAL UART State structures definition. More... | |
enum | HAL_UART_CallbackIDTypeDef { HAL_UART_TX_HALFCOMPLETE_CB_ID = 0x00U, HAL_UART_TX_COMPLETE_CB_ID = 0x01U, HAL_UART_RX_HALFCOMPLETE_CB_ID = 0x02U, HAL_UART_RX_COMPLETE_CB_ID = 0x03U, HAL_UART_ERROR_CB_ID = 0x04U, HAL_UART_ABORT_COMPLETE_CB_ID = 0x05U, HAL_UART_ABORT_TRANSMIT_COMPLETE_CB_ID = 0x06U, HAL_UART_ABORT_RECEIVE_COMPLETE_CB_ID = 0x07U, HAL_UART_WAKEUP_CB_ID = 0x08U, HAL_UART_MSPINIT_CB_ID = 0x0BU, HAL_UART_MSPDEINIT_CB_ID = 0x0CU } |
HAL UART Callback ID enumeration definition. More... | |
Functions | |
HAL_StatusTypeDef | HAL_UART_Init (UART_HandleTypeDef *huart) |
Initializes the UART mode according to the specified parameters in the UART_InitTypeDef and create the associated handle. | |
HAL_StatusTypeDef | HAL_HalfDuplex_Init (UART_HandleTypeDef *huart) |
Initializes the half-duplex mode according to the specified parameters in the UART_InitTypeDef and create the associated handle. | |
HAL_StatusTypeDef | HAL_LIN_Init (UART_HandleTypeDef *huart, uint32_t BreakDetectLength) |
Initializes the LIN mode according to the specified parameters in the UART_InitTypeDef and create the associated handle. | |
HAL_StatusTypeDef | HAL_MultiProcessor_Init (UART_HandleTypeDef *huart, uint8_t Address, uint32_t WakeUpMethod) |
Initializes the Multi-Processor mode according to the specified parameters in the UART_InitTypeDef and create the associated handle. | |
HAL_StatusTypeDef | HAL_UART_DeInit (UART_HandleTypeDef *huart) |
DeInitializes the UART peripheral. | |
__weak void | HAL_UART_MspInit (UART_HandleTypeDef *huart) |
UART MSP Init. | |
__weak void | HAL_UART_MspDeInit (UART_HandleTypeDef *huart) |
UART MSP DeInit. | |
HAL_StatusTypeDef | HAL_UART_RegisterCallback (UART_HandleTypeDef *huart, HAL_UART_CallbackIDTypeDef CallbackID, pUART_CallbackTypeDef pCallback) |
Register a User UART Callback To be used instead of the weak predefined callback. | |
HAL_StatusTypeDef | HAL_UART_UnRegisterCallback (UART_HandleTypeDef *huart, HAL_UART_CallbackIDTypeDef CallbackID) |
Unregister an UART Callback UART callaback is redirected to the weak predefined callback. | |
HAL_StatusTypeDef | HAL_UART_RegisterRxEventCallback (UART_HandleTypeDef *huart, pUART_RxEventCallbackTypeDef pCallback) |
Register a User UART Rx Event Callback To be used instead of the weak predefined callback. | |
HAL_StatusTypeDef | HAL_UART_UnRegisterRxEventCallback (UART_HandleTypeDef *huart) |
UnRegister the UART Rx Event Callback UART Rx Event Callback is redirected to the weak HAL_UARTEx_RxEventCallback() predefined callback. | |
HAL_StatusTypeDef | HAL_UART_Transmit (UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout) |
Sends an amount of data in blocking mode. | |
HAL_StatusTypeDef | HAL_UART_Receive (UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout) |
Receives an amount of data in blocking mode. | |
HAL_StatusTypeDef | HAL_UART_Transmit_IT (UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size) |
Sends an amount of data in non blocking mode. | |
HAL_StatusTypeDef | HAL_UART_Receive_IT (UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size) |
Receives an amount of data in non blocking mode. | |
HAL_StatusTypeDef | HAL_UART_Transmit_DMA (UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size) |
Sends an amount of data in DMA mode. | |
HAL_StatusTypeDef | HAL_UART_Receive_DMA (UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size) |
Receives an amount of data in DMA mode. | |
HAL_StatusTypeDef | HAL_UART_DMAPause (UART_HandleTypeDef *huart) |
Pauses the DMA Transfer. | |
HAL_StatusTypeDef | HAL_UART_DMAResume (UART_HandleTypeDef *huart) |
Resumes the DMA Transfer. | |
HAL_StatusTypeDef | HAL_UART_DMAStop (UART_HandleTypeDef *huart) |
Stops the DMA Transfer. | |
HAL_StatusTypeDef | HAL_UARTEx_ReceiveToIdle (UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint16_t *RxLen, uint32_t Timeout) |
Receive an amount of data in blocking mode till either the expected number of data is received or an IDLE event occurs. | |
HAL_StatusTypeDef | HAL_UARTEx_ReceiveToIdle_IT (UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size) |
Receive an amount of data in interrupt mode till either the expected number of data is received or an IDLE event occurs. | |
HAL_StatusTypeDef | HAL_UARTEx_ReceiveToIdle_DMA (UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size) |
Receive an amount of data in DMA mode till either the expected number of data is received or an IDLE event occurs. | |
HAL_StatusTypeDef | HAL_UART_Abort (UART_HandleTypeDef *huart) |
Abort ongoing transfers (blocking mode). | |
HAL_StatusTypeDef | HAL_UART_AbortTransmit (UART_HandleTypeDef *huart) |
Abort ongoing Transmit transfer (blocking mode). | |
HAL_StatusTypeDef | HAL_UART_AbortReceive (UART_HandleTypeDef *huart) |
Abort ongoing Receive transfer (blocking mode). | |
HAL_StatusTypeDef | HAL_UART_Abort_IT (UART_HandleTypeDef *huart) |
Abort ongoing transfers (Interrupt mode). | |
HAL_StatusTypeDef | HAL_UART_AbortTransmit_IT (UART_HandleTypeDef *huart) |
Abort ongoing Transmit transfer (Interrupt mode). | |
HAL_StatusTypeDef | HAL_UART_AbortReceive_IT (UART_HandleTypeDef *huart) |
Abort ongoing Receive transfer (Interrupt mode). | |
void | HAL_UART_IRQHandler (UART_HandleTypeDef *huart) |
This function handles UART interrupt request. | |
__weak void | HAL_UART_TxCpltCallback (UART_HandleTypeDef *huart) |
Tx Transfer completed callbacks. | |
__weak void | HAL_UART_TxHalfCpltCallback (UART_HandleTypeDef *huart) |
Tx Half Transfer completed callbacks. | |
__weak void | HAL_UART_RxCpltCallback (UART_HandleTypeDef *huart) |
Rx Transfer completed callbacks. | |
__weak void | HAL_UART_RxHalfCpltCallback (UART_HandleTypeDef *huart) |
Rx Half Transfer completed callbacks. | |
__weak void | HAL_UART_ErrorCallback (UART_HandleTypeDef *huart) |
UART error callbacks. | |
__weak void | HAL_UART_AbortCpltCallback (UART_HandleTypeDef *huart) |
UART Abort Complete callback. | |
__weak void | HAL_UART_AbortTransmitCpltCallback (UART_HandleTypeDef *huart) |
UART Abort Complete callback. | |
__weak void | HAL_UART_AbortReceiveCpltCallback (UART_HandleTypeDef *huart) |
UART Abort Receive Complete callback. | |
__weak void | HAL_UARTEx_RxEventCallback (UART_HandleTypeDef *huart, uint16_t Size) |
Reception Event Callback (Rx event notification called after use of advanced reception service). | |
HAL_StatusTypeDef | HAL_LIN_SendBreak (UART_HandleTypeDef *huart) |
Transmits break characters. | |
HAL_StatusTypeDef | HAL_MultiProcessor_EnterMuteMode (UART_HandleTypeDef *huart) |
Enters the UART in mute mode. | |
HAL_StatusTypeDef | HAL_MultiProcessor_ExitMuteMode (UART_HandleTypeDef *huart) |
Exits the UART mute mode: wake up software. | |
HAL_StatusTypeDef | HAL_HalfDuplex_EnableTransmitter (UART_HandleTypeDef *huart) |
Enables the UART transmitter and disables the UART receiver. | |
HAL_StatusTypeDef | HAL_HalfDuplex_EnableReceiver (UART_HandleTypeDef *huart) |
Enables the UART receiver and disables the UART transmitter. | |
HAL_UART_StateTypeDef | HAL_UART_GetState (UART_HandleTypeDef *huart) |
Returns the UART state. | |
uint32_t | HAL_UART_GetError (UART_HandleTypeDef *huart) |
Return the UART error code. | |
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. |
Header file of UART HAL module.
This software component is licensed by ST under BSD 3-Clause license, the "License"; You may not use this file except in compliance with the License. You may obtain a copy of the License at: opensource.org/licenses/BSD-3-Clause
Definition in file stm32f1xx_hal_uart.h.