TMPM4KxA Group Peripheral Driver User Manual  V1.0.4.0
Functions
UART Exported Functions

Functions

TXZ_Result uart_init (uart_t *p_obj)
 Initialize the UART object. More...
 
TXZ_Result uart_deinit (uart_t *p_obj)
 Release the UART object. More...
 
TXZ_Result uart_discard_transmit (uart_t *p_obj)
 Discard transmit. More...
 
TXZ_Result uart_discard_receive (uart_t *p_obj)
 Discard receive. More...
 
TXZ_Result uart_transmitIt (uart_t *p_obj, uart_transmit_t *p_info)
 Transmit data. Non-Blocking Communication. More...
 
TXZ_Result uart_receiveIt (uart_t *p_obj, uart_receive_t *p_info)
 Receive data. Non-Blocking Communication. More...
 
void uart_transmit_irq_handler (uart_t *p_obj)
 IRQ Handler for transmit. More...
 
void uart_receive_irq_handler (uart_t *p_obj)
 IRQ Handler for receive. More...
 
void uart_error_irq_handler (uart_t *p_obj)
 IRQ Handler for error. More...
 
TXZ_Result uart_get_status (uart_t *p_obj, uint32_t *p_status)
 Get status. More...
 
TXZ_Result uart_get_error (uart_t *p_obj, uint32_t *p_error)
 Get error information. More...
 
TXZ_Result uart_get_boudrate_setting (uint32_t clock, uart_clock_t *p_clk, uint32_t boudrate, uart_boudrate_t *p_brd)
 Get the setting of boudrate. More...
 
TXZ_Result uart_dma_init (uart_dma_t *p_obj)
 Initialize the UART DMA object. More...
 
TXZ_Result uart_dma_deinit (uart_dma_t *p_obj)
 Release the UART DMA object. More...
 
TXZ_Result uart_dma_discard_transmit (uart_dma_t *p_obj)
 Discard transmit. More...
 
TXZ_Result uart_dma_discard_receive (uart_dma_t *p_obj)
 Discard receive. More...
 
TXZ_Result uart_dma_transmitIt (uart_dma_t *p_obj, uart_transmit_t *p_info)
 Transmit data. Non-Blocking Communication. More...
 
TXZ_Result uart_dma_receiveIt (uart_dma_t *p_obj, uart_receive_t *p_info)
 Receive data. Non-Blocking Communication. More...
 
TXZ_Result uart_send_break (uart_t *p_obj)
 Send Break. More...
 
TXZ_Result uart_stop_break (uart_t *p_obj)
 Stop Break. More...
 
TXZ_Result uart_enable_half_clock (uart_t *p_obj, uint32_t start, uint32_t output)
 Enable Half Clock Mode. More...
 
TXZ_Result uart_disable_half_clock (uart_t *p_obj)
 Disable Half Clock Mode. More...
 
TXZ_Result uart_enable_loopback (uart_t *p_obj)
 Enable Loopback. More...
 
TXZ_Result uart_disable_loopback (uart_t *p_obj)
 Disable Loopback. More...
 
TXZ_Result uart_enable_wakeup (uart_t *p_obj)
 Enable Wakeup. More...
 
TXZ_Result uart_disable_wakeup (uart_t *p_obj)
 Disable Wakeup. More...
 

Detailed Description

Function Documentation

◆ uart_deinit()

TXZ_Result uart_deinit ( uart_t p_obj)

Release the UART object.

Parameters
p_obj:UART object.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
-
Attention
This function is not available in interrupt.

◆ uart_disable_half_clock()

TXZ_Result uart_disable_half_clock ( uart_t p_obj)

Disable Half Clock Mode.

Parameters
p_obj:UART object.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
-
Attention
This function is not available in interrupt.
Use after interrupt is disabled.
It can be set only at "SUE = 0"(Setting Enable).

◆ uart_disable_loopback()

TXZ_Result uart_disable_loopback ( uart_t p_obj)

Disable Loopback.

Parameters
p_obj:UART object.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
-
Attention
This function is not available in interrupt.
Use after interrupt is disabled.
It can be set only at "SUE = 0"(Setting Enable).

