|
STM32F479xx HAL User Manual
|
Header file of UART HAL module. More...
#include "stm32f4xx_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_OVERSAMPLING_8 ((uint32_t)USART_CR1_OVER8) |
| #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_ONE_BIT_SAMPLE_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR3|= USART_CR3_ONEBIT) |
| Macro to enable the UART's one bit sample method. | |
| #define | __HAL_UART_ONE_BIT_SAMPLE_DISABLE(__HANDLE__) |
| Macro to disable the UART's one bit sample method. | |
| #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_OVERSAMPLING(SAMPLING) |
| #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) <= 10500000U) |
| #define | IS_UART_ADDRESS(ADDRESS) ((ADDRESS) <= 0x0FU) |
| #define | UART_DIV_SAMPLING16(_PCLK_, _BAUD_) ((uint32_t)((((uint64_t)(_PCLK_))*25U)/(4U*((uint64_t)(_BAUD_))))) |
| #define | UART_DIVMANT_SAMPLING16(_PCLK_, _BAUD_) (UART_DIV_SAMPLING16((_PCLK_), (_BAUD_))/100U) |
| #define | UART_DIVFRAQ_SAMPLING16(_PCLK_, _BAUD_) |
| #define | UART_BRR_SAMPLING16(_PCLK_, _BAUD_) |
| #define | UART_DIV_SAMPLING8(_PCLK_, _BAUD_) ((uint32_t)((((uint64_t)(_PCLK_))*25U)/(2U*((uint64_t)(_BAUD_))))) |
| #define | UART_DIVMANT_SAMPLING8(_PCLK_, _BAUD_) (UART_DIV_SAMPLING8((_PCLK_), (_BAUD_))/100U) |
| #define | UART_DIVFRAQ_SAMPLING8(_PCLK_, _BAUD_) |
| #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 stm32f4xx_hal_uart.h.
1.7.6.1