Functions
Configuration functions
Peripheral Driver » LL Driver » UART » Functions

## Functions
__STATIC_INLINE void | ll_uart_set_baud_rate (uart_regs_t *UARTx, uint32_t peripheral_clock, uint32_t baud_rate)
| Configure UART DLF and DLH register for achieving expected Baud Rate value. More...
__STATIC_INLINE uint32_t | ll_uart_get_baud_rate (uart_regs_t *UARTx, uint32_t peripheral_clock)
| Return current Baud Rate value. More...
__STATIC_INLINE void | ll_uart_set_data_bits_length (uart_regs_t *UARTx, uint32_t data_bits)
| Set the length of the data bits. More...
__STATIC_INLINE uint32_t | ll_uart_get_data_bits_length (uart_regs_t *UARTx)
| Return the length of the data bits. More...
__STATIC_INLINE void | ll_uart_set_stop_bits_length (uart_regs_t *UARTx, uint32_t stop_bits)
| Set the length of the stop bits. More...
__STATIC_INLINE uint32_t | ll_uart_get_stop_bits_length (uart_regs_t *UARTx)
| Retrieve the length of the stop bits. More...
__STATIC_INLINE void | ll_uart_set_parity (uart_regs_t *UARTx, uint32_t parity)
| Configure Parity. More...
__STATIC_INLINE uint32_t | ll_uart_get_parity (uart_regs_t *UARTx)
| Return Parity configuration. More...
__STATIC_INLINE void | ll_uart_config_character (uart_regs_t *UARTx, uint32_t data_bits, uint32_t parity, uint32_t stop_bits)
| Configure Character frame format (Datawidth, Parity control, Stop Bits) More...
__STATIC_INLINE void | ll_uart_set_rts_pin_state (uart_regs_t *UARTx, uint32_t pin_state)
| Set UART RTS pin state to Active/Inactive. More...
__STATIC_INLINE uint32_t | ll_uart_get_rts_pin_state (uart_regs_t *UARTx)
| Get UART RTS pin state. More...
__STATIC_INLINE uint32_t | ll_uart_get_cts_pin_state (uart_regs_t *UARTx)
| Get UART CTS pin state. More...
__STATIC_INLINE uint32_t | ll_uart_is_changed_cts (uart_regs_t *UARTx)
| Indicate if CTS is changed since the last time the MSR was read. More...
__STATIC_INLINE void | ll_uart_enable_sir (uart_regs_t *UARTx)
| Configure SIR mode enable. More...
__STATIC_INLINE void | ll_uart_disable_sir (uart_regs_t *UARTx)
| Configure SIR mode disable. More...
__STATIC_INLINE uint32_t | ll_uart_is_enabled_sir (uart_regs_t *UARTx)
| Return SIR mode state. More...
__STATIC_INLINE void | ll_uart_set_hw_flow_ctrl (uart_regs_t *UARTx, uint32_t hw_flow_ctrl)
| Configure HW Flow Control mode (None or Both CTS and RTS) More...
__STATIC_INLINE uint32_t | ll_uart_get_hw_flow_ctrl (uart_regs_t *UARTx)
| Return HW Flow Control configuration (None or Both CTS and RTS) More...
__STATIC_INLINE void | ll_uart_enable_break_sending (uart_regs_t *UARTx)
| Enable Break sending. More...
__STATIC_INLINE void | ll_uart_disable_break_sending (uart_regs_t *UARTx)
| Disable Break sending. More...
__STATIC_INLINE uint32_t | ll_uart_is_enabled_break_sending (uart_regs_t *UARTx)
| Indicate if Break sending is enabled. More...
__STATIC_INLINE void | ll_uart_enable_fifo (uart_regs_t *UARTx)
| Enable TX FIFO and RX FIFO. More...
__STATIC_INLINE void | ll_uart_disable_fifo (uart_regs_t *UARTx)
| Disable TX FIFO and RX FIFO. More...
__STATIC_INLINE uint32_t | ll_uart_is_enabled_fifo (uart_regs_t *UARTx)
| Indicate if TX FIFO and RX FIFO is enabled. More...
__STATIC_INLINE void | ll_uart_set_tx_fifo_threshold (uart_regs_t *UARTx, uint32_t threshold)
| Set threshold of TX FIFO that triggers an THRE interrupt. More...
__STATIC_INLINE uint32_t | ll_uart_get_tx_fifo_threshold (uart_regs_t *UARTx)
| Get threshold of TX FIFO that triggers an THRE interrupt. More...
__STATIC_INLINE void | ll_uart_set_rx_fifo_threshold (uart_regs_t *UARTx, uint32_t threshold)
| Set threshold of RX FIFO that triggers an RDA interrupt. More...
__STATIC_INLINE uint32_t | ll_uart_get_rx_fifo_threshold (uart_regs_t *UARTx)
| Get threshold of RX FIFO that triggers an RDA interrupt. More...
__STATIC_INLINE uint32_t | ll_uart_get_tx_fifo_level (uart_regs_t *UARTx)
| Get FIFO Transmission Level. More...
__STATIC_INLINE uint32_t | ll_uart_get_rx_fifo_level (uart_regs_t *UARTx)
| Get FIFO reception Level. More...
__STATIC_INLINE void | ll_uart_flush_rx_fifo (uart_regs_t *UARTx)
| Flush Receive FIFO. More...
__STATIC_INLINE void | ll_uart_flush_tx_fifo (uart_regs_t *UARTx)
| Flush Transmit FIFO. More...
__STATIC_INLINE void | ll_uart_reset (uart_regs_t *UARTx)
| Reset UART. More...

