aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2011-07-07 14:47:33 +0000
committerDimitri Sokolyuk <demon@dim13.org>2011-07-07 14:47:33 +0000
commit1629f83ac23cecf52b45778b9e3a9f8e3ca506c7 (patch)
treed75f6de163d5cae7bf947edbdb402713667b94de
parent76557c7175e83be01d3d740e17ef07d675c43365 (diff)
fix stupid deadlock bug
set timeout to 1 sec
-rw-r--r--firmware/firmware.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/firmware/firmware.c b/firmware/firmware.c
index e5f8a97..d8e95a3 100644
--- a/firmware/firmware.c
+++ b/firmware/firmware.c
@@ -19,7 +19,7 @@
#include <util/setbaud.h> /* depends on BAUD & F_CPU env vars */
#include <avr/boot.h>
-#define TIMEOUT (F_CPU >> 3) /* ca. 2 sec */
+#define TIMEOUT (F_CPU / PRESCALE) /* 1 sec */
#define PUTCH(c) do { loop_until_bit_is_set(UCSRA, UDRE); UDR = (c); } while (0)
union {
@@ -46,7 +46,7 @@ main(void)
PUTCH('+'); /* say hallo */
for (;;) {
- for (c = 0; bit_is_clear(UCSRA, RXC); c++);
+ for (c = 0; bit_is_clear(UCSRA, RXC); c++)
if (c > TIMEOUT)
goto reboot;
ch = UDR; /* GETCH */