uc-sdk
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
USART_Exported_Functions

Functions

void USART_DeInit (USART_TypeDef *USARTx)
 Deinitializes the USARTx peripheral registers to their default reset values. More...
 
void USART_Init (USART_TypeDef *USARTx, USART_InitTypeDef *USART_InitStruct)
 Initializes the USARTx peripheral according to the specified parameters in the USART_InitStruct . More...
 
void USART_StructInit (USART_InitTypeDef *USART_InitStruct)
 Fills each USART_InitStruct member with its default value. More...
 
void USART_ClockInit (USART_TypeDef *USARTx, USART_ClockInitTypeDef *USART_ClockInitStruct)
 Initializes the USARTx peripheral Clock according to the specified parameters in the USART_ClockInitStruct . More...
 
void USART_ClockStructInit (USART_ClockInitTypeDef *USART_ClockInitStruct)
 Fills each USART_ClockInitStruct member with its default value. More...
 
void USART_Cmd (USART_TypeDef *USARTx, FunctionalState NewState)
 Enables or disables the specified USART peripheral. More...
 
void USART_ITConfig (USART_TypeDef *USARTx, uint16_t USART_IT, FunctionalState NewState)
 Enables or disables the specified USART interrupts. More...
 
void USART_DMACmd (USART_TypeDef *USARTx, uint16_t USART_DMAReq, FunctionalState NewState)
 Enables or disables the USART’s DMA interface. More...
 
void USART_SetAddress (USART_TypeDef *USARTx, uint8_t USART_Address)
 Sets the address of the USART node. More...
 
void USART_WakeUpConfig (USART_TypeDef *USARTx, uint16_t USART_WakeUp)
 Selects the USART WakeUp method. More...
 
void USART_ReceiverWakeUpCmd (USART_TypeDef *USARTx, FunctionalState NewState)
 Determines if the USART is in mute mode or not. More...
 
void USART_LINBreakDetectLengthConfig (USART_TypeDef *USARTx, uint16_t USART_LINBreakDetectLength)
 Sets the USART LIN Break detection length. More...
 
void USART_LINCmd (USART_TypeDef *USARTx, FunctionalState NewState)
 Enables or disables the USART’s LIN mode. More...
 
void USART_SendData (USART_TypeDef *USARTx, uint16_t Data)
 Transmits single data through the USARTx peripheral. More...
 
uint16_t USART_ReceiveData (USART_TypeDef *USARTx)
 Returns the most recent received data by the USARTx peripheral. More...
 
void USART_SendBreak (USART_TypeDef *USARTx)
 Transmits break characters. More...
 
void USART_SetGuardTime (USART_TypeDef *USARTx, uint8_t USART_GuardTime)
 Sets the specified USART guard time. More...
 
void USART_SetPrescaler (USART_TypeDef *USARTx, uint8_t USART_Prescaler)
 Sets the system clock prescaler. More...
 
void USART_SmartCardCmd (USART_TypeDef *USARTx, FunctionalState NewState)
 Enables or disables the USART’s Smart Card mode. More...
 
void USART_SmartCardNACKCmd (USART_TypeDef *USARTx, FunctionalState NewState)
 Enables or disables NACK transmission. More...
 
void USART_HalfDuplexCmd (USART_TypeDef *USARTx, FunctionalState NewState)
 Enables or disables the USART’s Half Duplex communication. More...
 
void USART_OverSampling8Cmd (USART_TypeDef *USARTx, FunctionalState NewState)
 Enables or disables the USART's 8x oversampling mode. More...
 
void USART_OneBitMethodCmd (USART_TypeDef *USARTx, FunctionalState NewState)
 Enables or disables the USART's one bit sampling method. More...
 
void USART_IrDAConfig (USART_TypeDef *USARTx, uint16_t USART_IrDAMode)
 Configures the USART's IrDA interface. More...
 
void USART_IrDACmd (USART_TypeDef *USARTx, FunctionalState NewState)
 Enables or disables the USART's IrDA interface. More...
 
FlagStatus USART_GetFlagStatus (USART_TypeDef *USARTx, uint16_t USART_FLAG)
 Checks whether the specified USART flag is set or not. More...
 
void USART_ClearFlag (USART_TypeDef *USARTx, uint16_t USART_FLAG)
 Clears the USARTx's pending flags. More...
 
ITStatus USART_GetITStatus (USART_TypeDef *USARTx, uint16_t USART_IT)
 Checks whether the specified USART interrupt has occurred or not. More...
 
void USART_ClearITPendingBit (USART_TypeDef *USARTx, uint16_t USART_IT)
 Clears the USARTx's interrupt pending bits. More...
 

Detailed Description

Function Documentation

void USART_ClearFlag ( USART_TypeDef USARTx,
uint16_t  USART_FLAG 
)

