X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=src%2Fteleshield-v0.1%2Fao_ardu_serial.c;h=535cc624e575a387ac094852a24d69fc45d7d5f4;hp=7d4dc0db83756f14dd0d7b8945b0792fced0b49c;hb=382b3ef62a09e580834b07faf9ed2d00e5ce1621;hpb=7a42f2e0f145d2d520aed8e241fa39f7cb62b19f diff --git a/src/teleshield-v0.1/ao_ardu_serial.c b/src/teleshield-v0.1/ao_ardu_serial.c index 7d4dc0db..535cc624 100644 --- a/src/teleshield-v0.1/ao_ardu_serial.c +++ b/src/teleshield-v0.1/ao_ardu_serial.c @@ -3,7 +3,8 @@ * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; version 2 of the License. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of @@ -23,6 +24,8 @@ ao_ardu_serial_recv(void) char c; for (;;) { + if (ao_fifo_empty(ao_serial0_rx_fifo)) + flush(); c = ao_serial0_getchar(); putchar (c); } @@ -33,6 +36,5 @@ static __xdata struct ao_task ao_ardu_serial_recv_task; void ao_ardu_serial_init (void) { - ao_serial0_init(); ao_add_task(&ao_ardu_serial_recv_task, ao_ardu_serial_recv, "recv"); }