summaryrefslogtreecommitdiffhomepage
path: root/digital/io/src/move_cb.c
diff options
context:
space:
mode:
authorJérémy Dufour2008-04-24 23:47:40 +0200
committerJérémy Dufour2008-04-24 23:47:40 +0200
commit4d88c551ef61836af59f86ca1dd41c47ed2ead9a (patch)
tree54816330083f6340665b565ac34b3276ee0bb1dc /digital/io/src/move_cb.c
parent457485aebff5c6bbe9e4075dd0f61bbafa9dc8d9 (diff)
* digital/io/src
- when a sub FSM finished, it posts an event for the top FSM which will be notified in the next main loop iteration (rather than the actual one).
Diffstat (limited to 'digital/io/src/move_cb.c')
-rw-r--r--digital/io/src/move_cb.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/digital/io/src/move_cb.c b/digital/io/src/move_cb.c
index 12e10c35..e7069c37 100644
--- a/digital/io/src/move_cb.c
+++ b/digital/io/src/move_cb.c
@@ -10,6 +10,7 @@
#include "move_cb.h"
#include "move.h"
#include "asserv.h"
+#include "main.h" /* main_post_event_for_top_fsm */
/*
* IDLE =start=>
@@ -86,7 +87,7 @@ move__DESIRED_POSITION__blocked (void)
fsm_branch_t
move__DESIRED_POSITION__reached (void)
{
- fsm_handle_event (&top_fsm, TOP_EVENT_move_fsm_finished);
+ main_post_event_for_top_fsm = TOP_EVENT_move_fsm_finished + 1;
return move_next (DESIRED_POSITION, reached);
}