uart: upgrade C api
This commit is contained in:
20
uart/uart.c
20
uart/uart.c
@@ -1,23 +1,23 @@
|
||||
#include "uart.h"
|
||||
|
||||
int uart_rx_available() {
|
||||
return (*UART_STATUS & UART_STATUS_RXNE_msk) != 0;
|
||||
int uart_rx_available(struct uart* uart) {
|
||||
return uart->flags & UART_STATUS_RXNE_msk != 0;
|
||||
}
|
||||
|
||||
int uart_tx_available() {
|
||||
return (*UART_STATUS & UART_STATUS_TXE_msk) != 0;
|
||||
int uart_tx_available(struct uart* uart) {
|
||||
return uart->flags & UART_STATUS_TXE_msk != 0;
|
||||
}
|
||||
|
||||
void uart_write(const char c) {
|
||||
while (!uart_tx_available()) {
|
||||
void uart_write(struct uart* uart, const char c) {
|
||||
while (!uart_tx_available(uart)) {
|
||||
}
|
||||
|
||||
*UART_DATA = c;
|
||||
uart->data = c;
|
||||
}
|
||||
|
||||
char uart_read() {
|
||||
while (!uart_rx_available()) {
|
||||
char uart_read(struct uart* uart) {
|
||||
while (!uart_rx_available(uart)) {
|
||||
}
|
||||
|
||||
return *UART_DATA;
|
||||
return uart->data;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user