Clears the USARTx's pending flags.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
USART_FLAG,:specifies the flag to clear. This parameter can be any combination of the following values:
  • USART_FLAG_CTS: CTS Change flag (not available for UART4 and UART5).
  • USART_FLAG_LBD: LIN Break detection flag.
  • USART_FLAG_TC: Transmission Complete flag.
  • USART_FLAG_RXNE: Receive data register not empty flag.
Note
  • PE (Parity error), FE (Framing error), NE (Noise error), ORE (OverRun error) and IDLE (Idle line detected) flags are cleared by software sequence: a read operation to USART_SR register (USART_GetFlagStatus()) followed by a read operation to USART_DR register (USART_ReceiveData()).
  • RXNE flag can be also cleared by a read to the USART_DR register (USART_ReceiveData()).
  • TC flag can be also cleared by software sequence: a read operation to USART_SR register (USART_GetFlagStatus()) followed by a write operation to USART_DR register (USART_SendData()).
  • TXE flag is cleared only by a write to the USART_DR register (USART_SendData()).
Return values
None

Definition at line 923 of file stm32f10x_usart.c.

void USART_ClearITPendingBit ( USART_TypeDef USARTx,
uint16_t  USART_IT 
)

Clears the USARTx's interrupt pending bits.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
USART_IT,:specifies the interrupt pending bit to clear. This parameter can be one of the following values:
  • USART_IT_CTS: CTS change interrupt (not available for UART4 and UART5)
  • USART_IT_LBD: LIN Break detection interrupt
  • USART_IT_TC: Transmission complete interrupt.
  • USART_IT_RXNE: Receive Data register not empty interrupt.
Note
  • PE (Parity error), FE (Framing error), NE (Noise error), ORE (OverRun error) and IDLE (Idle line detected) pending bits are cleared by software sequence: a read operation to USART_SR register (USART_GetITStatus()) followed by a read operation to USART_DR register (USART_ReceiveData()).
  • RXNE pending bit can be also cleared by a read to the USART_DR register (USART_ReceiveData()).
  • TC pending bit can be also cleared by software sequence: a read operation to USART_SR register (USART_GetITStatus()) followed by a write operation to USART_DR register (USART_SendData()).
  • TXE pending bit is cleared only by a write to the USART_DR register (USART_SendData()).
Return values
None

Definition at line 1030 of file stm32f10x_usart.c.

void USART_ClockInit ( USART_TypeDef USARTx,
USART_ClockInitTypeDef USART_ClockInitStruct 
)

Initializes the USARTx peripheral Clock according to the specified parameters in the USART_ClockInitStruct .

Parameters
USARTx,:where x can be 1, 2, 3 to select the USART peripheral.
USART_ClockInitStruct,:pointer to a USART_ClockInitTypeDef structure that contains the configuration information for the specified USART peripheral.
Note
The Smart Card and Synchronous modes are not available for UART4 and UART5.
Return values
None

Definition at line 302 of file stm32f10x_usart.c.

void USART_ClockStructInit ( USART_ClockInitTypeDef USART_ClockInitStruct)

Fills each USART_ClockInitStruct member with its default value.

Parameters
USART_ClockInitStruct,:pointer to a USART_ClockInitTypeDef structure which will be initialized.
Return values
None

Definition at line 333 of file stm32f10x_usart.c.

void USART_Cmd ( USART_TypeDef USARTx,
FunctionalState  NewState 
)

Enables or disables the specified USART peripheral.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
NewState,:new state of the USARTx peripheral. This parameter can be: ENABLE or DISABLE.
Return values
None

Definition at line 351 of file stm32f10x_usart.c.

void USART_DeInit ( USART_TypeDef USARTx)

Deinitializes the USARTx peripheral registers to their default reset values.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
Return values
None

Definition at line 130 of file stm32f10x_usart.c.

void USART_DMACmd ( USART_TypeDef USARTx,
uint16_t  USART_DMAReq,
FunctionalState  NewState 
)

Enables or disables the USART’s DMA interface.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
USART_DMAReq,:specifies the DMA request. This parameter can be any combination of the following values:
  • USART_DMAReq_Tx: USART DMA transmit request
  • USART_DMAReq_Rx: USART DMA receive request
NewState,:new state of the DMA Request sources. This parameter can be: ENABLE or DISABLE.
Note
The DMA mode is not available for UART5 except in the STM32 High density value line devices(STM32F10X_HD_VL).
Return values
None

Definition at line 448 of file stm32f10x_usart.c.

FlagStatus USART_GetFlagStatus ( USART_TypeDef USARTx,
uint16_t  USART_FLAG 
)

