Mouse code for the MacroRat

Dependencies:   ITG3200 QEI

Committer:
sahilmgandhi
Date:
Wed May 24 01:57:01 2017 +0000
Revision:
29:ec2c5a69acd6
Parent:
15:b80555a4a8b9
Need to change ir2-ir3 to now be ir1 - ir4

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kyleliangus 8:a0760acdc59e 1 #include "mbed.h"
kyleliangus 8:a0760acdc59e 2 #include "motor.h"
kyleliangus 8:a0760acdc59e 3
kyleliangus 8:a0760acdc59e 4 void Motor::backward(double voltage) {
kyleliangus 12:5790e56a056f 5 if(voltage > maxSpeed){
kyleliangus 12:5790e56a056f 6 voltage = maxSpeed;
christine222 13:2032db00f168 7 }else if(voltage < minSpeed){
christine222 13:2032db00f168 8 voltage = minSpeed;
kyleliangus 12:5790e56a056f 9 }
kyleliangus 15:b80555a4a8b9 10 enableForw.write(0);
kyleliangus 15:b80555a4a8b9 11 enableBack.write(1);
kyleliangus 15:b80555a4a8b9 12 motorSpeed.write( voltage );
kyleliangus 8:a0760acdc59e 13 }
kyleliangus 8:a0760acdc59e 14
kyleliangus 8:a0760acdc59e 15 void Motor::forward(double voltage) {
kyleliangus 12:5790e56a056f 16 if(voltage > maxSpeed){
kyleliangus 12:5790e56a056f 17 voltage = maxSpeed;
christine222 13:2032db00f168 18 }else if(voltage < minSpeed){
christine222 13:2032db00f168 19 voltage = minSpeed;
kyleliangus 12:5790e56a056f 20 }
kyleliangus 15:b80555a4a8b9 21 enableForw.write(1);
kyleliangus 15:b80555a4a8b9 22 enableBack.write(0);
kyleliangus 15:b80555a4a8b9 23 motorSpeed.write( voltage );
kyleliangus 8:a0760acdc59e 24 }
kyleliangus 8:a0760acdc59e 25
kyleliangus 12:5790e56a056f 26 void Motor::move(double voltage) {
kyleliangus 12:5790e56a056f 27 if(voltage < 0){
christine222 13:2032db00f168 28 backward(-voltage);
kyleliangus 12:5790e56a056f 29 }
kyleliangus 12:5790e56a056f 30 if(voltage > 0){
kyleliangus 12:5790e56a056f 31 forward(voltage);
kyleliangus 12:5790e56a056f 32 }
kyleliangus 12:5790e56a056f 33 }
kyleliangus 12:5790e56a056f 34
kyleliangus 8:a0760acdc59e 35
kyleliangus 8:a0760acdc59e 36 void Motor::brake() {
kyleliangus 15:b80555a4a8b9 37 enableForw.write(1);
kyleliangus 15:b80555a4a8b9 38 enableBack.write(1);
kyleliangus 15:b80555a4a8b9 39 motorSpeed.write( BRAKE_VOLTAGE );
kyleliangus 8:a0760acdc59e 40 }
kyleliangus 8:a0760acdc59e 41
kyleliangus 8:a0760acdc59e 42 void Motor::coast() {
kyleliangus 15:b80555a4a8b9 43 enableForw.write(0);
kyleliangus 15:b80555a4a8b9 44 enableBack.write(0);
kyleliangus 15:b80555a4a8b9 45 motorSpeed.write( 0 );
kyleliangus 8:a0760acdc59e 46 }