STM32F4xx HAL Documentation
Hardware Abstraction Layer for STM32F4 familiy
Loading...
Searching...
No Matches
stm32f4xx_hal_usart.h File Reference

Header file of USART HAL module. More...

Include dependency graph for stm32f4xx_hal_usart.h:

Go to the source code of this file.

Data Structures

struct  USART_InitTypeDef
 USART Init Structure definition. More...
 
struct  __USART_HandleTypeDef
 USART handle Structure definition. More...
 

Macros

#define HAL_USART_ERROR_NONE   0x00000000U
 
#define HAL_USART_ERROR_PE   0x00000001U
 
#define HAL_USART_ERROR_NE   0x00000002U
 
#define HAL_USART_ERROR_FE   0x00000004U
 
#define HAL_USART_ERROR_ORE   0x00000008U
 
#define HAL_USART_ERROR_DMA   0x00000010U
 
#define USART_WORDLENGTH_8B   0x00000000U
 
#define USART_WORDLENGTH_9B   ((uint32_t)USART_CR1_M)
 
#define USART_STOPBITS_1   0x00000000U
 
#define USART_STOPBITS_0_5   ((uint32_t)USART_CR2_STOP_0)
 
#define USART_STOPBITS_2   ((uint32_t)USART_CR2_STOP_1)
 
#define USART_STOPBITS_1_5   ((uint32_t)(USART_CR2_STOP_0 | USART_CR2_STOP_1))
 
#define USART_PARITY_NONE   0x00000000U
 
#define USART_PARITY_EVEN   ((uint32_t)USART_CR1_PCE)
 
#define USART_PARITY_ODD   ((uint32_t)(USART_CR1_PCE | USART_CR1_PS))
 
#define USART_MODE_RX   ((uint32_t)USART_CR1_RE)
 
#define USART_MODE_TX   ((uint32_t)USART_CR1_TE)
 
#define USART_MODE_TX_RX   ((uint32_t)(USART_CR1_TE | USART_CR1_RE))
 
#define USART_CLOCK_DISABLE   0x00000000U
 
#define USART_CLOCK_ENABLE   ((uint32_t)USART_CR2_CLKEN)
 
#define USART_POLARITY_LOW   0x00000000U
 
#define USART_POLARITY_HIGH   ((uint32_t)USART_CR2_CPOL)
 
#define USART_PHASE_1EDGE   0x00000000U
 
#define USART_PHASE_2EDGE   ((uint32_t)USART_CR2_CPHA)
 
#define USART_LASTBIT_DISABLE   0x00000000U
 
#define USART_LASTBIT_ENABLE   ((uint32_t)USART_CR2_LBCL)
 
#define USART_NACK_ENABLE   ((uint32_t)USART_CR3_NACK)
 
#define USART_NACK_DISABLE   0x00000000U
 
#define USART_FLAG_TXE   ((uint32_t)USART_SR_TXE)
 
#define USART_FLAG_TC   ((uint32_t)USART_SR_TC)
 
#define USART_FLAG_RXNE   ((uint32_t)USART_SR_RXNE)
 
#define USART_FLAG_IDLE   ((uint32_t)USART_SR_IDLE)
 
#define USART_FLAG_ORE   ((uint32_t)USART_SR_ORE)
 
#define USART_FLAG_NE   ((uint32_t)USART_SR_NE)
 
#define USART_FLAG_FE   ((uint32_t)USART_SR_FE)
 
#define USART_FLAG_PE   ((uint32_t)USART_SR_PE)
 
#define USART_IT_PE   ((uint32_t)(USART_CR1_REG_INDEX << 28U | USART_CR1_PEIE))
 
#define USART_IT_TXE   ((uint32_t)(USART_CR1_REG_INDEX << 28U | USART_CR1_TXEIE))
 
#define USART_IT_TC   ((uint32_t)(USART_CR1_REG_INDEX << 28U | USART_CR1_TCIE))
 
#define USART_IT_RXNE   ((uint32_t)(USART_CR1_REG_INDEX << 28U | USART_CR1_RXNEIE))
 
#define USART_IT_IDLE   ((uint32_t)(USART_CR1_REG_INDEX << 28U | USART_CR1_IDLEIE))
 
#define USART_IT_ERR   ((uint32_t)(USART_CR3_REG_INDEX << 28U | USART_CR3_EIE))
 
#define __HAL_USART_RESET_HANDLE_STATE(__HANDLE__)
 Reset USART handle state.
 