◆ uart_disable_wakeup()

TXZ_Result uart_disable_wakeup ( uart_t p_obj)

Disable Wakeup.

Parameters
p_obj:UART object.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
-
Attention
This function is not available in interrupt.
Use after interrupt is disabled.
It can be set only at "SUE = 0"(Setting Enable).

◆ uart_discard_receive()

TXZ_Result uart_discard_receive ( uart_t p_obj)

Discard receive.

Parameters
p_obj:UART object.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
This function clears receive's fifo, end flag and error info.
Attention
This function is not available in interrupt.
Use after interrupt is disabled.

◆ uart_discard_transmit()

TXZ_Result uart_discard_transmit ( uart_t p_obj)

Discard transmit.

Parameters
p_obj:UART object.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
This function clears transmit's fifo, end flag and error info.
Attention
This function is not available in interrupt.
Use after interrupt is disabled.

◆ uart_dma_deinit()

TXZ_Result uart_dma_deinit ( uart_dma_t p_obj)

Release the UART DMA object.

Parameters
p_obj:UART DMA object.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
-
Attention
This function is not available in interrupt.

◆ uart_dma_discard_receive()

TXZ_Result uart_dma_discard_receive ( uart_dma_t p_obj)

Discard receive.

Parameters
p_obj:UART DMA object.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
This function clears receive's fifo, end flag and error info.
Attention
This function is not available in interrupt.
Use after interrupt is disabled.

◆ uart_dma_discard_transmit()

TXZ_Result uart_dma_discard_transmit ( uart_dma_t p_obj)

Discard transmit.

Parameters
p_obj:UART DMA object.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
This function clears transmit's fifo, end flag and error info.
Attention
This function is not available in interrupt.
Use after interrupt is disabled.

◆ uart_dma_init()

TXZ_Result uart_dma_init ( uart_dma_t p_obj)

Initialize the UART DMA object.

Parameters
p_obj:UART DMA object.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
-
Attention
This function is not available in interrupt.

◆ uart_dma_receiveIt()

TXZ_Result uart_dma_receiveIt ( uart_dma_t p_obj,
uart_receive_t p_info 
)

Receive data. Non-Blocking Communication.

Parameters
p_obj:UART DMA object.
p_info:The information of receive buffer.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
Asynchronous Processing.
Attention
"p_info->rx8(or rx16).num" must be over FIFO max(Refer Max Num of FIFO) num.
This function is not available in interrupt.

◆ uart_dma_transmitIt()

TXZ_Result uart_dma_transmitIt ( uart_dma_t p_obj,
uart_transmit_t p_info 
)

Transmit data. Non-Blocking Communication.

Parameters
p_obj:UART DMA object.
p_info:The information of transmit data.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
Asynchronous Processing.
Attention
This function is not available in interrupt.

◆ uart_enable_half_clock()

TXZ_Result uart_enable_half_clock ( uart_t p_obj,
uint32_t  start,
uint32_t  output 
)

Enable Half Clock Mode.

Parameters
p_obj:UART object.
start:Half Clock Mode Start Control. Half Clock Mode Start Control.
output:Half Clock Mode Output Control. Half Clock Mode Output Control.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
-
Attention
This function is not available in interrupt.
Use after interrupt is disabled.
It can be set only at "SUE = 0"(Setting Enable).

◆ uart_enable_loopback()

TXZ_Result uart_enable_loopback ( uart_t p_obj)

Enable Loopback.

Parameters
p_obj:UART object.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
-
Attention
This function is not available in interrupt.
Use after interrupt is disabled.
It can be set only at "SUE = 0"(Setting Enable).

◆ uart_enable_wakeup()

TXZ_Result uart_enable_wakeup ( uart_t p_obj)

Enable Wakeup.

Parameters
p_obj:UART object.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
-
Attention
This function is not available in interrupt.
Use after interrupt is disabled.
It can be set only at "SUE = 0"(Setting Enable).
It's effective only in case of a 9 bits UART mode, and it's ignored by other modes.

◆ uart_error_irq_handler()