## Detailed Description

## Function Documentation

## ◆ ll_uart_config_character()

__STATIC_INLINE void ll_uart_config_character | ( | uart_regs_t * | UARTx,
|  | uint32_t | data_bits,
|  | uint32_t | parity,
|  | uint32_t | stop_bits
| ) |  |

Configure Character frame format (Datawidth, Parity control, Stop Bits)

Note
  This function call is equivalent to the following function call sequence :
  - Data Width configuration using ll_uart_set_data_bits_length() function
  - Parity Control and mode configuration using ll_uart_set_parity() function
  - Stop bits configuration using ll_uart_set_stop_bits_length() function

Register|BitsName --------|-------- LCR | PS LCR | EPS LCR | PEN LCR | STOP LCR | DLS

Parameters

  UARTx | UART instance
  data_bits | This parameter can be one of the following values: LL_UART_DATABITS_5B LL_UART_DATABITS_6B LL_UART_DATABITS_7B LL_UART_DATABITS_8B
  parity | This parameter can be one of the following values: LL_UART_PARITY_NONE LL_UART_PARITY_EVEN LL_UART_PARITY_ODD LL_UART_PARITY_SP0 LL_UART_PARITY_SP1
  stop_bits | This parameter can be one of the following values: LL_UART_STOPBITS_1 LL_UART_STOPBITS_1_5 (*) LL_UART_STOPBITS_2 (*) (*) STOPBITS_1_5 only valid when DataBits = 5 (*) STOPBITS_2 is invalid when DataBits = 5

Return values

  None |

Definition at line 524 of file gr533x_ll_uart.h.

## ◆ ll_uart_disable_break_sending()

__STATIC_INLINE void ll_uart_disable_break_sending | ( | uart_regs_t * | UARTx | ) |

Disable Break sending.

Register|BitsName --------|-------- LCR | BC

Parameters

  UARTx | UART instance

Return values

  None |

Definition at line 715 of file gr533x_ll_uart.h.

## ◆ ll_uart_disable_fifo()

__STATIC_INLINE void ll_uart_disable_fifo | ( | uart_regs_t * | UARTx | ) |

Disable TX FIFO and RX FIFO.

Register|BitsName --------|-------- SFE | SFE

Parameters

  UARTx | UART instance

Return values

  None |

Definition at line 760 of file gr533x_ll_uart.h.

## ◆ ll_uart_disable_sir()

__STATIC_INLINE void ll_uart_disable_sir | ( | uart_regs_t * | UARTx | ) |

Configure SIR mode disable.

Note
  This function is used to Disable UART SIR mode.

Register|BitsName --------|-------- MCR | SIRE

Parameters

  UARTx | UART instance

