P542-Labs / Mbed 2 deprecated Lab1

Dependencies:   mbed

Committer:
uswickra
Date:
Thu Sep 04 08:07:29 2014 +0000
Revision:
10:08462822ab8e
Parent:
3:ec4615b81eeb
Child:
11:4eeb2271143a
fix help msg

Who changed what in which revision?

UserRevisionLine numberNew contents of line
uswickra 2:04d8e2ad8cff 1 #pragma once
uswickra 0:ece62a42511f 2 extern Serial pc;
uswickra 2:04d8e2ad8cff 3
uswickra 0:ece62a42511f 4 extern DigitalOut led1;
uswickra 0:ece62a42511f 5 extern DigitalOut led2;
uswickra 0:ece62a42511f 6 extern DigitalOut led3;
uswickra 0:ece62a42511f 7 extern DigitalOut led4;
uswickra 0:ece62a42511f 8
uswickra 2:04d8e2ad8cff 9 class Cmd
uswickra 2:04d8e2ad8cff 10 {
uswickra 0:ece62a42511f 11 protected:
uswickra 0:ece62a42511f 12 char* cmd_name;
uswickra 2:04d8e2ad8cff 13 void newline(){
uswickra 2:04d8e2ad8cff 14 pc.putc(0x0d);
uswickra 2:04d8e2ad8cff 15 pc.putc(0x0a);
uswickra 2:04d8e2ad8cff 16 }
uswickra 0:ece62a42511f 17
uswickra 0:ece62a42511f 18 public:
uswickra 2:04d8e2ad8cff 19 virtual void execute(int arg_val) {
uswickra 2:04d8e2ad8cff 20 newline();
uswickra 2:04d8e2ad8cff 21 pc.puts("ERR");
uswickra 2:04d8e2ad8cff 22 }
uswickra 2:04d8e2ad8cff 23
uswickra 2:04d8e2ad8cff 24 char* get_name() {
uswickra 2:04d8e2ad8cff 25 return cmd_name;
uswickra 0:ece62a42511f 26 };
uswickra 0:ece62a42511f 27 };
uswickra 0:ece62a42511f 28
uswickra 2:04d8e2ad8cff 29 class Led_On_Cmd: public Cmd
uswickra 2:04d8e2ad8cff 30 {
uswickra 0:ece62a42511f 31 public:
uswickra 2:04d8e2ad8cff 32 Led_On_Cmd() {
uswickra 0:ece62a42511f 33 cmd_name = "LON";
uswickra 0:ece62a42511f 34 }
uswickra 2:04d8e2ad8cff 35
uswickra 2:04d8e2ad8cff 36 void execute(int arg_val) {
uswickra 2:04d8e2ad8cff 37 newline();
uswickra 3:ec4615b81eeb 38
uswickra 2:04d8e2ad8cff 39 if(arg_val == 1) {
uswickra 0:ece62a42511f 40 led1 = 1;
uswickra 3:ec4615b81eeb 41 pc.puts("OK");
uswickra 2:04d8e2ad8cff 42 } else if (arg_val == 2) {
uswickra 0:ece62a42511f 43 led2 = 1;
uswickra 3:ec4615b81eeb 44 pc.puts("OK");
uswickra 2:04d8e2ad8cff 45 } else if (arg_val == 3) {
uswickra 0:ece62a42511f 46 led3 = 1;
uswickra 3:ec4615b81eeb 47 pc.puts("OK");
uswickra 2:04d8e2ad8cff 48 } else if (arg_val == 4) {
uswickra 0:ece62a42511f 49 led4 = 1;
uswickra 3:ec4615b81eeb 50 pc.puts("OK");
uswickra 2:04d8e2ad8cff 51 }
uswickra 2:04d8e2ad8cff 52 }
uswickra 0:ece62a42511f 53 };
uswickra 0:ece62a42511f 54
uswickra 2:04d8e2ad8cff 55 class Led_Off_Cmd: public Cmd
uswickra 2:04d8e2ad8cff 56 {
uswickra 0:ece62a42511f 57 public:
uswickra 2:04d8e2ad8cff 58 Led_Off_Cmd() {
uswickra 0:ece62a42511f 59 cmd_name = "LOF";
uswickra 0:ece62a42511f 60 }
uswickra 2:04d8e2ad8cff 61
uswickra 2:04d8e2ad8cff 62 void execute(int arg_val) {
uswickra 2:04d8e2ad8cff 63 newline();
uswickra 3:ec4615b81eeb 64
uswickra 2:04d8e2ad8cff 65 if(arg_val == 1) {
uswickra 0:ece62a42511f 66 led1 = 0;
uswickra 3:ec4615b81eeb 67 pc.puts("OK");
uswickra 2:04d8e2ad8cff 68 } else if (arg_val == 2) {
uswickra 0:ece62a42511f 69 led2 = 0;
uswickra 3:ec4615b81eeb 70 pc.puts("OK");
uswickra 2:04d8e2ad8cff 71 } else if (arg_val == 3) {
uswickra 0:ece62a42511f 72 led3 = 0;
uswickra 3:ec4615b81eeb 73 pc.puts("OK");
uswickra 2:04d8e2ad8cff 74 } else if (arg_val == 4) {
uswickra 0:ece62a42511f 75 led4 = 0;
uswickra 3:ec4615b81eeb 76 pc.puts("OK");
uswickra 0:ece62a42511f 77 }
uswickra 2:04d8e2ad8cff 78 }
uswickra 0:ece62a42511f 79 };
uswickra 2:04d8e2ad8cff 80
uswickra 2:04d8e2ad8cff 81
uswickra 2:04d8e2ad8cff 82 class Help_cmd: public Cmd
uswickra 2:04d8e2ad8cff 83 {
uswickra 2:04d8e2ad8cff 84 public:
uswickra 2:04d8e2ad8cff 85 Help_cmd() {
uswickra 2:04d8e2ad8cff 86 cmd_name = "help";
uswickra 2:04d8e2ad8cff 87 }
uswickra 2:04d8e2ad8cff 88
uswickra 2:04d8e2ad8cff 89 void execute(int arg_val) {
uswickra 2:04d8e2ad8cff 90 newline();
uswickra 2:04d8e2ad8cff 91 pc.puts("Usage : ");
uswickra 2:04d8e2ad8cff 92 newline();
uswickra 10:08462822ab8e 93 pc.puts("LON <led_num> : Turn on led indicated by <led_num>");
uswickra 2:04d8e2ad8cff 94 newline();
uswickra 10:08462822ab8e 95 pc.puts("LOF <led_num> : Turn off led indicated by <led_num>");
uswickra 2:04d8e2ad8cff 96 }
uswickra 2:04d8e2ad8cff 97 };