summaryrefslogtreecommitdiffhomepage
path: root/digital/io/src/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'digital/io/src/main.c')
-rw-r--r--digital/io/src/main.c29
1 files changed, 26 insertions, 3 deletions
diff --git a/digital/io/src/main.c b/digital/io/src/main.c
index fd5b720c..c623eea5 100644
--- a/digital/io/src/main.c
+++ b/digital/io/src/main.c
@@ -43,7 +43,7 @@
#include "fsm.h" /* fsm_* */
#include "giboulee.h" /* team_color */
#include "getsamples.h" /* getsamples_start */
-#include "top.h" /* top_* */
+/* #include "top.h" */ /* top_* */
#include "chrono.h" /* chrono_end_match */
#include "gutter.h" /* gutter_generate_wait_finished_event */
#include "sharp.h" /* sharp module */
@@ -147,7 +147,9 @@ main_init (void)
path_init (PG_BORDER_DISTANCE, PG_BORDER_DISTANCE,
PG_WIDTH - PG_BORDER_DISTANCE, PG_HEIGHT - PG_BORDER_DISTANCE);
/* Start the top FSM */
- top_start ();
+ //top_start ();
+ fsm_init(&top_fsm);
+ fsm_handle_event (&top_fsm, TOP_EVENT_start);
/* Sharp module */
sharp_init ();
/* PWM module */
@@ -237,8 +239,10 @@ main_loop (void)
/* Update main */
uint8_t main_asserv_arm_position_reached = asserv_arm_position_reached ();
+ /*
uint8_t main_top_generate_settings_ack_event = top_generate_settings_ack_event ();
uint8_t main_gutter_generate_wait_finished_event = gutter_generate_wait_finished_event ();
+ */
asserv_status_e move_status = asserv_last_cmd_ack ()
? asserv_move_cmd_status () : none;
@@ -246,22 +250,26 @@ main_loop (void)
if (move_status == success)
{
/* Pass it to all the FSM that need it */
+ /*
FSM_HANDLE_EVENT (&getsamples_fsm,
GETSAMPLES_EVENT_bot_move_succeed);
FSM_HANDLE_EVENT (&gutter_fsm,
GUTTER_EVENT_bot_move_succeed);
+ */
FSM_HANDLE_EVENT (&move_fsm,
MOVE_EVENT_bot_move_succeed);
}
else if (move_status == failure)
{
/* Move failed */
+ /*
FSM_HANDLE_EVENT (&getsamples_fsm,
GETSAMPLES_EVENT_bot_move_failed);
FSM_HANDLE_EVENT (&getsamples_fsm,
GETSAMPLES_EVENT_bot_move_succeed);
FSM_HANDLE_EVENT (&gutter_fsm,
GUTTER_EVENT_bot_move_failed);
+ */
FSM_HANDLE_EVENT (&move_fsm,
MOVE_EVENT_bot_move_failed);
}
@@ -271,8 +279,10 @@ main_loop (void)
if (arm_status == success)
{
/* Pass it to all the FSM that need it */
+ /*
FSM_HANDLE_EVENT (&getsamples_fsm,
GETSAMPLES_EVENT_arm_move_succeed);
+ */
}
/* TODO: Check if the sensor placed at the noted position has seen
* an arm passed and forward this event to the getsamples FSM */
@@ -280,23 +290,34 @@ main_loop (void)
{
/* Reset the notifier */
asserv_arm_set_position_reached (0);
+ /*
FSM_HANDLE_EVENT (&getsamples_fsm,
GETSAMPLES_EVENT_arm_pass_noted_position);
+ */
}
/* Jack */
FSM_HANDLE_EVENT (&top_fsm, switch_get_jack () ?
TOP_EVENT_jack_removed_from_bot :
TOP_EVENT_jack_inserted_into_bot);
+ /*FSM_HANDLE_EVENT (&top_fsm, switch_get_jack () ?
+ TOP_EVENT_jack_removed_from_bot :
+ TOP_EVENT_jack_inserted_into_bot);
+ */
/* Settings acknowledge */
+ /*
if (main_top_generate_settings_ack_event)
{
FSM_HANDLE_EVENT (&top_fsm, TOP_EVENT_settings_acknowledged);
}
+ */
+ FSM_HANDLE_EVENT (&top_fsm, TOP_EVENT_settings_acknowledged);
/* Gutter wait_finished event */
+ /*
if (main_gutter_generate_wait_finished_event)
{
FSM_HANDLE_EVENT (&gutter_fsm, GUTTER_EVENT_wait_finished);
}
+ */
/* Event generated at the end of the sub FSM to post to the top FSM */
if (main_post_event_for_top_fsm != 0xFF)
{
@@ -335,8 +356,10 @@ main_loop (void)
/* Wait flag for getsamples FSM */
if (!main_getsamples_wait_cycle)
{
+ /*
FSM_HANDLE_EVENT (&getsamples_fsm,
GETSAMPLES_EVENT_wait_finished);
+ */
}
/* TODO: Check other sensors */
}
@@ -537,7 +560,7 @@ proto_callback (uint8_t cmd, uint8_t size, uint8_t *args)
* - 1b: the approach angle to face the distributor ;
* - 1b: how many and where to put collected samples ;
*/
- getsamples_start (args[0] << 8, args[1], 0);
+ /* getsamples_start (args[0] << 8, args[1], 0); */
break;
case c ('A', 1):