Utility library for multiple control sources (e.g. PC).

Dependents:   uva_nc

Committer:
jurgy
Date:
Wed Jan 06 12:17:52 2016 +0000
Revision:
1:39cb90d4bbed
Parent:
0:62cd782bbb11
Child:
2:f3dbcaf26222
Change process input interface

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Sinterbaas 0:62cd782bbb11 1 #include "PcControls.h"
Sinterbaas 0:62cd782bbb11 2
Sinterbaas 0:62cd782bbb11 3 MotorControlsPc::MotorControlsPc(Serial &pc, MotorController &motorController) :
Sinterbaas 0:62cd782bbb11 4 pc ( pc ), motorController ( motorController ) {
Sinterbaas 0:62cd782bbb11 5 }
Sinterbaas 0:62cd782bbb11 6
jurgy 1:39cb90d4bbed 7 void MotorControlsPc::ProcessPcInput(char c) {
jurgy 1:39cb90d4bbed 8 switch (c) {
Sinterbaas 0:62cd782bbb11 9 case MOTOR_FORWARD:
Sinterbaas 0:62cd782bbb11 10 this->motorController.turnRight();
Sinterbaas 0:62cd782bbb11 11 break;
Sinterbaas 0:62cd782bbb11 12 case MOTOR_BACKWARD:
Sinterbaas 0:62cd782bbb11 13 this->motorController.turnLeft();
Sinterbaas 0:62cd782bbb11 14 break;
Sinterbaas 0:62cd782bbb11 15 case MOTOR_POSITION:
Sinterbaas 0:62cd782bbb11 16 pc.printf("Motor position: %3.3f%% \r\n", this->motorController.getPosition());
Sinterbaas 0:62cd782bbb11 17 break;
Sinterbaas 0:62cd782bbb11 18 case MOTOR_START:
Sinterbaas 0:62cd782bbb11 19 this->motorController.start();
Sinterbaas 0:62cd782bbb11 20 break;
Sinterbaas 0:62cd782bbb11 21 case MOTOR_POSITION_0:
Sinterbaas 0:62cd782bbb11 22 this->motorController.setPosition(MotorController::POSITION_0);
Sinterbaas 0:62cd782bbb11 23 break;
Sinterbaas 0:62cd782bbb11 24 case MOTOR_POSITION_1:
Sinterbaas 0:62cd782bbb11 25 this->motorController.setPosition(MotorController::POSITION_1);
Sinterbaas 0:62cd782bbb11 26 break;
Sinterbaas 0:62cd782bbb11 27 case MOTOR_POSITION_2:
Sinterbaas 0:62cd782bbb11 28 this->motorController.setPosition(MotorController::POSITION_2);
Sinterbaas 0:62cd782bbb11 29 break;
Sinterbaas 0:62cd782bbb11 30 case MOTOR_POSITION_3:
Sinterbaas 0:62cd782bbb11 31 this->motorController.setPosition(MotorController::POSITION_3);
Sinterbaas 0:62cd782bbb11 32 break;
Sinterbaas 0:62cd782bbb11 33 case MOTOR_POSITION_4:
Sinterbaas 0:62cd782bbb11 34 this->motorController.setPosition(MotorController::POSITION_4);
Sinterbaas 0:62cd782bbb11 35 break;
Sinterbaas 0:62cd782bbb11 36 case MOTOR_POSITION_5:
Sinterbaas 0:62cd782bbb11 37 this->motorController.setPosition(MotorController::POSITION_5);
Sinterbaas 0:62cd782bbb11 38 break;
Sinterbaas 0:62cd782bbb11 39 case MOTOR_POSITION_6:
Sinterbaas 0:62cd782bbb11 40 this->motorController.setPosition(MotorController::POSITION_6);
Sinterbaas 0:62cd782bbb11 41 break;
Sinterbaas 0:62cd782bbb11 42 case MOTOR_POSITION_7:
Sinterbaas 0:62cd782bbb11 43 this->motorController.setPosition(MotorController::POSITION_7);
Sinterbaas 0:62cd782bbb11 44 break;
Sinterbaas 0:62cd782bbb11 45 case MOTOR_POSITION_8:
Sinterbaas 0:62cd782bbb11 46 this->motorController.setPosition(MotorController::POSITION_8);
Sinterbaas 0:62cd782bbb11 47 break;
Sinterbaas 0:62cd782bbb11 48 case MOTOR_POSITION_9:
Sinterbaas 0:62cd782bbb11 49 this->motorController.setPosition(MotorController::POSITION_9);
Sinterbaas 0:62cd782bbb11 50 break;
Sinterbaas 0:62cd782bbb11 51 case MOTOR_POSITION_10:
Sinterbaas 0:62cd782bbb11 52 this->motorController.setPosition(MotorController::POSITION_10);
Sinterbaas 0:62cd782bbb11 53 break;
Sinterbaas 0:62cd782bbb11 54 }
Sinterbaas 0:62cd782bbb11 55 }