Return values

  None |

Definition at line 631 of file gr533x_ll_uart.h.

## ◆ ll_uart_enable_break_sending()

__STATIC_INLINE void ll_uart_enable_break_sending | ( | uart_regs_t * | UARTx | ) |

Enable Break sending.

Register|BitsName --------|-------- LCR | BC

Parameters

  UARTx | UART instance

Return values

  None |

Definition at line 700 of file gr533x_ll_uart.h.

## ◆ ll_uart_enable_fifo()

__STATIC_INLINE void ll_uart_enable_fifo | ( | uart_regs_t * | UARTx | ) |

Enable TX FIFO and RX FIFO.

Register|BitsName --------|-------- SFE | SFE

Parameters

  UARTx | UART instance

Return values

  None |

Definition at line 745 of file gr533x_ll_uart.h.

## ◆ ll_uart_enable_sir()

__STATIC_INLINE void ll_uart_enable_sir | ( | uart_regs_t * | UARTx | ) |

Configure SIR mode enable.

Note
  This function is used to Enable UART SIR mode.

Register|BitsName --------|-------- MCR | SIRE

Parameters

  UARTx | UART instance

Return values

  None |

Definition at line 615 of file gr533x_ll_uart.h.

## ◆ ll_uart_flush_rx_fifo()

__STATIC_INLINE void ll_uart_flush_rx_fifo | ( | uart_regs_t * | UARTx | ) |

Flush Receive FIFO.

Register|BitsName --------|-------- SRR | RFR

Parameters

  UARTx | UART instance

Return values

  None |

Definition at line 898 of file gr533x_ll_uart.h.

## ◆ ll_uart_flush_tx_fifo()

__STATIC_INLINE void ll_uart_flush_tx_fifo | ( | uart_regs_t * | UARTx | ) |

Flush Transmit FIFO.

Register|BitsName --------|-------- SRR | XFR

Parameters

  UARTx | UART instance

Return values

  None |

Definition at line 913 of file gr533x_ll_uart.h.

## ◆ ll_uart_get_baud_rate()

__STATIC_INLINE uint32_t ll_uart_get_baud_rate | ( | uart_regs_t * | UARTx,
|  | uint32_t | peripheral_clock
| ) |  |

Return current Baud Rate value.

Note
  In case of non-initialized or invalid value stored in DLL,DLH and DLF register, the value 0 will be returned..

Register|BitsName --------|-------- DLL | DLL DLH | DLH

Parameters

  UARTx | UART instance
  peripheral_clock | Peripheral Clock

Return values

  Baud | Rate

Definition at line 343 of file gr533x_ll_uart.h.

## ◆ ll_uart_get_cts_pin_state()

__STATIC_INLINE uint32_t ll_uart_get_cts_pin_state | ( | uart_regs_t * | UARTx | ) |

Get UART CTS pin state.

Note
  The CTS pin is ACTIVE when logic level is low, and INACTIVE when logic level is high.

Register|BitsName --------|-------- MSR | CTS

Parameters

  UARTx | UART instance

Return values

  Returned | value can be one of the following values: LL_UART_CTSPIN_STATE_ACTIVE LL_UART_CTSPIN_STATE_INACTIVE

Definition at line 584 of file gr533x_ll_uart.h.

## ◆ ll_uart_get_data_bits_length()

__STATIC_INLINE uint32_t ll_uart_get_data_bits_length | ( | uart_regs_t * | UARTx | ) |

Return the length of the data bits.

Register|BitsName --------|-------- LCR | DLS

Parameters

  UARTx | UART instance

Return values

  Returned | value can be one of the following values: LL_UART_DATABITS_5B LL_UART_DATABITS_6B LL_UART_DATABITS_7B LL_UART_DATABITS_8B

Definition at line 395 of file gr533x_ll_uart.h.

## ◆ ll_uart_get_hw_flow_ctrl()

__STATIC_INLINE uint32_t ll_uart_get_hw_flow_ctrl | ( | uart_regs_t * | UARTx | ) |

Return HW Flow Control configuration (None or Both CTS and RTS)

Register|BitsName --------|-------- MCR | AFCE MCR | RTS

Parameters

  UARTx | UART instance

