robot

Dependencies:   FastPWM3 mbed

Committer:
bwang
Date:
Sat Feb 10 06:35:52 2018 +0000
Revision:
196:7172e6e28867
Parent:
186:c18db1e31da6
Child:
200:4999d5e6c63d
02/10/2017 01:35 - can now switch command source to terminal, added 'clear' command (which clears the screen on POSIX-compliant terminals)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bwang 181:d3510c8beab6 1 #include "mbed.h"
bwang 181:d3510c8beab6 2 #include "CommandProcessor.h"
bwang 181:d3510c8beab6 3 #include "PreferenceWriter.h"
bwang 181:d3510c8beab6 4
bwang 181:d3510c8beab6 5 #include "prefs.h"
bwang 181:d3510c8beab6 6 #include "globals.h"
bwang 181:d3510c8beab6 7
bwang 196:7172e6e28867 8 #include "hardware.h"
bwang 185:5c102874b490 9 #include "defaults.h"
bwang 185:5c102874b490 10 #include "derived.h"
bwang 181:d3510c8beab6 11
bwang 181:d3510c8beab6 12 void cmd_setp(Serial *pc, char *buf) {
bwang 181:d3510c8beab6 13 if (BREMS_src == CMD_SRC_TERMINAL) control.user_cmd = atof(buf);
bwang 181:d3510c8beab6 14 }
bwang 181:d3510c8beab6 15
bwang 181:d3510c8beab6 16 void cmd_mode(Serial *pc, char *buf) {
bwang 181:d3510c8beab6 17 int n = str_to_mode(buf);
bwang 181:d3510c8beab6 18 if (n < 0) {
bwang 181:d3510c8beab6 19 pc->printf("%s\n", "Invalid Mode");
bwang 181:d3510c8beab6 20 return;
bwang 181:d3510c8beab6 21 }
bwang 181:d3510c8beab6 22 BREMS_mode = n;
bwang 181:d3510c8beab6 23 pc->printf("Set mode to %s\n", mode_to_str(n));
bwang 181:d3510c8beab6 24 }
bwang 181:d3510c8beab6 25
bwang 181:d3510c8beab6 26 void cmd_src(Serial *pc, char *buf) {
bwang 181:d3510c8beab6 27 int n = str_to_src(buf);
bwang 181:d3510c8beab6 28 if (n < 0) {
bwang 181:d3510c8beab6 29 pc->printf("%s\n", "Invalid Source");
bwang 181:d3510c8beab6 30 return;
bwang 181:d3510c8beab6 31 }
bwang 181:d3510c8beab6 32 BREMS_src = n;
bwang 181:d3510c8beab6 33 pc->printf("Set source to %s\n", src_to_str(n));
bwang 181:d3510c8beab6 34 }
bwang 181:d3510c8beab6 35
bwang 181:d3510c8beab6 36 void cmd_op(Serial *pc, char *buf) {
bwang 181:d3510c8beab6 37 int n = str_to_op(buf);
bwang 181:d3510c8beab6 38 if (n < 0) {
bwang 181:d3510c8beab6 39 pc->printf("%s\n", "Invalid Source");
bwang 181:d3510c8beab6 40 return;
bwang 181:d3510c8beab6 41 }
bwang 181:d3510c8beab6 42 BREMS_op = n;
bwang 181:d3510c8beab6 43 pc->printf("Set operation to %s\n", op_to_str(n));
bwang 181:d3510c8beab6 44 }
bwang 181:d3510c8beab6 45
bwang 181:d3510c8beab6 46 void cmd_exit(Serial *pc) {
bwang 181:d3510c8beab6 47 BREMS_mode = MODE_RUN;
bwang 181:d3510c8beab6 48 pc->printf("%s\n", "Run mode ON");
bwang 181:d3510c8beab6 49 }