28typedef volatile struct __attribute__((packed,aligned(4))) {
34#define NEORV32_UART0 ((neorv32_uart_t*) (NEORV32_UART0_BASE))
37#define NEORV32_UART1 ((neorv32_uart_t*) (NEORV32_UART1_BASE))
121#define neorv32_uart0_available() neorv32_uart_available(NEORV32_UART0)
122#define neorv32_uart0_get_rx_fifo_depth() neorv32_uart_get_rx_fifo_depth(NEORV32_UART0)
123#define neorv32_uart0_get_tx_fifo_depth() neorv32_uart_get_tx_fifo_depth(NEORV32_UART0)
124#define neorv32_uart0_setup(baudrate, irq_mask) neorv32_uart_setup(NEORV32_UART0, baudrate, irq_mask)
125#define neorv32_uart0_disable() neorv32_uart_disable(NEORV32_UART0)
126#define neorv32_uart0_enable() neorv32_uart_enable(NEORV32_UART0)
127#define neorv32_uart0_rtscts_disable() neorv32_uart_rtscts_disable(NEORV32_UART0)
128#define neorv32_uart0_rtscts_enable() neorv32_uart_rtscts_enable(NEORV32_UART0)
129#define neorv32_uart0_putc(c) neorv32_uart_putc(NEORV32_UART0, c)
130#define neorv32_uart0_rx_clear() neorv32_uart_rx_clear(NEORV32_UART0)
131#define neorv32_uart0_tx_clear() neorv32_uart_tx_clear(NEORV32_UART0)
132#define neorv32_uart0_tx_busy() neorv32_uart_tx_busy(NEORV32_UART0)
133#define neorv32_uart0_getc() neorv32_uart_getc(NEORV32_UART0)
134#define neorv32_uart0_char_received() neorv32_uart_char_received(NEORV32_UART0)
135#define neorv32_uart0_char_received_get() neorv32_uart_char_received_get(NEORV32_UART0)
136#define neorv32_uart0_puts(s) neorv32_uart_puts(NEORV32_UART0, s)
137#define neorv32_uart0_printf(...) neorv32_uart_printf(NEORV32_UART0, __VA_ARGS__)
138#define neorv32_uart0_scan(buffer, max_size, echo) neorv32_uart_scan(NEORV32_UART0, buffer, max_size, echo)
140#define neorv32_uart1_available() neorv32_uart_available(NEORV32_UART1)
141#define neorv32_uart1_get_rx_fifo_depth() neorv32_uart_get_rx_fifo_depth(NEORV32_UART1)
142#define neorv32_uart1_get_tx_fifo_depth() neorv32_uart_get_tx_fifo_depth(NEORV32_UART1)
143#define neorv32_uart1_setup(baudrate, irq_mask) neorv32_uart_setup(NEORV32_UART1, baudrate, irq_mask)
144#define neorv32_uart1_disable() neorv32_uart_disable(NEORV32_UART1)
145#define neorv32_uart1_enable() neorv32_uart_enable(NEORV32_UART1)
146#define neorv32_uart1_rtscts_disable() neorv32_uart_rtscts_disable(NEORV32_UART1)
147#define neorv32_uart1_rtscts_enable() neorv32_uart_rtscts_enable(NEORV32_UART1)
148#define neorv32_uart1_putc(c) neorv32_uart_putc(NEORV32_UART1, c)
149#define neorv32_uart1_rx_clear() neorv32_uart_rx_clear(NEORV32_UART1)
150#define neorv32_uart1_tx_clear() neorv32_uart_tx_clear(NEORV32_UART1)
151#define neorv32_uart1_tx_busy() neorv32_uart_tx_busy(NEORV32_UART1)
152#define neorv32_uart1_getc() neorv32_uart_getc(NEORV32_UART1)
153#define neorv32_uart1_char_received() neorv32_uart_char_received(NEORV32_UART1)
154#define neorv32_uart1_char_received_get() neorv32_uart_char_received_get(NEORV32_UART1)
155#define neorv32_uart1_puts(s) neorv32_uart_puts(NEORV32_UART1, s)
156#define neorv32_uart1_printf(...) neorv32_uart_printf(NEORV32_UART1, __VA_ARGS__)
157#define neorv32_uart1_scan(buffer, max_size, echo) neorv32_uart_scan(NEORV32_UART1, buffer, max_size, echo)
int neorv32_uart_get_tx_fifo_depth(neorv32_uart_t *UARTx)
Definition neorv32_uart.c:124
void neorv32_uart_tx_clear(neorv32_uart_t *UARTx)
Definition neorv32_uart.c:205
char neorv32_uart_getc(neorv32_uart_t *UARTx)
Definition neorv32_uart.c:236
void neorv32_uart_puts(neorv32_uart_t *UARTx, const char *s)
Definition neorv32_uart.c:289
void neorv32_uart_rtscts_enable(neorv32_uart_t *UARTx)
Definition neorv32_uart.c:158
void neorv32_uart_rtscts_disable(neorv32_uart_t *UARTx)
Definition neorv32_uart.c:169
void neorv32_uart_vprintf(neorv32_uart_t *UARTx, const char *format, va_list args)
Definition neorv32_uart.c:311
void neorv32_uart_putc(neorv32_uart_t *UARTx, char c)
Definition neorv32_uart.c:181
void neorv32_uart_setup(neorv32_uart_t *UARTx, uint32_t baudrate, uint32_t irq_mask)
Definition neorv32_uart.c:51
char neorv32_uart_char_received_get(neorv32_uart_t *UARTx)
Definition neorv32_uart.c:275
int neorv32_uart_tx_busy(neorv32_uart_t *UARTx)
Definition neorv32_uart.c:217
void neorv32_uart_printf(neorv32_uart_t *UARTx, const char *format,...)
Definition neorv32_uart.c:386
int neorv32_uart_available(neorv32_uart_t *UARTx)
Definition neorv32_uart.c:30
int neorv32_uart_scan(neorv32_uart_t *UARTx, char *buffer, int max_size, int echo)
Definition neorv32_uart.c:406
NEORV32_UART_CTRL_enum
Definition neorv32_uart.h:40
@ UART_CTRL_BAUD8
Definition neorv32_uart.h:55
@ UART_CTRL_TX_BUSY
Definition neorv32_uart.h:74
@ UART_CTRL_IRQ_TX_EMPTY
Definition neorv32_uart.h:68
@ UART_CTRL_PRSC0
Definition neorv32_uart.h:44
@ UART_CTRL_BAUD1
Definition neorv32_uart.h:48
@ UART_CTRL_RX_NEMPTY
Definition neorv32_uart.h:58
@ UART_CTRL_BAUD2
Definition neorv32_uart.h:49
@ UART_CTRL_TX_FULL
Definition neorv32_uart.h:63
@ UART_CTRL_EN
Definition neorv32_uart.h:41
@ UART_CTRL_RX_HALF
Definition neorv32_uart.h:59
@ UART_CTRL_TX_CLR
Definition neorv32_uart.h:72
@ UART_CTRL_SIM_MODE
Definition neorv32_uart.h:42
@ UART_CTRL_RX_FULL
Definition neorv32_uart.h:60
@ UART_CTRL_IRQ_RX_NEMPTY
Definition neorv32_uart.h:65
@ UART_CTRL_BAUD3
Definition neorv32_uart.h:50
@ UART_CTRL_TX_NHALF
Definition neorv32_uart.h:62
@ UART_CTRL_BAUD5
Definition neorv32_uart.h:52
@ UART_CTRL_BAUD9
Definition neorv32_uart.h:56
@ UART_CTRL_IRQ_TX_NHALF
Definition neorv32_uart.h:69
@ UART_CTRL_RX_OVER
Definition neorv32_uart.h:73
@ UART_CTRL_BAUD4
Definition neorv32_uart.h:51
@ UART_CTRL_PRSC2
Definition neorv32_uart.h:46
@ UART_CTRL_BAUD6
Definition neorv32_uart.h:53
@ UART_CTRL_BAUD7
Definition neorv32_uart.h:54
@ UART_CTRL_PRSC1
Definition neorv32_uart.h:45
@ UART_CTRL_IRQ_RX_HALF
Definition neorv32_uart.h:66
@ UART_CTRL_TX_EMPTY
Definition neorv32_uart.h:61
@ UART_CTRL_HWFC_EN
Definition neorv32_uart.h:43
@ UART_CTRL_BAUD0
Definition neorv32_uart.h:47
@ UART_CTRL_IRQ_RX_FULL
Definition neorv32_uart.h:67
@ UART_CTRL_RX_CLR
Definition neorv32_uart.h:71
NEORV32_UART_DATA_enum
Definition neorv32_uart.h:78
@ UART_DATA_RTX_MSB
Definition neorv32_uart.h:80
@ UART_DATA_RX_FIFO_SIZE_LSB
Definition neorv32_uart.h:82
@ UART_DATA_TX_FIFO_SIZE_LSB
Definition neorv32_uart.h:85
@ UART_DATA_RX_FIFO_SIZE_MSB
Definition neorv32_uart.h:83
@ UART_DATA_TX_FIFO_SIZE_MSB
Definition neorv32_uart.h:86
@ UART_DATA_RTX_LSB
Definition neorv32_uart.h:79
int neorv32_uart_char_received(neorv32_uart_t *UARTx)
Definition neorv32_uart.c:255
void neorv32_uart_disable(neorv32_uart_t *UARTx)
Definition neorv32_uart.c:147
int neorv32_uart_get_rx_fifo_depth(neorv32_uart_t *UARTx)
Definition neorv32_uart.c:110
void neorv32_uart_enable(neorv32_uart_t *UARTx)
Definition neorv32_uart.c:136
void neorv32_uart_rx_clear(neorv32_uart_t *UARTx)
Definition neorv32_uart.c:194
Definition neorv32_uart.h:28
uint32_t CTRL
Definition neorv32_uart.h:29
uint32_t DATA
Definition neorv32_uart.h:30