50 #include "../inc/hw_types.h" 51 #include "../inc/hw_memmap.h" 52 #include "../inc/hw_uartlin.h" 71 #define UART_INT_EOT UARTLIN_IMSC_EOT_M 72 #define UART_INT_OE UARTLIN_IMSC_OE_M 73 #define UART_INT_BE UARTLIN_IMSC_BE_M 74 #define UART_INT_PE UARTLIN_IMSC_PE_M 75 #define UART_INT_FE UARTLIN_IMSC_FE_M 76 #define UART_INT_RT UARTLIN_IMSC_RT_M 77 #define UART_INT_RX UARTLIN_IMSC_RX_M 78 #define UART_INT_TX UARTLIN_IMSC_TX_M 79 #define UART_INT_CTS UARTLIN_IMSC_CTSM_M 80 #define UART_INT_TXDMADONE UARTLIN_IMSC_TXDMADONE_M 81 #define UART_INT_RXDMADONE UARTLIN_IMSC_RXDMADONE_M 83 #define UART_INT_ALL \ 84 (UART_INT_EOT | UART_INT_OE | UART_INT_BE | UART_INT_PE | UART_INT_FE | UART_INT_RT | UART_INT_RX | UART_INT_TX | \ 85 UART_INT_CTS | UART_INT_TXDMADONE | UART_INT_RXDMADONE) 93 #define UART_CONFIG_WLEN_MASK 0x00000060 94 #define UART_CONFIG_WLEN_8 0x00000060 95 #define UART_CONFIG_WLEN_7 0x00000040 96 #define UART_CONFIG_WLEN_6 0x00000020 97 #define UART_CONFIG_WLEN_5 0x00000000 98 #define UART_CONFIG_STOP_MASK 0x00000008 99 #define UART_CONFIG_STOP_ONE 0x00000000 100 #define UART_CONFIG_STOP_TWO 0x00000008 101 #define UART_CONFIG_PAR_MASK 0x00000086 102 #define UART_CONFIG_PAR_NONE 0x00000000 103 #define UART_CONFIG_PAR_EVEN 0x00000006 104 #define UART_CONFIG_PAR_ODD 0x00000002 105 #define UART_CONFIG_PAR_ONE 0x00000082 106 #define UART_CONFIG_PAR_ZERO 0x00000086 113 #define UART_FIFO_TX2_8 0x00000001 114 #define UART_FIFO_TX4_8 0x00000002 115 #define UART_FIFO_TX6_8 0x00000003 122 #define UART_FIFO_RX2_8 0x00000008 123 #define UART_FIFO_RX4_8 0x00000010 124 #define UART_FIFO_RX6_8 0x00000018 131 #define UART_DMA_ERR_RXSTOP 0x00000004 132 #define UART_DMA_TX 0x00000002 133 #define UART_DMA_RX 0x00000001 140 #define UART_RXERROR_OVERRUN 0x00000008 141 #define UART_RXERROR_BREAK 0x00000004 142 #define UART_RXERROR_PARITY 0x00000002 143 #define UART_RXERROR_FRAMING 0x00000001 235 extern void UARTConfigSetExpClk(uint32_t base, uint32_t UARTClkFreq, uint32_t baudFreq, uint32_t config);
419 extern void UARTPutChar(uint32_t base, uint8_t data);
#define UARTLIN_LCRH_FEN
Definition: hw_uartlin.h:567
#define UARTLIN_CTL_CTSEN
Definition: hw_uartlin.h:876
__STATIC_INLINE void UARTPutCharNonBlocking(uint32_t base, uint8_t data)
Sends a character to the specified port.
Definition: uart.h:399
#define UART_FIFO_RX2_8
Receive interrupt at 1/4 Full.
Definition: uart.h:122
#define UARTLIN_O_RSRECR
Definition: hw_uartlin.h:48
__STATIC_INLINE uint32_t UARTIntStatus(uint32_t base, bool masked)
Gets the current interrupt status.
Definition: uart.h:533
__STATIC_INLINE uint8_t UARTGetCharNonBlocking(uint32_t base)
Receives a character from the specified port.
Definition: uart.h:340
#define UARTLIN_CTL_RTSEN
Definition: hw_uartlin.h:859
__STATIC_INLINE void UARTSetFifoLevel(uint32_t base, uint32_t txLevel, uint32_t rxLevel)
Sets the FIFO level at which interrupts are generated.
Definition: uart.h:171
__STATIC_INLINE void UARTEnableInt(uint32_t base, uint32_t intFlags)
Enables individual UART interrupt sources.
Definition: uart.h:469
#define HWREG(x)
Definition: hw_types.h:78
#define __STATIC_INLINE
Definition: hw_types.h:57
#define UART_FIFO_RX6_8
Receive interrupt at 3/4 Full.
Definition: uart.h:124
#define UARTLIN_O_CTL
Definition: hw_uartlin.h:66
#define UARTLIN_O_MIS
Definition: hw_uartlin.h:78
__STATIC_INLINE void UARTEnableCts(uint32_t base)
Enable CTS flow control.
Definition: uart.h:701
#define UARTLIN_O_FR
Definition: hw_uartlin.h:51
__STATIC_INLINE bool UARTBusy(uint32_t base)
Determines whether the UART transmitter is busy or not.
Definition: uart.h:437
__STATIC_INLINE void UARTDisableFifo(uint32_t base)
Disables the transmit and receive FIFOs.
Definition: uart.h:297
void UARTClockCtrl(uint32_t base, bool clkEnable)
Controls the UART bus clock.
Definition: uart.c:43
__STATIC_INLINE void UARTDisableRts(uint32_t base)
Disable RTS flow control.
Definition: uart.h:749
__STATIC_INLINE void UARTEnableRts(uint32_t base)
Enable RTS flow control.
Definition: uart.h:717
#define UARTLIN_O_RIS
Definition: hw_uartlin.h:75
#define UARTLIN_FR_RXFE
Definition: hw_uartlin.h:358
#define UARTLIN_O_IFLS
Definition: hw_uartlin.h:69
__STATIC_INLINE void UARTClearInt(uint32_t base, uint32_t intFlags)
Clears UART interrupt sources.
Definition: uart.h:588
#define UARTLIN_FR_TXFF
Definition: hw_uartlin.h:373
void UARTDisable(uint32_t base)
Disables transmitting and receiving.
Definition: uart.c:102
#define UARTLIN_O_IMSC
Definition: hw_uartlin.h:72
#define UARTLIN_O_ICR
Definition: hw_uartlin.h:81
#define UARTLIN_FR_BUSY
Definition: hw_uartlin.h:343
__STATIC_INLINE void UARTEnableFifo(uint32_t base)
Enables the transmit and receive FIFOs.
Definition: uart.h:280
#define ASSERT(expr)
Definition: debug.h:81
void UARTPutChar(uint32_t base, uint8_t data)
Waits to send a character to the specified port.
Definition: uart.c:133
#define UART_FIFO_TX6_8
Transmit interrupt at 3/4 Full.
Definition: uart.h:115
__STATIC_INLINE bool UARTSpaceAvailable(uint32_t base)
Determines if there is any space in the transmit FIFO.
Definition: uart.h:375
#define UART_FIFO_TX4_8
Transmit interrupt at 1/2 Full.
Definition: uart.h:114
uint8_t UARTGetChar(uint32_t base)
Waits for a character from the specified port.
Definition: uart.c:119
#define UART_FIFO_RX4_8
Receive interrupt at 1/2 Full.
Definition: uart.h:123
__STATIC_INLINE void UARTEnableDma(uint32_t base, uint32_t dmaFlags)
Enable UART DMA operation.
Definition: uart.h:615
__STATIC_INLINE void UARTDisableInt(uint32_t base, uint32_t intFlags)
Disables individual UART interrupt sources.
Definition: uart.h:500
void UARTEnable(uint32_t base)
Enables transmitting and receiving.
Definition: uart.c:62
__STATIC_INLINE bool UARTCharAvailable(uint32_t base)
Determines if there are any characters in the receive FIFO.
Definition: uart.h:317
#define UART_FIFO_TX2_8
Transmit interrupt at 1/4 Full.
Definition: uart.h:113
void UARTConfigSetExpClk(uint32_t base, uint32_t UARTClkFreq, uint32_t baudFreq, uint32_t config)
Sets the configuration of a UART.
Definition: uart.c:79
#define UARTLIN_O_LCRH
Definition: hw_uartlin.h:63
#define UARTLIN_O_DMACTL
Definition: hw_uartlin.h:84
__STATIC_INLINE void UARTClearRxError(uint32_t base)
Clears all reported receiver errors.
Definition: uart.h:683
__STATIC_INLINE uint32_t UARTGetRxError(uint32_t base)
Gets current receiver errors.
Definition: uart.h:663
#define HWREGB(x)
Definition: hw_types.h:90
__STATIC_INLINE void UARTDisableCts(uint32_t base)
Disable CTS flow control.
Definition: uart.h:733
#define UARTLIN_O_DR
Definition: hw_uartlin.h:45
__STATIC_INLINE void UARTDisableDma(uint32_t base, uint32_t dmaFlags)
Disable UART DMA operation.
Definition: uart.h:638