summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Schodet2012-04-12 01:12:34 +0200
committerNicolas Schodet2012-04-12 01:12:34 +0200
commit1ae19c087d9a6814622cb1abf9ffe34f1e8c5f55 (patch)
treef342bf19a2f04a5a93a2b834440de9d99c8f2724
parent6aa0c014072a6f1bc9decd4c1ed73a8eced50018 (diff)
digital/mimot/src/dirty: add brake control
-rw-r--r--digital/mimot/src/dirty/main.c9
-rw-r--r--digital/mimot/src/dirty/twi_proto.c1
2 files changed, 10 insertions, 0 deletions
diff --git a/digital/mimot/src/dirty/main.c b/digital/mimot/src/dirty/main.c
index ace9864b..af61a5a3 100644
--- a/digital/mimot/src/dirty/main.c
+++ b/digital/mimot/src/dirty/main.c
@@ -224,6 +224,15 @@ proto_callback (uint8_t cmd, uint8_t size, uint8_t *args)
output_set (output, v8_to_v16 (args[1], args[2]));
control_state_set_mode (state, CS_MODE_NONE, 0);
break;
+ case c ('b', 2):
+ /* Set brake and set zero auxiliary pwm.
+ * - b: aux index.
+ * - b: brake (1) or not (0). */
+ if (!auxp) { proto_send0 ('?'); return; }
+ output_brake (output, args[1]);
+ output_set (output, 0);
+ control_state_set_mode (state, CS_MODE_NONE, 0);
+ break;
case c ('c', 3):
/* Add to auxiliary position consign.
* - b: aux index.
diff --git a/digital/mimot/src/dirty/twi_proto.c b/digital/mimot/src/dirty/twi_proto.c
index e5ce353d..5398815f 100644
--- a/digital/mimot/src/dirty/twi_proto.c
+++ b/digital/mimot/src/dirty/twi_proto.c
@@ -159,6 +159,7 @@ twi_proto_callback (u8 *buf, u8 size)
if (buf[2] < AC_ASSERV_AUX_NB)
{
output_set (&output_aux[buf[2]], 0);
+ output_brake (&output_aux[buf[2]], 0);
control_state_set_mode (&cs_aux[buf[2]].state, CS_MODE_NONE, 0);
}
else