Configuration 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_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 :

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | LCR | PS | +———————-+———————————–+ \endrst LCR | EPS LCR | PEN LCR | STOP LCR | DLS

Parameters
UARTxUART instance
data_bitsThis parameter can be one of the following values:
parityThis parameter can be one of the following values:
stop_bitsThis parameter can be one of the following values: (*) STOPBITS_1_5 only valid when DataBits = 5 (*) STOPBITS_2 is invalid when DataBits = 5
Return values
None

Definition at line 558 of file gr55xx_ll_uart.h.

◆ ll_uart_disable_break_sending()

__STATIC_INLINE void ll_uart_disable_break_sending ( uart_regs_t *  UARTx)

Disable Break sending.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | LCR | BC | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
Return values
None

Definition at line 733 of file gr55xx_ll_uart.h.

◆ ll_uart_disable_fifo()

__STATIC_INLINE void ll_uart_disable_fifo ( uart_regs_t *  UARTx)

Disable TX FIFO and RX FIFO.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | SFE | SFE | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
Return values
None

Definition at line 790 of file gr55xx_ll_uart.h.

◆ ll_uart_enable_break_sending()

__STATIC_INLINE void ll_uart_enable_break_sending ( uart_regs_t *  UARTx)

Enable Break sending.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | LCR | BC | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
Return values
None

Definition at line 714 of file gr55xx_ll_uart.h.

◆ ll_uart_enable_fifo()

__STATIC_INLINE void ll_uart_enable_fifo ( uart_regs_t *  UARTx)

Enable TX FIFO and RX FIFO.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | SFE | SFE | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
Return values
None

Definition at line 771 of file gr55xx_ll_uart.h.

◆ ll_uart_flush_rx_fifo()

__STATIC_INLINE void ll_uart_flush_rx_fifo ( uart_regs_t *  UARTx)

Flush Receive FIFO.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | SRR | RFR | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
Return values
None

Definition at line 960 of file gr55xx_ll_uart.h.

◆ ll_uart_flush_tx_fifo()

__STATIC_INLINE void ll_uart_flush_tx_fifo ( uart_regs_t *  UARTx)

Flush Transmit FIFO.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | SRR | XFR | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
Return values
None

Definition at line 979 of file gr55xx_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..

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | DLL | DLL | +———————-+———————————–+ \endrst DLH | DLH

Parameters
UARTxUART instance
peripheral_clockPeripheral Clock
Return values
BaudRate

Definition at line 349 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | MSR | CTS | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
Return values
Returnedvalue can be one of the following values:

Definition at line 630 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | LCR | DLS | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
Return values
Returnedvalue can be one of the following values:

Definition at line 409 of file gr55xx_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)

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | MCR | AFCE | +———————-+———————————–+ \endrst MCR | RTS

Parameters
UARTxUART instance
Return values
Returnedvalue can be one of the following values:

Definition at line 695 of file gr55xx_ll_uart.h.

◆ ll_uart_get_parity()

__STATIC_INLINE uint32_t ll_uart_get_parity ( uart_regs_t *  UARTx)

Return Parity configuration.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | LCR | SP | +———————-+———————————–+ \endrst LCR | EPS LCR | PEN

Parameters
UARTxUART instance
Return values
Returnedvalue can be one of the following values:

Definition at line 513 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | SRTS | SRTS | +———————-+———————————–+ \endrst MCR | RTS

Parameters
UARTxUART instance
Return values
Returnedvalue can be one of the following values:

Definition at line 608 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | RFL | RFL | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
Return values
Returnedvalue can be one of the following values:

Definition at line 941 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | SRT | SRT | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
Return values
Returnedvalue can be one of the following values:

Definition at line 903 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | LCR | STOP | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
Return values
Returnedvalue can be one of the following values:

Definition at line 457 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | TFL | TFL | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
Return values
Returnedvalue can be one of the following values:

Definition at line 922 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | STET | STET | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
Return values
Returnedvalue can be one of the following values:

Definition at line 856 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | MSR | DCTS | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
Return values
Stateof bit (1 or 0).

Definition at line 649 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | LCR | BC | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
Return values
Stateof bit (1 or 0).

Definition at line 752 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | SFE | SFE | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
Return values
Stateof bit (1 or 0).

Definition at line 809 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | SRR | UR | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
Return values
None

Definition at line 1001 of file gr55xx_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)

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | DLL | DLL | +———————-+———————————–+ \endrst DLH | DLH

Parameters
UARTxUART instance
peripheral_clockPeripheral Clock
baud_rateBaud Rate
Return values
None

Definition at line 321 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | LCR | DLS | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
data_bitsThis parameter can be one of the following values:
Return values
None

Definition at line 386 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | MCR | AFCE | +———————-+———————————–+ \endrst MCR | RTS

Parameters
UARTxUART instance
hw_flow_ctrlThis parameter can be one of the following values:
Return values
None

Definition at line 673 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | LCR | SP | +———————-+———————————–+ \endrst LCR | EPS LCR | PEN

Parameters
UARTxUART instance
parityThis parameter can be one of the following values:
Return values
None

Definition at line 487 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | SRTS | SRTS | +———————-+———————————–+ \endrst MCR | RTS

Parameters
UARTxUART instance
pin_stateThis parameter can be one of the following values:
Return values
None

Definition at line 585 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | SRT | SRT | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
thresholdThis parameter can be one of the following values:
Return values
None

Definition at line 880 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | LCR | STOP | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
stop_bitsThis parameter can be one of the following values: (*) STOPBITS_1_5 only valid when DataBits = 5 (*) STOPBITS_2 is invalid when DataBits = 5
Return values
None

Definition at line 435 of file gr55xx_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.

\rst +———————-+———————————–+ | Register | BitsName | +======================+===================================+ | STET | STET | +———————-+———————————–+ \endrst

Parameters
UARTxUART instance
thresholdThis parameter can be one of the following values:
Return values
None

Definition at line 833 of file gr55xx_ll_uart.h.