Checks whether the specified USART flag is set or not.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
USART_FLAG,:specifies the flag to check. This parameter can be one of the following values:
  • USART_FLAG_CTS: CTS Change flag (not available for UART4 and UART5)
  • USART_FLAG_LBD: LIN Break detection flag
  • USART_FLAG_TXE: Transmit data register empty flag
  • USART_FLAG_TC: Transmission Complete flag
  • USART_FLAG_RXNE: Receive data register not empty flag
  • USART_FLAG_IDLE: Idle Line detection flag
  • USART_FLAG_ORE: OverRun Error flag
  • USART_FLAG_NE: Noise Error flag
  • USART_FLAG_FE: Framing Error flag
  • USART_FLAG_PE: Parity Error flag
Return values
Thenew state of USART_FLAG (SET or RESET).

Definition at line 874 of file stm32f10x_usart.c.

ITStatus USART_GetITStatus ( USART_TypeDef USARTx,
uint16_t  USART_IT 
)

Checks whether the specified USART interrupt has occurred or not.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
USART_IT,:specifies the USART interrupt source to check. This parameter can be one of the following values:
  • USART_IT_CTS: CTS change interrupt (not available for UART4 and UART5)
  • USART_IT_LBD: LIN Break detection interrupt
  • USART_IT_TXE: Tansmit Data Register empty interrupt
  • USART_IT_TC: Transmission complete interrupt
  • USART_IT_RXNE: Receive Data register not empty interrupt
  • USART_IT_IDLE: Idle line detection interrupt
  • USART_IT_ORE: OverRun Error interrupt
  • USART_IT_NE: Noise Error interrupt
  • USART_IT_FE: Framing Error interrupt
  • USART_IT_PE: Parity Error interrupt
Return values
Thenew state of USART_IT (SET or RESET).

Definition at line 956 of file stm32f10x_usart.c.

void USART_HalfDuplexCmd ( USART_TypeDef USARTx,
FunctionalState  NewState 
)

Enables or disables the USART’s Half Duplex communication.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
NewState,:new state of the USART Communication. This parameter can be: ENABLE or DISABLE.
Return values
None

Definition at line 731 of file stm32f10x_usart.c.

void USART_Init ( USART_TypeDef USARTx,
USART_InitTypeDef USART_InitStruct 
)

Initializes the USARTx peripheral according to the specified parameters in the USART_InitStruct .

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
USART_InitStruct,:pointer to a USART_InitTypeDef structure that contains the configuration information for the specified USART peripheral.
Return values
None

Definition at line 176 of file stm32f10x_usart.c.

void USART_IrDACmd ( USART_TypeDef USARTx,
FunctionalState  NewState 
)

Enables or disables the USART's IrDA interface.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
NewState,:new state of the IrDA mode. This parameter can be: ENABLE or DISABLE.
Return values
None

Definition at line 837 of file stm32f10x_usart.c.

void USART_IrDAConfig ( USART_TypeDef USARTx,
uint16_t  USART_IrDAMode 
)

Configures the USART's IrDA interface.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
USART_IrDAMode,:specifies the IrDA mode. This parameter can be one of the following values:
  • USART_IrDAMode_LowPower
  • USART_IrDAMode_Normal
Return values
None

Definition at line 818 of file stm32f10x_usart.c.

void USART_ITConfig ( USART_TypeDef USARTx,
uint16_t  USART_IT,
FunctionalState  NewState 
)

Enables or disables the specified USART interrupts.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
USART_IT,:specifies the USART interrupt sources to be enabled or disabled. This parameter can be one of the following values:
  • USART_IT_CTS: CTS change interrupt (not available for UART4 and UART5)
  • USART_IT_LBD: LIN Break detection interrupt
  • USART_IT_TXE: Transmit Data Register empty interrupt
  • USART_IT_TC: Transmission complete interrupt
  • USART_IT_RXNE: Receive Data register not empty interrupt
  • USART_IT_IDLE: Idle line detection interrupt
  • USART_IT_PE: Parity Error interrupt
  • USART_IT_ERR: Error interrupt(Frame error, noise error, overrun error)
NewState,:new state of the specified USARTx interrupts. This parameter can be: ENABLE or DISABLE.
Return values
None

Definition at line 388 of file stm32f10x_usart.c.

void USART_LINBreakDetectLengthConfig ( USART_TypeDef USARTx,
uint16_t  USART_LINBreakDetectLength 
)

Sets the USART LIN Break detection length.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
USART_LINBreakDetectLength,:specifies the LIN break detection length. This parameter can be one of the following values:
  • USART_LINBreakDetectLength_10b: 10-bit break detection
  • USART_LINBreakDetectLength_11b: 11-bit break detection
Return values
None

Definition at line 547 of file stm32f10x_usart.c.

void USART_LINCmd ( USART_TypeDef USARTx,
FunctionalState  NewState 
)

