summaryrefslogtreecommitdiff
path: root/lightctrl.c
diff options
context:
space:
mode:
authorDavid Lamparter <equinox@diac24.net>2012-09-22 23:02:15 +0200
committerDavid Lamparter <equinox@diac24.net>2012-09-22 23:02:15 +0200
commit6966eb287f160c68c597105e60b191806a63b9ba (patch)
tree1f91368d1dd2dc5009322a7a7910e5da49d08773 /lightctrl.c
parent415ca2037b3cefc64ee59279950fe85fa679e3cd (diff)
can: handle interrupt asynchronously
Diffstat (limited to 'lightctrl.c')
-rw-r--r--lightctrl.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/lightctrl.c b/lightctrl.c
index 2a82ad3..e901714 100644
--- a/lightctrl.c
+++ b/lightctrl.c
@@ -223,15 +223,12 @@ int main(void)
while (1) {
wdt_reset();
- if (canint) {
- canint = false;
- can_int();
- if (can_rx_addr.b[0]) {
- can_rx_exec();
- can_rx_addr.u = 0;
- }
+ if (can_rx_avail()) {
+ can_rx_exec();
+ can_rx_pop();
}
+
_delay_ms(5);
do_tick();