VNG bot battle
Dependencies: BLE_API mbed nRF51822
main.cpp@0:122d7bf3bbf0, 2016-09-05 (annotated)
- Committer:
- bintech91
- Date:
- Mon Sep 05 19:55:23 2016 +0000
- Revision:
- 0:122d7bf3bbf0
update
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
bintech91 | 0:122d7bf3bbf0 | 1 | /* |
bintech91 | 0:122d7bf3bbf0 | 2 | * main.cpp |
bintech91 | 0:122d7bf3bbf0 | 3 | * |
bintech91 | 0:122d7bf3bbf0 | 4 | * Created on: Aug 23, 2016 |
bintech91 | 0:122d7bf3bbf0 | 5 | * Author: tanpt |
bintech91 | 0:122d7bf3bbf0 | 6 | */ |
bintech91 | 0:122d7bf3bbf0 | 7 | |
bintech91 | 0:122d7bf3bbf0 | 8 | #include "common.h" |
bintech91 | 0:122d7bf3bbf0 | 9 | #include "MotorController.h" |
bintech91 | 0:122d7bf3bbf0 | 10 | #include "SensorController.h" |
bintech91 | 0:122d7bf3bbf0 | 11 | |
bintech91 | 0:122d7bf3bbf0 | 12 | //#include "ble/BLE.h" |
bintech91 | 0:122d7bf3bbf0 | 13 | //#include "ble/services/iBeacon.h" |
bintech91 | 0:122d7bf3bbf0 | 14 | //#include "ble/services/UARTService.h" |
bintech91 | 0:122d7bf3bbf0 | 15 | |
bintech91 | 0:122d7bf3bbf0 | 16 | MotorController motorController; |
bintech91 | 0:122d7bf3bbf0 | 17 | SensorController sensors; |
bintech91 | 0:122d7bf3bbf0 | 18 | |
bintech91 | 0:122d7bf3bbf0 | 19 | //// Sensor |
bintech91 | 0:122d7bf3bbf0 | 20 | #define NOISE 5 |
bintech91 | 0:122d7bf3bbf0 | 21 | //#define DEBUG |
bintech91 | 0:122d7bf3bbf0 | 22 | |
bintech91 | 0:122d7bf3bbf0 | 23 | #ifdef DEBUG |
bintech91 | 0:122d7bf3bbf0 | 24 | Serial pc(p10, p11); |
bintech91 | 0:122d7bf3bbf0 | 25 | #endif |
bintech91 | 0:122d7bf3bbf0 | 26 | Ticker ticker; |
bintech91 | 0:122d7bf3bbf0 | 27 | |
bintech91 | 0:122d7bf3bbf0 | 28 | #define VREF 3300.0 //mV |
bintech91 | 0:122d7bf3bbf0 | 29 | |
bintech91 | 0:122d7bf3bbf0 | 30 | ////////////////////////////////////////////////////////////////////////////////////////////////// |
bintech91 | 0:122d7bf3bbf0 | 31 | ////////////////////////////////////////////////////////////////////////////////////////////////// |
bintech91 | 0:122d7bf3bbf0 | 32 | ////////////////////////////////////////////////////////////////////////////////////////////////// |
bintech91 | 0:122d7bf3bbf0 | 33 | |
bintech91 | 0:122d7bf3bbf0 | 34 | ////////////////////////////////////////////////////////////////////////////////////////////////// |
bintech91 | 0:122d7bf3bbf0 | 35 | void periodicCallback(void) { |
bintech91 | 0:122d7bf3bbf0 | 36 | |
bintech91 | 0:122d7bf3bbf0 | 37 | } |
bintech91 | 0:122d7bf3bbf0 | 38 | |
bintech91 | 0:122d7bf3bbf0 | 39 | ////////////////////////////////////////////////////////////////////////////////////////////////// |
bintech91 | 0:122d7bf3bbf0 | 40 | ////////////////////////////////////////////////////////////////////////////////////////////////// |
bintech91 | 0:122d7bf3bbf0 | 41 | ////////////////////////////////////////////////////////////////////////////////////////////////// |
bintech91 | 0:122d7bf3bbf0 | 42 | int main(void) { |
bintech91 | 0:122d7bf3bbf0 | 43 | wait(0.1); |
bintech91 | 0:122d7bf3bbf0 | 44 | //Init Hardware |
bintech91 | 0:122d7bf3bbf0 | 45 | |
bintech91 | 0:122d7bf3bbf0 | 46 | sensors.init(); |
bintech91 | 0:122d7bf3bbf0 | 47 | |
bintech91 | 0:122d7bf3bbf0 | 48 | //Init interupt Timer |
bintech91 | 0:122d7bf3bbf0 | 49 | ticker.attach(periodicCallback, 0.00015); |
bintech91 | 0:122d7bf3bbf0 | 50 | wait(0.5); |
bintech91 | 0:122d7bf3bbf0 | 51 | |
bintech91 | 0:122d7bf3bbf0 | 52 | while (true) { |
bintech91 | 0:122d7bf3bbf0 | 53 | uint8_t sen_in = sensors.distanceSensorRight(); |
bintech91 | 0:122d7bf3bbf0 | 54 | if ((sen_in > 0) && (sen_in <= 40)) { |
bintech91 | 0:122d7bf3bbf0 | 55 | motorController.moveForward(500); |
bintech91 | 0:122d7bf3bbf0 | 56 | wait(1); |
bintech91 | 0:122d7bf3bbf0 | 57 | } else { |
bintech91 | 0:122d7bf3bbf0 | 58 | motorController.moveForward(500); |
bintech91 | 0:122d7bf3bbf0 | 59 | wait(1); |
bintech91 | 0:122d7bf3bbf0 | 60 | } |
bintech91 | 0:122d7bf3bbf0 | 61 | } |
bintech91 | 0:122d7bf3bbf0 | 62 | |
bintech91 | 0:122d7bf3bbf0 | 63 | // while (true) { |
bintech91 | 0:122d7bf3bbf0 | 64 | // //rotator_right(20); |
bintech91 | 0:122d7bf3bbf0 | 65 | // uint8_t sen_in = sensors.distanceSensor(); |
bintech91 | 0:122d7bf3bbf0 | 66 | // if ((sensors.frontLeftSensor() == SensorController::SENSOR_OFF) |
bintech91 | 0:122d7bf3bbf0 | 67 | // && (sensors.frontRightSensor() == SensorController::SENSOR_OFF)) { |
bintech91 | 0:122d7bf3bbf0 | 68 | // motorController.moveBackward(1000); |
bintech91 | 0:122d7bf3bbf0 | 69 | // wait(1); |
bintech91 | 0:122d7bf3bbf0 | 70 | // } else if (sensors.frontLeftSensor() == SensorController::SENSOR_OFF) { |
bintech91 | 0:122d7bf3bbf0 | 71 | // motorController.moveBackRight(1000); |
bintech91 | 0:122d7bf3bbf0 | 72 | // wait(1); |
bintech91 | 0:122d7bf3bbf0 | 73 | // } else if (sensors.frontRightSensor() == SensorController::SENSOR_OFF) { |
bintech91 | 0:122d7bf3bbf0 | 74 | // motorController.moveBackLeft(1000); |
bintech91 | 0:122d7bf3bbf0 | 75 | // wait(1); |
bintech91 | 0:122d7bf3bbf0 | 76 | // } else if (sensors.backSensor() == SensorController::SENSOR_OFF) { |
bintech91 | 0:122d7bf3bbf0 | 77 | // motorController.moveForward(1000); |
bintech91 | 0:122d7bf3bbf0 | 78 | // wait_ms(1); |
bintech91 | 0:122d7bf3bbf0 | 79 | // } else { |
bintech91 | 0:122d7bf3bbf0 | 80 | // if ((sen_in > 0) && (sen_in <= 80)) { |
bintech91 | 0:122d7bf3bbf0 | 81 | // motorController.moveForward(1000); |
bintech91 | 0:122d7bf3bbf0 | 82 | // wait_ms(200); |
bintech91 | 0:122d7bf3bbf0 | 83 | // } else { |
bintech91 | 0:122d7bf3bbf0 | 84 | // motorController.turnRight(1000); |
bintech91 | 0:122d7bf3bbf0 | 85 | // wait_us(200); |
bintech91 | 0:122d7bf3bbf0 | 86 | // } |
bintech91 | 0:122d7bf3bbf0 | 87 | // } |
bintech91 | 0:122d7bf3bbf0 | 88 | // } |
bintech91 | 0:122d7bf3bbf0 | 89 | |
bintech91 | 0:122d7bf3bbf0 | 90 | } |