]> git.friedersdorff.com Git - max/lanthanide_pdu.git/blob - uart.c
Fix syntax errors
[max/lanthanide_pdu.git] / uart.c
1 #include "uart.h"
2 #include "hardware/uart.h"
3
4 bool is_whitespace(char character) {
5     switch (character) {
6         case ' ' :
7         case '\n' :
8         case '\t' :
9             return true;
10         default :
11             return false;
12     }
13 }
14
15 void read_word(uart_inst_t *uart, char *buffer, int buffersize, bool *eol) {
16     for (uint i = 0; i < (buffersize - 1); ++i) {
17         buffer[i] = uart_getc(uart);
18         if (is_whitespace(buffer[i])) {
19             buffer[i + 1] = '\0';
20         }
21     }
22
23     char last_char;
24     do {
25         last_char = uart_getc(uart);
26     } while (is_whitespace(last_char));
27
28     buffer[buffersize - 1] = '\0';
29 }
30
31 void finish_line(uart_inst_t *uart) {
32     char last_char;
33     do {
34         last_char = uart_getc(uart);
35     } while (last_char != '\n');
36 }