From 31f85163b5981a78a2b6704168d0ae12929b53be Mon Sep 17 00:00:00 2001 From: Nicolas Schodet Date: Tue, 31 May 2011 09:39:16 +0200 Subject: digital/mimot: better find zero/limit --- digital/mimot/src/dirty/main.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'digital/mimot/src/dirty/main.c') diff --git a/digital/mimot/src/dirty/main.c b/digital/mimot/src/dirty/main.c index 5dcfd8c7..2b55259b 100644 --- a/digital/mimot/src/dirty/main.c +++ b/digital/mimot/src/dirty/main.c @@ -287,15 +287,22 @@ proto_callback (uint8_t cmd, uint8_t size, uint8_t *args) aux_traj_clamp_start (auxp, args[1], v8_to_v16 (args[2], args[3]), args[4]); break; - case c ('y', 3): + case c ('y', 6): /* Auxiliary find zero. * - b: aux index. * - b: speed. + * - b: use switch. + * - w: reset position. * - b: sequence number. */ if (!auxp) { proto_send0 ('?'); return; } - if (args[2] == state->sequence) + if (args[5] == state->sequence) break; - aux_traj_find_limit_start (auxp, args[1], args[2]); + if (args[2]) + aux_traj_find_zero_start (auxp, args[1], + v8_to_v16 (args[3], args[4]), args[5]); + else + aux_traj_find_limit_start (auxp, args[1], + v8_to_v16 (args[3], args[4]), args[5]); break; case c ('a', 2): /* Set all acknoledge. -- cgit v1.2.3