Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: LocalPositionSystem MMA8451Q Motor_Driver Sensors mbed
Fork of TDP_main by
Diff: main.cpp
- Revision:
- 28:d1e7daeb240e
- Parent:
- 27:fc0fd2c0eebb
- Child:
- 29:307b45a52401
- Child:
- 30:60c424504a8b
--- a/main.cpp Mon Mar 23 14:07:35 2015 +0000
+++ b/main.cpp Mon Mar 23 14:23:21 2015 +0000
@@ -18,11 +18,13 @@
#define PWM_PERIOD_US 10000
+DigitalOut led(LED_RED);
Serial HC06(PTE0,PTE1);
Timer measureTimer; //Timer used for measurement
-//Motor_Driver motors(PTD4, PTA12, PTA4, PTA5, PTC9, PTC8, PWM_PERIOD_US);
+
+Motor_Driver motors(PTA5, PTC9, PTC8,PTD4, PTA12, PTA4, PWM_PERIOD_US);
typedef enum mode {REGULAR,SQUARE} mode; //enumeration for different states
mode driveMode; //declaring the variable for the states
@@ -63,10 +65,10 @@
int main() {
- Motor_Driver motors(PTA5, PTC9, PTC8,PTD4, PTA12, PTA4, PWM_PERIOD_US);
-
+
// setup_counter(1000, 0);
// float frequency = measure_frequency(CHANNEL_1);
+ led = 1; //start LED with beginning of main program
measureTimer.start();
driveMode = REGULAR; //initialise drivemoder
sensor_initialise(); // initialise sensor values
@@ -74,31 +76,31 @@
sensorTimer.start(); // start timer for sensors
// float normalSpeed = 0.01f;
-/*
+
while(1){
if (pc.getc() == 'r') {
- measureSensors();
- //measureTimer.reset();
- printBluetooth();
- //passedTime1 = measureTimer.read_ms();
- //if (sensorsCheckSum == 0) {
-// motors.setSpeed(normalSpeed);
-// }
-// else if (sensorsCheckSum == 1 || sensorsCheckSum == 9 || sensorsCheckSum == 10 || sensorsCheckSum == 14 || sensorsCheckSum==26){
-// motors.setLeftSpeed(normalSpeed/2);
-//
-// motors.setRightSpeed(normalSpeed*6);
-// }
-// else if (sensorsCheckSum == 4 && sensorsCheckSum ==16 || sensorsCheckSum == 20 || sensorsCheckSum ==21 ||sensorsCheckSum== 29) {
-// motors.setRightSpeed(normalSpeed/2);
-// motors.setLeftSpeed(normalSpeed*9);
-// }
-// else {
-// motors.setSpeed(normalSpeed);
-// }
+ measureSensors();
+ printBluetooth();
+ }
+ if (sensorsCheckSum == 0) {
+ motors.setSpeed(normalSpeed);
+ }
+ else if (sensorsCheckSum == 1 || sensorsCheckSum == 9 || sensorsCheckSum == 10 || sensorsCheckSum == 14 || sensorsCheckSum==26){
+ motors.setLeftSpeed(normalSpeed/2);
+
+ motors.setRightSpeed(normalSpeed*6);
+ }
+ else if (sensorsCheckSum == 4 && sensorsCheckSum ==16 || sensorsCheckSum == 20 || sensorsCheckSum ==21 ||sensorsCheckSum== 29) {
+ motors.setRightSpeed(normalSpeed/2);
+ motors.setLeftSpeed(normalSpeed*9);
+ }
+ else {
+ motors.setSpeed(normalSpeed);
+ }
}
-*/
-// int testOtherCases = 0; //needed for control statements
+
+/*
+ int testOtherCases = 0; //needed for control statements
while (1) {
if (driveMode == REGULAR) {
@@ -219,14 +221,20 @@
measureSensors();
} while (sensorsCheckSum != 94);
motors.stop();
- }
+ }
+ }
break;
default:
measureSensors();
break;
- }
- }
-}
-}
-}
+ }
+ } // if statement
+ else {
+ testOtherCases = 1;
+ }//if driveMode == SQUARE
+
+ }//while loop
+ */
+} //int main
+