Return values

  Returned | value can be one of the following values: LL_UART_HWCONTROL_NONE LL_UART_HWCONTROL_RTS_CTS

Definition at line 685 of file gr533x_ll_uart.h.

## ◆ ll_uart_get_parity()

__STATIC_INLINE uint32_t ll_uart_get_parity | ( | uart_regs_t * | UARTx | ) |

Return Parity configuration.

Register|BitsName --------|-------- LCR | SP LCR | EPS LCR | PEN

Parameters

  UARTx | UART instance

Return values

  Returned | value can be one of the following values: LL_UART_PARITY_NONE LL_UART_PARITY_EVEN LL_UART_PARITY_ODD LL_UART_PARITY_SP0 LL_UART_PARITY_SP1

Definition at line 483 of file gr533x_ll_uart.h.

## ◆ ll_uart_get_rts_pin_state()

__STATIC_INLINE uint32_t ll_uart_get_rts_pin_state | ( | uart_regs_t * | UARTx | ) |

Get UART RTS pin state.

Note
  The RTS pin is ACTIVE when logic level is low, and INACTIVE when logic level is high.

Register|BitsName --------|-------- SRTS | SRTS MCR | RTS

Parameters

  UARTx | UART instance

Return values

  Returned | value can be one of the following values: LL_UART_RTSPIN_STATE_ACTIVE LL_UART_RTSPIN_STATE_INACTIVE

Definition at line 566 of file gr533x_ll_uart.h.

## ◆ ll_uart_get_rx_fifo_level()

__STATIC_INLINE uint32_t ll_uart_get_rx_fifo_level | ( | uart_regs_t * | UARTx | ) |

Get FIFO reception Level.

Register|BitsName --------|-------- RFL | RFL

Parameters

  UARTx | UART instance

Return values

  Returned | value can be one of the following values:

Definition at line 883 of file gr533x_ll_uart.h.

## ◆ ll_uart_get_rx_fifo_threshold()

__STATIC_INLINE uint32_t ll_uart_get_rx_fifo_threshold | ( | uart_regs_t * | UARTx | ) |

Get threshold of RX FIFO that triggers an RDA interrupt.

Register|BitsName --------|-------- SRT | SRT

Parameters

  UARTx | UART instance

Return values

  Returned | value can be one of the following values: LL_UART_RX_FIFO_TH_CHAR_1 LL_UART_RX_FIFO_TH_QUARTER_FULL LL_UART_RX_FIFO_TH_HALF_FULL LL_UART_RX_FIFO_TH_FULL_2

Definition at line 853 of file gr533x_ll_uart.h.

## ◆ ll_uart_get_stop_bits_length()

__STATIC_INLINE uint32_t ll_uart_get_stop_bits_length | ( | uart_regs_t * | UARTx | ) |

Retrieve the length of the stop bits.

Register|BitsName --------|-------- LCR | STOP

Parameters

  UARTx | UART instance

Return values

  Returned | value can be one of the following values: LL_UART_STOPBITS_1 LL_UART_STOPBITS_1_5 LL_UART_STOPBITS_2

Definition at line 435 of file gr533x_ll_uart.h.

## ◆ ll_uart_get_tx_fifo_level()

__STATIC_INLINE uint32_t ll_uart_get_tx_fifo_level | ( | uart_regs_t * | UARTx | ) |

Get FIFO Transmission Level.

Register|BitsName --------|-------- TFL | TFL

Parameters

  UARTx | UART instance

Return values

  Returned | value can be one of the following values:

Definition at line 868 of file gr533x_ll_uart.h.

## ◆ ll_uart_get_tx_fifo_threshold()

__STATIC_INLINE uint32_t ll_uart_get_tx_fifo_threshold | ( | uart_regs_t * | UARTx | ) |

Get threshold of TX FIFO that triggers an THRE interrupt.

Register|BitsName --------|-------- STET | STET

Parameters

  UARTx | UART instance

Return values

  Returned | value can be one of the following values: LL_UART_TX_FIFO_TH_EMPTY LL_UART_TX_FIFO_TH_CHAR_2 LL_UART_TX_FIFO_TH_QUARTER_FULL LL_UART_TX_FIFO_TH_HALF_FULL

