uart: upgrade C api
This commit is contained in:
17
uart/uart.h
17
uart/uart.h
@@ -1,13 +1,16 @@
|
||||
#define UART_BASE 0xc010
|
||||
#define UART_DATA ((volatile char*) (UART_BASE + 0x00))
|
||||
#define UART_STATUS ((volatile char*) (UART_BASE + 0x02))
|
||||
#pragma once
|
||||
|
||||
#define UART_STATUS_RXNE_pos 1
|
||||
#define UART_STATUS_RXNE_msk (1 << UART_STATUS_RXNE_pos)
|
||||
#define UART_STATUS_TXE_pos 0
|
||||
#define UART_STATUS_TXE_msk (1 << UART_STATUS_TXE_pos)
|
||||
|
||||
int uart_rx_available();
|
||||
int uart_tx_available();
|
||||
void uart_write(const char c);
|
||||
char uart_read();
|
||||
struct uart {
|
||||
volatile uint8_t data;
|
||||
volatile uint16_t flags;
|
||||
};
|
||||
|
||||
int uart_rx_available(struct uart* uart);
|
||||
int uart_tx_available(struct uart* uart);
|
||||
void uart_write(struct uart* uart, const char c);
|
||||
char uart_read(struct uart* uart);
|
||||
|
||||
Reference in New Issue
Block a user