From b1959555b08160d906e8514ed2db1c6fd56a8582 Mon Sep 17 00:00:00 2001 From: Nicolas Schodet Date: Tue, 15 May 2012 16:00:05 +0200 Subject: digital/io-hub/src/guybrush: add global demo mode flag --- digital/io-hub/src/guybrush/bottom_clamp.c | 2 +- digital/io-hub/src/guybrush/main.c | 3 +++ digital/io-hub/src/guybrush/main.h | 2 ++ digital/io-hub/src/guybrush/top.c | 2 ++ 4 files changed, 8 insertions(+), 1 deletion(-) (limited to 'digital/io-hub/src/guybrush') diff --git a/digital/io-hub/src/guybrush/bottom_clamp.c b/digital/io-hub/src/guybrush/bottom_clamp.c index f23d929d..0fb1e24b 100644 --- a/digital/io-hub/src/guybrush/bottom_clamp.c +++ b/digital/io-hub/src/guybrush/bottom_clamp.c @@ -304,7 +304,7 @@ FSM_TRANS (CLAMP_INIT_HIDE_CLAMP, lower_clamp_rotation_success, demo_start,CLAMP_GOING_IDLE) { /*Looking if we are in demo mode or normal mode*/ - if (IO_GET(CONTACT_STRAT)) + if (!main_demo) return FSM_NEXT (CLAMP_INIT_HIDE_CLAMP,lower_clamp_rotation_success,normal_start); else return FSM_NEXT (CLAMP_INIT_HIDE_CLAMP,lower_clamp_rotation_success,demo_start); diff --git a/digital/io-hub/src/guybrush/main.c b/digital/io-hub/src/guybrush/main.c index 797d83f6..be551e9a 100644 --- a/digital/io-hub/src/guybrush/main.c +++ b/digital/io-hub/src/guybrush/main.c @@ -72,6 +72,9 @@ vect_t main_obstacles_pos[2]; /** Number of obstacles in main_obstacles_pos. */ uint8_t main_obstacles_nb; +/** Global demo mode flag. */ +uint8_t main_demo; + /** FSM debug mode. */ enum { diff --git a/digital/io-hub/src/guybrush/main.h b/digital/io-hub/src/guybrush/main.h index 1be4d3c7..e4af6747 100644 --- a/digital/io-hub/src/guybrush/main.h +++ b/digital/io-hub/src/guybrush/main.h @@ -27,6 +27,8 @@ extern vect_t main_obstacles_pos[2]; extern uint8_t main_obstacles_nb; +extern uint8_t main_demo; + void main_set_drop_coin_pos(int); #endif /* main_h */ diff --git a/digital/io-hub/src/guybrush/top.c b/digital/io-hub/src/guybrush/top.c index ffd96767..28ca6dd0 100644 --- a/digital/io-hub/src/guybrush/top.c +++ b/digital/io-hub/src/guybrush/top.c @@ -32,6 +32,7 @@ #define FSM_NAME AI #include "fsm.h" +#include "main.h" #include "move.h" #include "chrono.h" #include "contact.h" @@ -203,6 +204,7 @@ top_decision (void) FSM_TRANS (TOP_START, init_actuators, TOP_INIT_DOOR) { + main_demo = !IO_GET (CONTACT_STRAT); IO_SET (OUTPUT_DOOR_OPEN); IO_CLR (OUTPUT_DOOR_CLOSE); return FSM_NEXT (TOP_START, init_actuators); -- cgit v1.2.3