Definition at line 814 of file gr533x_ll_uart.h.

## ◆ ll_uart_is_changed_cts()

__STATIC_INLINE uint32_t ll_uart_is_changed_cts | ( | uart_regs_t * | UARTx | ) |

Indicate if CTS is changed since the last time the MSR was read.

Register|BitsName --------|-------- MSR | DCTS

Parameters

  UARTx | UART instance

Return values

  State | of bit (1 or 0).

Definition at line 599 of file gr533x_ll_uart.h.

## ◆ ll_uart_is_enabled_break_sending()

__STATIC_INLINE uint32_t ll_uart_is_enabled_break_sending | ( | uart_regs_t * | UARTx | ) |

Indicate if Break sending is enabled.

Register|BitsName --------|-------- LCR | BC

Parameters

  UARTx | UART instance

Return values

  State | of bit (1 or 0).

Definition at line 730 of file gr533x_ll_uart.h.

## ◆ ll_uart_is_enabled_fifo()

__STATIC_INLINE uint32_t ll_uart_is_enabled_fifo | ( | uart_regs_t * | UARTx | ) |

Indicate if TX FIFO and RX FIFO is enabled.

Register|BitsName --------|-------- SFE | SFE

Parameters

  UARTx | UART instance

Return values

  State | of bit (1 or 0).

Definition at line 775 of file gr533x_ll_uart.h.

## ◆ ll_uart_is_enabled_sir()

__STATIC_INLINE uint32_t ll_uart_is_enabled_sir | ( | uart_regs_t * | UARTx | ) |

Return SIR mode state.

Note
  This function is used to return UART SIR mode state.

Register|BitsName --------|-------- MCR | SIRE

Parameters

  UARTx | UART instance

Return values

  State | of bit (1 or 0).

Definition at line 647 of file gr533x_ll_uart.h.

## ◆ ll_uart_reset()

__STATIC_INLINE void ll_uart_reset | ( | uart_regs_t * | UARTx | ) |

Reset UART.

Note
  This function asynchronously resets the DW_apb_uart and synchronously removes the reset assertion. For a two clock implementation, both pclk and sclk domains will be reset.

Register|BitsName --------|-------- SRR | UR

Parameters

  UARTx | UART instance

Return values

  None |

Definition at line 931 of file gr533x_ll_uart.h.

## ◆ ll_uart_set_baud_rate()

__STATIC_INLINE void ll_uart_set_baud_rate | ( | uart_regs_t * | UARTx,
|  | uint32_t | peripheral_clock,
|  | uint32_t | baud_rate
| ) |  |

Configure UART DLF and DLH register for achieving expected Baud Rate value.

Note
  Peripheral clock and Baud rate values provided as function parameters should be valid (Baud rate value != 0)

Register|BitsName --------|-------- DLL | DLL DLH | DLH

Parameters

  UARTx | UART instance
  peripheral_clock | Peripheral Clock
  baud_rate | Baud Rate

Return values

  None |

Definition at line 319 of file gr533x_ll_uart.h.

References __LL_UART_DIV, and __LL_UART_DLF.

## ◆ ll_uart_set_data_bits_length()

__STATIC_INLINE void ll_uart_set_data_bits_length | ( | uart_regs_t * | UARTx,
|  | uint32_t | data_bits
| ) |  |

Set the length of the data bits.

Register|BitsName --------|-------- LCR | DLS

Parameters

  UARTx | UART instance
  data_bits | This parameter can be one of the following values: LL_UART_DATABITS_5B LL_UART_DATABITS_6B LL_UART_DATABITS_7B LL_UART_DATABITS_8B

Return values

  None |

Definition at line 376 of file gr533x_ll_uart.h.

## ◆ ll_uart_set_hw_flow_ctrl()

__STATIC_INLINE void ll_uart_set_hw_flow_ctrl | ( | uart_regs_t * | UARTx,
|  | uint32_t | hw_flow_ctrl
| ) |  |

Configure HW Flow Control mode (None or Both CTS and RTS)

Note
  This function is used to Enable/Disable UART Auto Flow Control.

