summaryrefslogtreecommitdiff
path: root/digital/asserv/src/asserv/cs.c
diff options
context:
space:
mode:
authorNicolas Schodet2012-05-14 20:54:52 +0200
committerNicolas Schodet2012-05-14 23:41:41 +0200
commit4b954db9a8bc6eeccf14a39178aa0fa7536b72c9 (patch)
treed4d9bd004a4c9bd7a929ea7b2e1804449b78615f /digital/asserv/src/asserv/cs.c
parent175669b647f26fefc2f7a863e112b1c8bb11ecf3 (diff)
digital/asserv, digital/mimot: stop outputs before reset
Diffstat (limited to 'digital/asserv/src/asserv/cs.c')
-rw-r--r--digital/asserv/src/asserv/cs.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/digital/asserv/src/asserv/cs.c b/digital/asserv/src/asserv/cs.c
index fe15c5d2..826c2d3c 100644
--- a/digital/asserv/src/asserv/cs.c
+++ b/digital/asserv/src/asserv/cs.c
@@ -93,3 +93,23 @@ cs_update (void)
#endif
}
+void
+cs_reset (void)
+{
+ output_set (&output_left, 0);
+ output_set (&output_right, 0);
+ output_brake (&output_left, 0);
+ output_brake (&output_right, 0);
+ control_state_set_mode (&cs_main.state, CS_MODE_NONE, 0);
+#if AC_ASSERV_AUX_NB
+ uint8_t i;
+ for (i = 0; i < AC_ASSERV_AUX_NB; i++)
+ {
+ output_set (&output_aux[i], 0);
+ output_brake (&output_aux[i], 0);
+ control_state_set_mode (&cs_aux[i].state, CS_MODE_NONE, 0);
+ }
+#endif
+ output_update ();
+}
+