NUC472_NUC442_BSP V3.03.004
The Board Support Package for NUC472/NUC442
Macros | Functions
Collaboration diagram for UART Exported Functions:

Macros

#define UART_BAUD_MODE0_DIVIDER(u32SrcFreq, u32BaudRate)
 Calculate UART baudrate mode0 divider. More...
 
#define UART_BAUD_MODE2_DIVIDER(u32SrcFreq, u32BaudRate)
 Calculate UART baudrate mode2 divider. More...
 
#define UART_WRITE(uart, u8Data)
 Write Data to Tx data register. More...
 
#define UART_READ(uart)
 Read Rx data register. More...
 
#define UART_GET_TX_EMPTY(uart)
 Get Tx empty register value. More...
 
#define UART_GET_RX_EMPTY(uart)
 Get Rx empty register value. More...
 
#define UART_IS_TX_EMPTY(uart)
 Check specified uart port transmission is over. More...
 
#define UART_WAIT_TX_EMPTY(uart)
 Wait specified uart port transmission is over. More...
 
#define UART_IS_RX_READY(uart)
 Check RDA_IF is set or not. More...
 
#define UART_IS_TX_FULL(uart)
 Check TX FIFO is full or not. More...
 
#define UART_IS_RX_FULL(uart)
 Check RX FIFO is full or not. More...
 
#define UART_GET_TX_FULL(uart)
 Get Tx full register value. More...
 
#define UART_GET_RX_FULL(uart)
 Get Rx full register value. More...
 
#define UART_ENABLE_INT(uart, u32eIntSel)
 Enable specified interrupt. More...
 
#define UART_DISABLE_INT(uart, u32eIntSel)
 Disable specified interrupt. More...
 
#define UART_GET_INT_FLAG(uart, u32eIntTypeFlag)
 Get specified interrupt flag/status. More...
 
#define UART_RS485_CLEAR_ADDR_FLAG(uart)
 Clear RS-485 Address Byte Detection Flag. More...
 
#define UART_RS485_GET_ADDR_FLAG(uart)
 Get RS-485 Address Byte Detection Flag. More...
 

Functions

__STATIC_INLINE void UART_CLEAR_RTS (UART_T *uart)
 Set RTS pin is low. More...
 
__STATIC_INLINE void UART_SET_RTS (UART_T *uart)
 Set RTS pin is high. More...
 
void UART_ClearIntFlag (UART_T *uart, uint32_t u32InterruptFlag)
 The function is used to clear UART specified interrupt flag. More...
 
void UART_Close (UART_T *uart)
 The function is used to disable UART. More...
 
void UART_DisableFlowCtrl (UART_T *uart)
 The function is used to disable UART auto flow control. More...
 
void UART_DisableInt (UART_T *uart, uint32_t u32InterruptFlag)
 The function is used to disable UART specified interrupt and disable NVIC UART IRQ. More...
 
void UART_EnableFlowCtrl (UART_T *uart)
 The function is used to Enable UART auto flow control. More...
 
void UART_EnableInt (UART_T *uart, uint32_t u32InterruptFlag)
 The function is used to enable UART specified interrupt and disable NVIC UART IRQ. More...
 
void UART_Open (UART_T *uart, uint32_t u32baudrate)
 This function use to enable UART function and set baud-rate. More...
 
uint32_t UART_Read (UART_T *uart, uint8_t *pu8RxBuf, uint32_t u32ReadBytes)
 The function is used to read Rx data from RX FIFO and the data will be stored in pu8RxBuf. More...
 
void UART_SetLine_Config (UART_T *uart, uint32_t u32baudrate, uint32_t u32data_width, uint32_t u32parity, uint32_t u32stop_bits)
 This function use to config UART line setting. More...
 
void UART_SetTimeoutCnt (UART_T *uart, uint32_t u32TOC)
 This function use to set Rx timeout count. More...
 
void UART_SelectIrDAMode (UART_T *uart, uint32_t u32Buadrate, uint32_t u32Direction)
 The function is used to configure IrDA relative settings. It consists of TX or RX mode and baudrate. More...
 