Register|BitsName --------|-------- MCR | AFCE MCR | RTS

Parameters

  UARTx | UART instance
  hw_flow_ctrl | This parameter can be one of the following values: LL_UART_HWCONTROL_NONE LL_UART_HWCONTROL_RTS_CTS

Return values

  None |

Definition at line 667 of file gr533x_ll_uart.h.

## ◆ ll_uart_set_parity()

__STATIC_INLINE void ll_uart_set_parity | ( | uart_regs_t * | UARTx,
|  | uint32_t | parity
| ) |  |

Configure Parity.

Note
  This function selects if hardware parity control (generation and detection) is enabled or disabled. When the parity control is enabled (Odd,Even,0,1), computed parity bit is inserted at the MSB position and parity is checked on the received data.

Register|BitsName --------|-------- LCR | SP LCR | EPS LCR | PEN

Parameters

  UARTx | UART instance
  parity | This parameter can be one of the following values: LL_UART_PARITY_NONE LL_UART_PARITY_EVEN LL_UART_PARITY_ODD LL_UART_PARITY_SP0 LL_UART_PARITY_SP1

Return values

  None |

Definition at line 461 of file gr533x_ll_uart.h.

## ◆ ll_uart_set_rts_pin_state()

__STATIC_INLINE void ll_uart_set_rts_pin_state | ( | uart_regs_t * | UARTx,
|  | uint32_t | pin_state
| ) |  |

Set UART RTS pin state to Active/Inactive.

Note
  The RTS pin is ACTIVE when logic level is low, and INACTIVE when logic level is high.

Register|BitsName --------|-------- SRTS | SRTS MCR | RTS

Parameters

  UARTx | UART instance
  pin_state | This parameter can be one of the following values: LL_UART_RTSPIN_STATE_ACTIVE LL_UART_RTSPIN_STATE_INACTIVE

Return values

  None |

Definition at line 547 of file gr533x_ll_uart.h.

## ◆ ll_uart_set_rx_fifo_threshold()

__STATIC_INLINE void ll_uart_set_rx_fifo_threshold | ( | uart_regs_t * | UARTx,
|  | uint32_t | threshold
| ) |  |

Set threshold of RX FIFO that triggers an RDA interrupt.

Register|BitsName --------|-------- SRT | SRT

Parameters

  UARTx | UART instance
  threshold | This parameter can be one of the following values: LL_UART_RX_FIFO_TH_CHAR_1 LL_UART_RX_FIFO_TH_QUARTER_FULL LL_UART_RX_FIFO_TH_HALF_FULL LL_UART_RX_FIFO_TH_FULL_2

Return values

  None |

Definition at line 834 of file gr533x_ll_uart.h.

## ◆ ll_uart_set_stop_bits_length()

__STATIC_INLINE void ll_uart_set_stop_bits_length | ( | uart_regs_t * | UARTx,
|  | uint32_t | stop_bits
| ) |  |

Set the length of the stop bits.

Register|BitsName --------|-------- LCR | STOP

Parameters

  UARTx | UART instance
  stop_bits | This parameter can be one of the following values: LL_UART_STOPBITS_1 LL_UART_STOPBITS_1_5 (*) LL_UART_STOPBITS_2 (*) (*) STOPBITS_1_5 only valid when DataBits = 5 (*) STOPBITS_2 is invalid when DataBits = 5

Return values

  None |

Definition at line 417 of file gr533x_ll_uart.h.

## ◆ ll_uart_set_tx_fifo_threshold()

__STATIC_INLINE void ll_uart_set_tx_fifo_threshold | ( | uart_regs_t * | UARTx,
|  | uint32_t | threshold
| ) |  |

Set threshold of TX FIFO that triggers an THRE interrupt.

Register|BitsName --------|-------- STET | STET

Parameters

  UARTx | UART instance
  threshold | This parameter can be one of the following values: LL_UART_TX_FIFO_TH_EMPTY LL_UART_TX_FIFO_TH_CHAR_2 LL_UART_TX_FIFO_TH_QUARTER_FULL LL_UART_TX_FIFO_TH_HALF_FULL

Return values

  None |

Definition at line 795 of file gr533x_ll_uart.h.