12 #ifndef __UART_SFRS_H__
13 #define __UART_SFRS_H__
70 #define UART_SFRS ((__IO UART_SFRS_t *) (0x50000010))
72 #define E_UART_STATUS_DATA_READY ((uint8_t) (1<<0))
73 #define E_UART_STATUS_OVERRUN_ERROR ((uint8_t) (1<<1))
74 #define E_UART_STATUS_PARITY_ERROR ((uint8_t) (1<<2))
75 #define E_UART_STATUS_FRAME_ERROR ((uint8_t) (1<<3))
76 #define E_UART_STATUS_BREAKINT_ERROR ((uint8_t) (1<<4))
77 #define E_UART_STATUS_TX_FIFO_EMPTY ((uint8_t) (1<<5))
78 #define E_UART_STATUS_TX_EMPTY ((uint8_t) (1<<6))
79 #define E_UART_STATUS_ERROR ((uint8_t) (1<<7))
81 #define E_UART_INT_STATUS_NONE 0x01
82 #define E_UART_INT_STATUS_TX_COMPLETE 0x02
83 #define E_UART_INT_STATUS_RX_READY 0x04
84 #define E_UART_INT_STATUS_RX_ERROR 0x06
85 #define E_UART_INT_STATUS_RX_TIMEOUT 0x0C
88 #define E_UART_DATA_SIZE_5BIT 0
89 #define E_UART_DATA_SIZE_6BIT 1
90 #define E_UART_DATA_SIZE_7BIT 2
91 #define E_UART_DATA_SIZE_8BIT 3
93 #define E_UART_STOP_BIT_1 0
94 #define E_UART_STOP_BIT_2 1
96 #define E_UART_PARITY_BIT_ODD 0
97 #define E_UART_PARITY_BIT_EVEN 1
99 #define E_UART_INT_DELAY_1 0
100 #define E_UART_INT_DELAY_3 1
107 static __INLINE void f_UART_BaudRateDiv(uint32_t div)
static __INLINE uint8_t f_UART_TxEmpty(void)
Check if UART transmitter empty.
Definition: uart_sfrs.h:241
#define E_UART_DATA_SIZE_5BIT
Definition: uart_sfrs.h:88
static __INLINE void f_UART_EnableStickyParity(void)
Enable UART sticky parity.
Definition: uart_sfrs.h:344
uint16_t DIV
Definition: uart_sfrs.h:67
static __INLINE uint8_t f_UART_RxDataReady(void)
check if UART data received
Definition: uart_sfrs.h:251
#define E_UART_STOP_BIT_1
Definition: uart_sfrs.h:93
#define E_UART_PARITY_BIT_EVEN
Definition: uart_sfrs.h:97
static __INLINE void f_UART_DisableBreak(void)
Disable UART break.
Definition: uart_sfrs.h:368
#define UART_SFRS
Definition: uart_sfrs.h:70
static __INLINE void f_UART_EnableBreak(void)
Enable UART break.
Definition: uart_sfrs.h:360
static __INLINE void f_UART_SetInterruptDelay(uint8_t delay)
Set UART interrupt delay in cycles.
Definition: uart_sfrs.h:392
#define E_UART_DATA_SIZE_8BIT
Definition: uart_sfrs.h:91
static __INLINE uint8_t f_UART_RxData(void)
UART receive data.
Definition: uart_sfrs.h:157
static __INLINE void f_UART_DisableLoopBack(void)
Disable UART loop back.
Definition: uart_sfrs.h:384
static __INLINE void f_UART_Enable(void)
Enable UART hardware module.
Definition: uart_sfrs.h:139
static __INLINE void f_UART_EnableRxIRQ(void)
Enable UART receiver interrupt.
Definition: uart_sfrs.h:175
static __INLINE void f_UART_SetOddParityBit(void)
Set UART parity bit as odd.
Definition: uart_sfrs.h:320
static __INLINE uint8_t f_UART_IntStatus(void)
Get UART interrupt status.
Definition: uart_sfrs.h:261
static __INLINE void f_UART_DisableRxErrorIRQ(void)
Disable UART receiver error interrupt.
Definition: uart_sfrs.h:231
static __INLINE void f_UART_DisableRxIRQ(void)
Disable UART receiver interrupt.
Definition: uart_sfrs.h:183
static __INLINE void f_UART_EnableRxTimeoutIRQ(void)
Enable UART receiver time out interrupt.
Definition: uart_sfrs.h:207
static __INLINE void f_UART_EnableTxIRQ(void)
Enable UART transmitter interrupt.
Definition: uart_sfrs.h:191
static __INLINE void f_UART_DisableTxIRQ(void)
Disable UART transmitter interrupt.
Definition: uart_sfrs.h:199
static __INLINE void f_UART_EnableRxErrorIRQ(void)
Enable UART receiver error interrupt.
Definition: uart_sfrs.h:223
#define E_UART_DATA_SIZE_7BIT
Definition: uart_sfrs.h:90
#define E_UART_PARITY_BIT_ODD
Definition: uart_sfrs.h:96
static __INLINE void f_UART_DisableRxTimeoutIRQ(void)
Disable UART receiver time out interrupt.
Definition: uart_sfrs.h:215
static __INLINE void f_UART_DisableParity(void)
Disable UART parity.
Definition: uart_sfrs.h:336
uint8_t BYTE
Definition: uart_sfrs.h:32
static __INLINE uint8_t f_UART_LineStatus(void)
Get UART line status.
Definition: uart_sfrs.h:117
uint8_t DATA
Definition: uart_sfrs.h:19
static __INLINE void f_UART_EnableParity(void)
Enable UART parity.
Definition: uart_sfrs.h:328
static __INLINE void f_UART_SetStopBit(uint8_t stop)
Set UART stop bit size in number of bits.
Definition: uart_sfrs.h:297
static __INLINE void f_UART_EnableLoopBack(void)
Enable UART loop back.
Definition: uart_sfrs.h:376
static __INLINE void f_UART_TxData(uint8_t data)
UART transmit data.
Definition: uart_sfrs.h:167
static __INLINE void f_UART_Disable(void)
Disable UART hardware module.
Definition: uart_sfrs.h:147
#define E_UART_DATA_SIZE_6BIT
Definition: uart_sfrs.h:89
A structure to represent Special Function Registers for UART.
Definition: uart_sfrs.h:18
#define E_UART_STOP_BIT_2
Definition: uart_sfrs.h:94
static __INLINE void f_UART_SetEvenParityBit(void)
Set UART parity bit as even.
Definition: uart_sfrs.h:312
static __INLINE void f_UART_SetDataSize(uint8_t size)
Set UART data size in number of bits.
Definition: uart_sfrs.h:271
static __INLINE void f_UART_TxFiFoReset(void)
Reset UART transmitter FIFO.
Definition: uart_sfrs.h:132
static __INLINE void f_UART_RxFiFoReset(void)
Reset UART receiver FIFO.
Definition: uart_sfrs.h:125
static __INLINE void f_UART_DisableStickyParity(void)
Disable UART sticky parity.
Definition: uart_sfrs.h:352