From 0514cc5d10ef8223a784aa4193122369ba020ae7 Mon Sep 17 00:00:00 2001 From: tTh Date: Wed, 12 Dec 2018 16:06:18 +0100 Subject: [PATCH] added a small test prg for serial in --- .gitignore | 2 +- serial/Makefile | 9 +++++++++ serial/serial.c | 18 ++++++++++++++++++ serial/serial.h | 2 ++ serial/t.c | 21 +++++++++++++++++++++ 5 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 serial/Makefile create mode 100644 serial/t.c diff --git a/.gitignore b/.gitignore index b678af8..47d4df6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,7 @@ a.out *.o fake-values -essai +essai serail/t doc/*.toc doc/*.log doc/*.aux doc/*.pdf diff --git a/serial/Makefile b/serial/Makefile new file mode 100644 index 0000000..3af2ad8 --- /dev/null +++ b/serial/Makefile @@ -0,0 +1,9 @@ + + + +serial.o: serial.c serial.h Makefile + gcc -Wall -c $< + +t: t.c serial.o Makefile + gcc -Wall $< serial.o -o $@ + diff --git a/serial/serial.c b/serial/serial.c index d38f6c8..87dd3d9 100644 --- a/serial/serial.c +++ b/serial/serial.c @@ -96,3 +96,21 @@ tcsetattr(uart0, TCSANOW, &options); return uart0; } + +/* -------------------------------------------------------------------- */ + +int getbyte(int fd) +{ +unsigned char byte; +int foo; + +foo = read(fd, &byte, 1); +if (1 != foo) + { + perror("read a byte"); + return -1; + } +return (int)byte; +} + +/* -------------------------------------------------------------------- */ diff --git a/serial/serial.h b/serial/serial.h index bfec248..3bafcb5 100644 --- a/serial/serial.h +++ b/serial/serial.h @@ -4,3 +4,5 @@ int prepare_UART(char *port, int bauds); +int getbyte(int fd); + diff --git a/serial/t.c b/serial/t.c new file mode 100644 index 0000000..b912596 --- /dev/null +++ b/serial/t.c @@ -0,0 +1,21 @@ + + +#include + +#include "serial.h" + +int main (int argc, char *argv[]) +{ +int serial_in; +int byte, foo; + +serial_in = prepare_UART("/dev/ttyS0", 9600); +fprintf(stderr, "prepare uart -> %d\n", serial_in); + +for (foo=0; foo<20; foo++) { + byte = getbyte(serial_in); + printf("%6d %02x\n", foo, byte); + } + +return 0; +}