void uart_error_irq_handler ( uart_t p_obj)

IRQ Handler for error.

Parameters
p_obj:UART object.
Return values
-
Note
-

◆ uart_get_boudrate_setting()

TXZ_Result uart_get_boudrate_setting ( uint32_t  clock,
uart_clock_t p_clk,
uint32_t  boudrate,
uart_boudrate_t p_brd 
)

Get the setting of boudrate.

Parameters
clock:Clock(hz) "Phi T0" or "Clock Input A" or "Clock Input B".
p_clk:Select Clock Setting.
boudrate:Boudrate(bps).
p_brd:Save area for Division Setting.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Not support setting.
Note
-

◆ uart_get_error()

TXZ_Result uart_get_error ( uart_t p_obj,
uint32_t *  p_error 
)

Get error information.

Error bits.

Bit Bit Symbol Function
31-5 - -
4 TRGERR Transmitting Trigger Error. Use Trigger Error.
3 OVRERR Overrun Error. Use Overrun Error.
2 PERR Parity Error. Use Parity Error.
1 FERR Framing Error. Use Framing Error.
0 BERR Break Error Flag. Use Break Error.
Parameters
p_obj:UART object.
p_error:Save area for error.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
-

◆ uart_get_status()

TXZ_Result uart_get_status ( uart_t p_obj,
uint32_t *  p_status 
)

Get status.

Status bits.

Bit Bit Symbol Function
31 SUE Setting Enable Flag. Use Setting Enable.
30-16 - -
15 TXRUN Transmitting State Flag. Use Tx State.
14 TXEND Transmitting Done Flag. Use Transmitting Done.
13 TXFF Reach Transmitting Fill Level Flag. Use Tx Reach Fill Level.
12 - -
11-8 TLVL Current Transmitting FIFO Level. Use Tx FIFO Fill Level
7 RXRUN Receive State Flag. Use Rx State.
6 RXEND Receive Done Flag. Use Rx Done.
5 RXFF Reach Receive Fill Level Flag. Use Rx Reach Fill Level
4 - -
3-0 RLVL Current Receive FIFO Level. Use Rx FIFO Fill Level
Parameters
p_obj:UART object.
p_status:Save area for status.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
-

◆ uart_init()

TXZ_Result uart_init ( uart_t p_obj)

Initialize the UART object.

Parameters
p_obj:UART object.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
-
Attention
This function is not available in interrupt.

◆ uart_receive_irq_handler()

void uart_receive_irq_handler ( uart_t p_obj)

IRQ Handler for receive.

Parameters
p_obj:UART object.
Return values
-
Note
-

◆ uart_receiveIt()

TXZ_Result uart_receiveIt ( uart_t p_obj,
uart_receive_t p_info 
)

Receive data. Non-Blocking Communication.

Parameters
p_obj:UART object.
p_info:The information of receive buffer.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
Asynchronous Processing.
Attention
"p_info->rx8(or rx16).num" must be over FIFO max(Refer Max Num of FIFO) num.
This function is not available in interrupt.

◆ uart_send_break()

TXZ_Result uart_send_break ( uart_t p_obj)

Send Break.

Parameters
p_obj:UART object.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
-
Attention
This function is not available in interrupt.
Use after interrupt is disabled.

◆ uart_stop_break()

TXZ_Result uart_stop_break ( uart_t p_obj)

Stop Break.

Parameters
p_obj:UART object.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
-
Attention
This function is not available in interrupt.
Use after interrupt is disabled.

◆ uart_transmit_irq_handler()

void uart_transmit_irq_handler ( uart_t p_obj)

IRQ Handler for transmit.

Parameters
p_obj:UART object.
Return values
-
Note
-

◆ uart_transmitIt()

TXZ_Result uart_transmitIt ( uart_t p_obj,
uart_transmit_t p_info 
)

Transmit data. Non-Blocking Communication.

Parameters
p_obj:UART object.
p_info:The information of transmit data.
Return values
TXZ_SUCCESS:Success.
TXZ_ERROR:Failure.
Note
Asynchronous Processing.
Attention
This function is not available in interrupt.