void UART_SelectRS485Mode (UART_T *uart, uint32_t u32Mode, uint32_t u32Addr)
 The function is used to set RS485 relative setting. More...
 
uint32_t UART_Write (UART_T *uart, uint8_t *pu8TxBuf, uint32_t u32WriteBytes)
 The function is to write data into TX buffer to transmit data by UART. More...
 

Detailed Description

Macro Definition Documentation

◆ UART_BAUD_MODE0_DIVIDER

#define UART_BAUD_MODE0_DIVIDER (   u32SrcFreq,
  u32BaudRate 
)

Calculate UART baudrate mode0 divider.

Parameters
[in]u32SrcFreqUART clock frequency
[in]u32BaudRateBaudrate of UART module
Returns
UART baudrate mode0 divider

Definition at line 113 of file uart.h.

◆ UART_BAUD_MODE2_DIVIDER

#define UART_BAUD_MODE2_DIVIDER (   u32SrcFreq,
  u32BaudRate 
)

Calculate UART baudrate mode2 divider.

Parameters
[in]u32SrcFreqUART clock frequency
[in]u32BaudRateBaudrate of UART module
Returns
UART baudrate mode2 divider

Definition at line 124 of file uart.h.

◆ UART_DISABLE_INT

#define UART_DISABLE_INT (   uart,
  u32eIntSel 
)

Disable specified interrupt.

Parameters
[in]uartThe base address of UART module
[in]u32eIntSelInterrupt type select
Returns
None

Definition at line 288 of file uart.h.

◆ UART_ENABLE_INT

#define UART_ENABLE_INT (   uart,
  u32eIntSel 
)

Enable specified interrupt.

Parameters
[in]uartThe base address of UART module
[in]u32eIntSelInterrupt type select
Returns
None

Definition at line 269 of file uart.h.

◆ UART_GET_INT_FLAG

#define UART_GET_INT_FLAG (   uart,
  u32eIntTypeFlag 
)

Get specified interrupt flag/status.

Parameters
[in]uartThe base address of UART module
[in]u32eIntTypeFlagInterrupt type select
Returns
0 = The specified interrupt is not happened. 1 = The specified interrupt is happened.

Definition at line 324 of file uart.h.

◆ UART_GET_RX_EMPTY

#define UART_GET_RX_EMPTY (   uart)

Get Rx empty register value.

Parameters
[in]uartThe base address of UART module
Returns
Rx empty register value.

Definition at line 168 of file uart.h.

◆ UART_GET_RX_FULL

#define UART_GET_RX_FULL (   uart)

Get Rx full register value.

Parameters
[in]uartThe base address of UART module
Returns
Rx full register value

Definition at line 249 of file uart.h.

◆ UART_GET_TX_EMPTY

#define UART_GET_TX_EMPTY (   uart)

Get Tx empty register value.

Parameters
[in]uartThe base address of UART module
Returns
Tx empty register value.

Definition at line 157 of file uart.h.

◆ UART_GET_TX_FULL

#define UART_GET_TX_FULL (   uart)

Get Tx full register value.

Parameters
[in]uartThe base address of UART module
Returns
Tx full register value

Definition at line 238 of file uart.h.

◆ UART_IS_RX_FULL

#define UART_IS_RX_FULL (   uart)

Check RX FIFO is full or not.

Parameters
[in]uartThe base address of UART module
Returns
1 = RX FIFO is full 0 = RX FIFO is not full

Definition at line 227 of file uart.h.

◆ UART_IS_RX_READY

#define UART_IS_RX_READY (   uart)

Check RDA_IF is set or not.

Parameters
[in]uartThe base address of UART module
Returns
0 : The number of bytes in the RX FIFO is less than the RFITL 1 : The number of bytes in the RX FIFO equals or larger than RFITL

Definition at line 201 of file uart.h.

◆ UART_IS_TX_EMPTY

#define UART_IS_TX_EMPTY (   uart)

Check specified uart port transmission is over.

Parameters
[in]uartThe base address of UART module
Returns
TE_Flag.