Enables or disables the USART’s LIN mode.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
NewState,:new state of the USART LIN mode. This parameter can be: ENABLE or DISABLE.
Return values
None

Definition at line 566 of file stm32f10x_usart.c.

void USART_OneBitMethodCmd ( USART_TypeDef USARTx,
FunctionalState  NewState 
)

Enables or disables the USART's one bit sampling method.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
NewState,:new state of the USART one bit sampling method. This parameter can be: ENABLE or DISABLE.
Return values
None

Definition at line 789 of file stm32f10x_usart.c.

void USART_OverSampling8Cmd ( USART_TypeDef USARTx,
FunctionalState  NewState 
)

Enables or disables the USART's 8x oversampling mode.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
NewState,:new state of the USART one bit sampling method. This parameter can be: ENABLE or DISABLE.
Note
This function has to be called before calling USART_Init() function in order to have correct baudrate Divider value.
Return values
None

Definition at line 762 of file stm32f10x_usart.c.

uint16_t USART_ReceiveData ( USART_TypeDef USARTx)

Returns the most recent received data by the USARTx peripheral.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
Return values
Thereceived data.

Definition at line 609 of file stm32f10x_usart.c.

void USART_ReceiverWakeUpCmd ( USART_TypeDef USARTx,
FunctionalState  NewState 
)

Determines if the USART is in mute mode or not.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
NewState,:new state of the USART mute mode. This parameter can be: ENABLE or DISABLE.
Return values
None

Definition at line 518 of file stm32f10x_usart.c.

void USART_SendBreak ( USART_TypeDef USARTx)

Transmits break characters.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
Return values
None

Definition at line 625 of file stm32f10x_usart.c.

void USART_SendData ( USART_TypeDef USARTx,
uint16_t  Data 
)

Transmits single data through the USARTx peripheral.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
Data,:the data to transmit.
Return values
None

Definition at line 592 of file stm32f10x_usart.c.

void USART_SetAddress ( USART_TypeDef USARTx,
uint8_t  USART_Address 
)

Sets the address of the USART node.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
USART_Address,:Indicates the address of the USART node.
Return values
None

Definition at line 476 of file stm32f10x_usart.c.

void USART_SetGuardTime ( USART_TypeDef USARTx,
uint8_t  USART_GuardTime 
)

Sets the specified USART guard time.

Parameters
USARTx,:where x can be 1, 2 or 3 to select the USART peripheral.
USART_GuardTime,:specifies the guard time.
Note
The guard time bits are not available for UART4 and UART5.
Return values
None

Definition at line 641 of file stm32f10x_usart.c.

void USART_SetPrescaler ( USART_TypeDef USARTx,
uint8_t  USART_Prescaler 
)

Sets the system clock prescaler.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
USART_Prescaler,:specifies the prescaler clock.
Note
The function is used for IrDA mode with UART4 and UART5.
Return values
None

Definition at line 661 of file stm32f10x_usart.c.

void USART_SmartCardCmd ( USART_TypeDef USARTx,
FunctionalState  NewState 
)

Enables or disables the USART’s Smart Card mode.

Parameters
USARTx,:where x can be 1, 2 or 3 to select the USART peripheral.
NewState,:new state of the Smart Card mode. This parameter can be: ENABLE or DISABLE.
Note
The Smart Card mode is not available for UART4 and UART5.
Return values
None

Definition at line 680 of file stm32f10x_usart.c.

void USART_SmartCardNACKCmd ( USART_TypeDef USARTx,
FunctionalState  NewState 
)

Enables or disables NACK transmission.

Parameters
USARTx,:where x can be 1, 2 or 3 to select the USART peripheral.
NewState,:new state of the NACK transmission. This parameter can be: ENABLE or DISABLE.
Note
The Smart Card mode is not available for UART4 and UART5.
Return values
None

Definition at line 705 of file stm32f10x_usart.c.

void USART_StructInit ( USART_InitTypeDef USART_InitStruct)

Fills each USART_InitStruct member with its default value.

Parameters
USART_InitStruct,:pointer to a USART_InitTypeDef structure which will be initialized.
Return values
None

Definition at line 281 of file stm32f10x_usart.c.

void USART_WakeUpConfig ( USART_TypeDef USARTx,
uint16_t  USART_WakeUp 
)

Selects the USART WakeUp method.

Parameters
USARTx,:Select the USART or the UART peripheral. This parameter can be one of the following values: USART1, USART2, USART3, UART4 or UART5.
USART_WakeUp,:specifies the USART wakeup method. This parameter can be one of the following values:
  • USART_WakeUp_IdleLine: WakeUp by an idle line detection
  • USART_WakeUp_AddressMark: WakeUp by an address mark
Return values
None

Definition at line 499 of file stm32f10x_usart.c.