#define __HAL_USART_GET_FLAG(__HANDLE__, __FLAG__)
 Check whether the specified USART flag is set or not.
 
#define __HAL_USART_CLEAR_FLAG(__HANDLE__, __FLAG__)
 Clear the specified USART pending flags.
 
#define __HAL_USART_CLEAR_PEFLAG(__HANDLE__)
 Clear the USART PE pending flag.
 
#define __HAL_USART_CLEAR_FEFLAG(__HANDLE__)
 Clear the USART FE pending flag.
 
#define __HAL_USART_CLEAR_NEFLAG(__HANDLE__)
 Clear the USART NE pending flag.
 
#define __HAL_USART_CLEAR_OREFLAG(__HANDLE__)
 Clear the USART ORE pending flag.
 
#define __HAL_USART_CLEAR_IDLEFLAG(__HANDLE__)
 Clear the USART IDLE pending flag.
 
#define __HAL_USART_ENABLE_IT(__HANDLE__, __INTERRUPT__)
 Enables or disables the specified USART interrupts.
 
#define __HAL_USART_DISABLE_IT(__HANDLE__, __INTERRUPT__)
 
#define __HAL_USART_GET_IT_SOURCE(__HANDLE__, __IT__)
 Checks whether the specified USART interrupt has occurred or not.
 
#define __HAL_USART_ONE_BIT_SAMPLE_ENABLE(__HANDLE__)
 Macro to enable the USART's one bit sample method.
 
#define __HAL_USART_ONE_BIT_SAMPLE_DISABLE(__HANDLE__)
 Macro to disable the USART's one bit sample method.
 
#define __HAL_USART_ENABLE(__HANDLE__)
 Enable USART.
 
#define __HAL_USART_DISABLE(__HANDLE__)
 Disable USART.
 
#define USART_IT_MASK
 USART interruptions flag mask.
 
#define USART_CR1_REG_INDEX   1U
 
#define USART_CR2_REG_INDEX   2U
 
#define USART_CR3_REG_INDEX   3U
 
#define IS_USART_NACK_STATE(NACK)
 
#define IS_USART_LASTBIT(LASTBIT)
 
#define IS_USART_PHASE(CPHA)
 
#define IS_USART_POLARITY(CPOL)
 
#define IS_USART_CLOCK(CLOCK)
 
#define IS_USART_WORD_LENGTH(LENGTH)
 
#define IS_USART_STOPBITS(STOPBITS)
 
#define IS_USART_PARITY(PARITY)
 
#define IS_USART_MODE(MODE)
 
#define IS_USART_BAUDRATE(BAUDRATE)
 
#define USART_DIV(_PCLK_, _BAUD_)
 
#define USART_DIVMANT(_PCLK_, _BAUD_)
 
#define USART_DIVFRAQ(_PCLK_, _BAUD_)
 
#define USART_BRR(_PCLK_, _BAUD_)
 

Typedefs

typedef struct __USART_HandleTypeDef USART_HandleTypeDef
 USART handle Structure definition.
 

Enumerations

enum  HAL_USART_StateTypeDef {
  HAL_USART_STATE_RESET = 0x00U , HAL_USART_STATE_READY = 0x01U , HAL_USART_STATE_BUSY = 0x02U , HAL_USART_STATE_BUSY_TX = 0x12U ,
  HAL_USART_STATE_BUSY_RX = 0x22U , HAL_USART_STATE_BUSY_TX_RX = 0x32U , HAL_USART_STATE_TIMEOUT = 0x03U , HAL_USART_STATE_ERROR = 0x04U
}
 HAL State structures definition. More...
 

Functions

HAL_StatusTypeDef HAL_USART_Init (USART_HandleTypeDef *husart)
 Initialize the USART mode according to the specified parameters in the USART_InitTypeDef and initialize the associated handle.
 
HAL_StatusTypeDef HAL_USART_DeInit (USART_HandleTypeDef *husart)
 DeInitializes the USART peripheral.
 
void HAL_USART_MspInit (USART_HandleTypeDef *husart)
 USART MSP Init.
 
void HAL_USART_MspDeInit (USART_HandleTypeDef *husart)
 USART MSP DeInit.
 
HAL_StatusTypeDef HAL_USART_Transmit (USART_HandleTypeDef *husart, const uint8_t *pTxData, uint16_t Size, uint32_t Timeout)
 Simplex Send an amount of data in blocking mode.
 
