STM32F103xB HAL User Manual
Data Structures | Defines | Typedefs | Enumerations | Functions
stm32f1xx_hal_usart.h File Reference

Header file of USART HAL module. More...

#include "stm32f1xx_hal_def.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...

Defines

#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 HAL_USART_ERROR_INVALID_CALLBACK   0x00000020U
#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__)   (((__HANDLE__)->Instance->SR & (__FLAG__)) == (__FLAG__))
 Check whether the specified USART flag is set or not.
#define __HAL_USART_CLEAR_FLAG(__HANDLE__, __FLAG__)   ((__HANDLE__)->Instance->SR = ~(__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__)   __HAL_USART_CLEAR_PEFLAG(__HANDLE__)
 Clear the USART FE pending flag.
#define __HAL_USART_CLEAR_NEFLAG(__HANDLE__)   __HAL_USART_CLEAR_PEFLAG(__HANDLE__)
 Clear the USART NE pending flag.
#define __HAL_USART_CLEAR_OREFLAG(__HANDLE__)   __HAL_USART_CLEAR_PEFLAG(__HANDLE__)
 Clear the USART ORE pending flag.
#define __HAL_USART_CLEAR_IDLEFLAG(__HANDLE__)   __HAL_USART_CLEAR_PEFLAG(__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__)   ((__HANDLE__)->Instance->CR3 |= USART_CR3_ONEBIT)
 Macro to enable the USART's one bit sample method.
#define __HAL_USART_ONE_BIT_SAMPLE_DISABLE(__HANDLE__)   ((__HANDLE__)->Instance->CR3 &= (uint16_t)~((uint16_t)USART_CR3_ONEBIT))
 Macro to disable the USART's one bit sample method.
#define __HAL_USART_ENABLE(__HANDLE__)   ((__HANDLE__)->Instance->CR1 |= USART_CR1_UE)
 Enable USART.
#define __HAL_USART_DISABLE(__HANDLE__)   ((__HANDLE__)->Instance->CR1 &= ~USART_CR1_UE)
 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)   ((((MODE) & (~((uint32_t)USART_MODE_TX_RX))) == 0x00U) && ((MODE) != 0x00U))
#define IS_USART_BAUDRATE(BAUDRATE)   ((BAUDRATE) <= 4500000U)
#define USART_DIV(_PCLK_, _BAUD_)   (((_PCLK_)*25U)/(4U*(_BAUD_)))
#define USART_DIVMANT(_PCLK_, _BAUD_)   (USART_DIV((_PCLK_), (_BAUD_))/100U)
#define USART_DIVFRAQ(_PCLK_, _BAUD_)   ((((USART_DIV((_PCLK_), (_BAUD_)) - (USART_DIVMANT((_PCLK_), (_BAUD_)) * 100U)) * 16U) + 50U) / 100U)
#define USART_BRR(_PCLK_, _BAUD_)

Typedefs

typedef struct
__USART_HandleTypeDef 
USART_HandleTypeDef
 USART handle Structure definition.
typedef void(* pUSART_CallbackTypeDef )(USART_HandleTypeDef *husart)
 HAL USART Callback pointer 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...
enum  HAL_USART_CallbackIDTypeDef {
  HAL_USART_TX_HALFCOMPLETE_CB_ID = 0x00U, HAL_USART_TX_COMPLETE_CB_ID = 0x01U, HAL_USART_RX_HALFCOMPLETE_CB_ID = 0x02U, HAL_USART_RX_COMPLETE_CB_ID = 0x03U,
  HAL_USART_TX_RX_COMPLETE_CB_ID = 0x04U, HAL_USART_ERROR_CB_ID = 0x05U, HAL_USART_ABORT_COMPLETE_CB_ID = 0x06U, HAL_USART_MSPINIT_CB_ID = 0x07U,
  HAL_USART_MSPDEINIT_CB_ID = 0x08U
}
 HAL USART Callback ID enumeration 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.
__weak void HAL_USART_MspInit (USART_HandleTypeDef *husart)
 USART MSP Init.
__weak void HAL_USART_MspDeInit (USART_HandleTypeDef *husart)
 USART MSP DeInit.
HAL_StatusTypeDef HAL_USART_RegisterCallback (USART_HandleTypeDef *husart, HAL_USART_CallbackIDTypeDef CallbackID, pUSART_CallbackTypeDef pCallback)
 Register a User USART Callback To be used instead of the weak predefined callback.
HAL_StatusTypeDef HAL_USART_UnRegisterCallback (USART_HandleTypeDef *husart, HAL_USART_CallbackIDTypeDef CallbackID)
 Unregister an USART Callback USART callaback is redirected to the weak predefined callback.
HAL_StatusTypeDef HAL_USART_Transmit (USART_HandleTypeDef *husart, 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, 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, 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, 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, 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, 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.
__weak void HAL_USART_TxCpltCallback (USART_HandleTypeDef *husart)
 Tx Transfer completed callbacks.
__weak void HAL_USART_TxHalfCpltCallback (USART_HandleTypeDef *husart)
 Tx Half Transfer completed callbacks.
__weak void HAL_USART_RxCpltCallback (USART_HandleTypeDef *husart)
 Rx Transfer completed callbacks.
__weak void HAL_USART_RxHalfCpltCallback (USART_HandleTypeDef *husart)
 Rx Half Transfer completed callbacks.
__weak void HAL_USART_TxRxCpltCallback (USART_HandleTypeDef *husart)
 Tx/Rx Transfers completed callback for the non-blocking process.
__weak void HAL_USART_ErrorCallback (USART_HandleTypeDef *husart)
 USART error callbacks.
__weak void HAL_USART_AbortCpltCallback (USART_HandleTypeDef *husart)
 USART Abort Complete callback.
HAL_USART_StateTypeDef HAL_USART_GetState (USART_HandleTypeDef *husart)
 Returns the USART state.
uint32_t HAL_USART_GetError (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 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_usart.h.