]> git.itanic.dy.fi Git - log-plotter/blob - main.c
b4a4c8fb635b2f813e23f4e6a43a403ae12abbdd
[log-plotter] / main.c
1 #include <stdio.h>
2 #include <unistd.h>
3
4 #include "baud.h"
5
6 int main(int argc, char *argv[])
7 {
8         int fd, baud, ret;
9         char *device;
10         char buf[256];
11
12         if (argc < 2) {
13                 printf("Usage: %s SERIAL_DEVICE\n", argv[0]);
14                 return 1;
15         }
16
17         baud = 128000;
18         device = argv[1];
19
20         fd = open_at_baud(device, &baud);
21         if (fd < 0)
22                 return 1;
23
24         if (baud != 128000) {
25                 printf("Failed to set baudrate to 128000, only got %d\n", baud);
26                 close(fd);
27                 return 1;
28         }
29
30         while (1) {
31                 ret = read(fd, buf, sizeof(buf));
32                 if (read < 0) {
33                         perror("read");
34                         break;
35                 }
36
37                 if (read == 0)
38                         break;
39
40                 ret = write(1, buf, ret);
41                 if (read < 0) {
42                         perror("write");
43                         break;
44                 }
45         }
46
47         close(fd);
48         return 0;
49 }