Definition at line 178 of file uart.h.

◆ UART_IS_TX_FULL

#define UART_IS_TX_FULL (   uart)

Check TX FIFO is full or not.

Parameters
[in]uartThe base address of UART module
Returns
1 = TX FIFO is full 0 = TX FIFO is not full

Definition at line 214 of file uart.h.

◆ UART_READ

#define UART_READ (   uart)

Read Rx data register.

Parameters
[in]uartThe base address of UART module.
Returns
The oldest data byte in RX FIFO

Definition at line 146 of file uart.h.

◆ UART_RS485_CLEAR_ADDR_FLAG

#define UART_RS485_CLEAR_ADDR_FLAG (   uart)

Clear RS-485 Address Byte Detection Flag.

Parameters
[in]uartThe base address of UART module
Returns
None

Definition at line 357 of file uart.h.

◆ UART_RS485_GET_ADDR_FLAG

#define UART_RS485_GET_ADDR_FLAG (   uart)

Get RS-485 Address Byte Detection Flag.

Parameters
[in]uartThe base address of UART module
Returns
RS-485 Address Byte Detection Flag

Definition at line 367 of file uart.h.

◆ UART_WAIT_TX_EMPTY

#define UART_WAIT_TX_EMPTY (   uart)

Wait specified uart port transmission is over.

Parameters
[in]uartThe base address of UART module
Returns
None

Definition at line 189 of file uart.h.

◆ UART_WRITE

#define UART_WRITE (   uart,
  u8Data 
)

Write Data to Tx data register.

Parameters
[in]uartThe base address of UART module.
[in]u8DataData byte to transmit
Returns
None

Definition at line 136 of file uart.h.

Function Documentation

◆ UART_CLEAR_RTS()

__STATIC_INLINE void UART_CLEAR_RTS ( UART_T uart)

Set RTS pin is low.

Parameters
[in]uartThe base address of UART module
Returns
None

Definition at line 333 of file uart.h.

◆ UART_ClearIntFlag()

void UART_ClearIntFlag ( UART_T uart,
uint32_t  u32InterruptFlag 
)

The function is used to clear UART specified interrupt flag.

Parameters
[in]uartThe base address of UART module.
[in]u32InterruptFlagThe specified interrupt of UART module..
Returns
None

Definition at line 43 of file uart.c.

◆ UART_Close()

void UART_Close ( UART_T uart)

The function is used to disable UART.

Parameters
[in]uartThe base address of UART module.
Returns
None

Definition at line 72 of file uart.c.

◆ UART_DisableFlowCtrl()

void UART_DisableFlowCtrl ( UART_T uart)

The function is used to disable UART auto flow control.

Parameters
[in]uartThe base address of UART module.
Returns
None

Definition at line 85 of file uart.c.

◆ UART_DisableInt()

void UART_DisableInt ( UART_T uart,
uint32_t  u32InterruptFlag 
)

The function is used to disable UART specified interrupt and disable NVIC UART IRQ.

Parameters
[in]uartThe base address of UART module.
[in]u32InterruptFlagThe specified interrupt of UART module.
Returns
None

Definition at line 107 of file uart.c.

◆ UART_EnableFlowCtrl()

void UART_EnableFlowCtrl ( UART_T uart)

The function is used to Enable UART auto flow control.

Parameters
[in]uartThe base address of UART module.
Returns
None

Definition at line 121 of file uart.c.

◆ UART_EnableInt()

void UART_EnableInt ( UART_T uart,
uint32_t  u32InterruptFlag 
)

The function is used to enable UART specified interrupt and disable NVIC UART IRQ.

Parameters
[in]uartThe base address of UART module.
[in]u32InterruptFlagThe specified interrupt of UART module:
Returns
None

Definition at line 146 of file uart.c.

◆ UART_Open()

void UART_Open ( UART_T uart,
uint32_t  u32baudrate 
)

This function use to enable UART function and set baud-rate.

Parameters
[in]uartThe base address of UART module.
[in]u32baudrateThe baudrate of UART module.
Returns
None

