55 lines
953 B
C
55 lines
953 B
C
#include "uart.h"
|
|
|
|
#include <stdint.h>
|
|
|
|
void write_cstring(const char* string);
|
|
void write_char(char c);
|
|
|
|
|
|
int main() {
|
|
for (;;) {
|
|
write_char('H');
|
|
write_char('e');
|
|
write_char('l');
|
|
write_char('l');
|
|
write_char('o');
|
|
write_char(' ');
|
|
write_char('W');
|
|
write_char('o');
|
|
write_char('r');
|
|
write_char('l');
|
|
write_char('d');
|
|
write_char('!');
|
|
write_char('\n');
|
|
write_char('\r');
|
|
}
|
|
}
|
|
|
|
|
|
void write_char(char c) {
|
|
while (!UART0->TXEMPTY);
|
|
|
|
// Wait for room to clear up
|
|
if (!UART0->TXFULL) {
|
|
UART0->RXTX = c;
|
|
}
|
|
}
|
|
void write_cstring(const char* string) {
|
|
int i = 0;
|
|
|
|
for (;;) {
|
|
// Return at end of string
|
|
if (string[i] == 0) {
|
|
return;
|
|
}
|
|
|
|
// Wait for room to clear up
|
|
if (!UART0->TXFULL) {
|
|
UART0->RXTX = string[i];
|
|
}
|
|
|
|
i += 1;
|
|
}
|
|
|
|
}
|