HAL_StatusTypeDef HAL_USART_Receive (USART_HandleTypeDef *husart, uint8_t *pRxData, uint16_t Size, uint32_t Timeout)
 Full-Duplex Receive an amount of data in blocking mode.
 
HAL_StatusTypeDef HAL_USART_TransmitReceive (USART_HandleTypeDef *husart, const uint8_t *pTxData, uint8_t *pRxData, uint16_t Size, uint32_t Timeout)
 Full-Duplex Send and Receive an amount of data in full-duplex mode (blocking mode).
 
HAL_StatusTypeDef HAL_USART_Transmit_IT (USART_HandleTypeDef *husart, const uint8_t *pTxData, uint16_t Size)
 Simplex Send an amount of data in non-blocking mode.
 
HAL_StatusTypeDef HAL_USART_Receive_IT (USART_HandleTypeDef *husart, uint8_t *pRxData, uint16_t Size)
 Simplex Receive an amount of data in non-blocking mode.
 
HAL_StatusTypeDef HAL_USART_TransmitReceive_IT (USART_HandleTypeDef *husart, const uint8_t *pTxData, uint8_t *pRxData, uint16_t Size)
 Full-Duplex Send and Receive an amount of data in full-duplex mode (non-blocking).
 
HAL_StatusTypeDef HAL_USART_Transmit_DMA (USART_HandleTypeDef *husart, const uint8_t *pTxData, uint16_t Size)
 Simplex Send an amount of data in DMA mode.
 
HAL_StatusTypeDef HAL_USART_Receive_DMA (USART_HandleTypeDef *husart, uint8_t *pRxData, uint16_t Size)
 Full-Duplex Receive an amount of data in DMA mode.
 
HAL_StatusTypeDef HAL_USART_TransmitReceive_DMA (USART_HandleTypeDef *husart, const uint8_t *pTxData, uint8_t *pRxData, uint16_t Size)
 Full-Duplex Transmit Receive an amount of data in DMA mode.
 
HAL_StatusTypeDef HAL_USART_DMAPause (USART_HandleTypeDef *husart)
 Pauses the DMA Transfer.
 
HAL_StatusTypeDef HAL_USART_DMAResume (USART_HandleTypeDef *husart)
 Resumes the DMA Transfer.
 
HAL_StatusTypeDef HAL_USART_DMAStop (USART_HandleTypeDef *husart)
 Stops the DMA Transfer.
 
HAL_StatusTypeDef HAL_USART_Abort (USART_HandleTypeDef *husart)
 Abort ongoing transfer (blocking mode).
 
HAL_StatusTypeDef HAL_USART_Abort_IT (USART_HandleTypeDef *husart)
 Abort ongoing transfer (Interrupt mode).
 
void HAL_USART_IRQHandler (USART_HandleTypeDef *husart)
 This function handles USART interrupt request.
 
void HAL_USART_TxCpltCallback (USART_HandleTypeDef *husart)
 Tx Transfer completed callbacks.
 
void HAL_USART_TxHalfCpltCallback (USART_HandleTypeDef *husart)
 Tx Half Transfer completed callbacks.
 
void HAL_USART_RxCpltCallback (USART_HandleTypeDef *husart)
 Rx Transfer completed callbacks.
 
void HAL_USART_RxHalfCpltCallback (USART_HandleTypeDef *husart)
 Rx Half Transfer completed callbacks.
 
void HAL_USART_TxRxCpltCallback (USART_HandleTypeDef *husart)
 Tx/Rx Transfers completed callback for the non-blocking process.
 
void HAL_USART_ErrorCallback (USART_HandleTypeDef *husart)
 USART error callbacks.
 
void HAL_USART_AbortCpltCallback (USART_HandleTypeDef *husart)
 USART Abort Complete callback.
 
HAL_USART_StateTypeDef HAL_USART_GetState (const USART_HandleTypeDef *husart)
 Returns the USART state.
 
uint32_t HAL_USART_GetError (const USART_HandleTypeDef *husart)
 Return the USART error code.
 

Detailed Description

Header file of USART HAL module.

Author
MCD Application Team
Attention

Copyright (c) 2016 STMicroelectronics. All rights reserved.

This software is licensed under terms that can be found in the LICENSE file in the root directory of this software component. If no LICENSE file comes with this software, it is provided AS-IS.

Definition in file stm32f4xx_hal_usart.h.