Definition at line 160 of file uart.c.

Here is the call graph for this function:

◆ UART_Read()

uint32_t UART_Read ( UART_T uart,
uint8_t *  pu8RxBuf,
uint32_t  u32ReadBytes 
)

The function is used to read Rx data from RX FIFO and the data will be stored in pu8RxBuf.

Parameters
[in]uartThe base address of UART module.
[out]pu8RxBufThe buffer to receive the data of receive FIFO.
[in]u32ReadBytesThe the read bytes number of data.
Returns
u32Count: Receive byte count

Definition at line 199 of file uart.c.

◆ UART_SelectIrDAMode()

void UART_SelectIrDAMode ( UART_T uart,
uint32_t  u32Buadrate,
uint32_t  u32Direction 
)

The function is used to configure IrDA relative settings. It consists of TX or RX mode and baudrate.

Parameters
[in]uartThe base address of UART module.
[in]u32BuadrateThe baudrate of UART module.
[in]u32DirectionThe direction(transmit:1/receive:0) of UART module in IrDA mode.
Returns
None

Definition at line 280 of file uart.c.

Here is the call graph for this function:

◆ UART_SelectRS485Mode()

void UART_SelectRS485Mode ( UART_T uart,
uint32_t  u32Mode,
uint32_t  u32Addr 
)

The function is used to set RS485 relative setting.

Parameters
[in]uartThe base address of UART module.
[in]u32ModeThe operation mode( UART_ALTCTL_RS485NMM_Msk / UART_ALTCTL_RS485AUD_Msk / UART_ALTCTL_RS485AAD_Msk).
[in]u32AddrThe RS485 address.
Returns
None

Definition at line 310 of file uart.c.

◆ UART_SET_RTS()

__STATIC_INLINE void UART_SET_RTS ( UART_T uart)

Set RTS pin is high.

Parameters
[in]uartThe base address of UART module
Returns
None

Definition at line 345 of file uart.h.

◆ UART_SetLine_Config()

void UART_SetLine_Config ( UART_T uart,
uint32_t  u32baudrate,
uint32_t  u32data_width,
uint32_t  u32parity,
uint32_t  u32stop_bits 
)

This function use to config UART line setting.

Parameters
[in]uartThe base address of UART module.
[in]u32baudrateThe register value of baudrate of UART module. if u32baudrate = 0, UART baudrate will not change.
[in]u32data_widthThe data length of UART module. [ UART_WORD_LEN_5 / UART_WORD_LEN_6 / UART_WORD_LEN_7 / UART_WORD_LEN_8]
[in]u32parityThe parity setting (odd/even/none) of UART module. [ UART_PARITY_NONE / UART_PARITY_ODD / UART_PARITY_EVEN / UART_PARITY_MARK / UART_PARITY_SPACE]
[in]u32stop_bitsThe stop bit length (1/1.5/2 bit) of UART module. [ UART_STOP_BIT_1 / UART_STOP_BIT_1_5 / UART_STOP_BIT_2]
Returns
None

Definition at line 229 of file uart.c.

Here is the call graph for this function:

◆ UART_SetTimeoutCnt()

void UART_SetTimeoutCnt ( UART_T uart,
uint32_t  u32TOC 
)

This function use to set Rx timeout count.

Parameters
[in]uartThe base address of UART module.
[in]u32TOCRx timeout counter.
Returns
None

Definition at line 264 of file uart.c.

◆ UART_Write()

uint32_t UART_Write ( UART_T uart,
uint8_t *  pu8TxBuf,
uint32_t  u32WriteBytes 
)

The function is to write data into TX buffer to transmit data by UART.

Parameters
[in]uartThe base address of UART module.
[in]pu8TxBufThe buffer to send the data to UART transmission FIFO.
[in]u32WriteBytesThe byte number of data.
Returns
u32Count: transfer byte count
Note
This function returns when the TX FIFO is full. So the transfer byte count(u32Count) maybe less than u32WriteBytes. Application should check the return value for the actual amount of data written to UART FIFO.

Definition at line 329 of file uart.c.