VNG bot battle

Dependencies:   BLE_API mbed nRF51822

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 /*
00002  * main.cpp
00003  *
00004  *  Created on: Aug 23, 2016
00005  *      Author: tanpt
00006  */
00007 
00008 #include "common.h"
00009 #include "MotorController.h"
00010 #include "SensorController.h"
00011 
00012 //#include "ble/BLE.h"
00013 //#include "ble/services/iBeacon.h"
00014 //#include "ble/services/UARTService.h"
00015 
00016 MotorController motorController;
00017 SensorController sensors;
00018 
00019 //// Sensor
00020 #define NOISE 5
00021 //#define DEBUG
00022 
00023 #ifdef DEBUG
00024 Serial pc(p10, p11);
00025 #endif
00026 Ticker ticker;
00027 
00028 #define VREF    3300.0  //mV
00029 
00030 //////////////////////////////////////////////////////////////////////////////////////////////////
00031 //////////////////////////////////////////////////////////////////////////////////////////////////
00032 //////////////////////////////////////////////////////////////////////////////////////////////////
00033 
00034 //////////////////////////////////////////////////////////////////////////////////////////////////
00035 void periodicCallback(void) {
00036 
00037 }
00038 
00039 //////////////////////////////////////////////////////////////////////////////////////////////////
00040 //////////////////////////////////////////////////////////////////////////////////////////////////
00041 //////////////////////////////////////////////////////////////////////////////////////////////////
00042 int main(void) {
00043     wait(0.1);
00044 //Init Hardware
00045 
00046     sensors.init();
00047 
00048 //Init interupt Timer
00049     ticker.attach(periodicCallback, 0.00015);
00050     wait(0.5);
00051 
00052     while (true) {
00053         uint8_t sen_in = sensors.distanceSensorRight();
00054         if ((sen_in > 0) && (sen_in <= 40)) {
00055             motorController.moveForward(500);
00056             wait(1);
00057         } else {
00058             motorController.moveForward(500);
00059             wait(1);
00060         }
00061     }
00062 
00063 //    while (true) {
00064 //        //rotator_right(20);
00065 //        uint8_t sen_in = sensors.distanceSensor();
00066 //        if ((sensors.frontLeftSensor() == SensorController::SENSOR_OFF)
00067 //                && (sensors.frontRightSensor() == SensorController::SENSOR_OFF)) {
00068 //            motorController.moveBackward(1000);
00069 //            wait(1);
00070 //        } else if (sensors.frontLeftSensor() == SensorController::SENSOR_OFF) {
00071 //            motorController.moveBackRight(1000);
00072 //            wait(1);
00073 //        } else if (sensors.frontRightSensor() == SensorController::SENSOR_OFF) {
00074 //            motorController.moveBackLeft(1000);
00075 //            wait(1);
00076 //        } else if (sensors.backSensor() == SensorController::SENSOR_OFF) {
00077 //            motorController.moveForward(1000);
00078 //            wait_ms(1);
00079 //        } else {
00080 //            if ((sen_in > 0) && (sen_in <= 80)) {
00081 //                motorController.moveForward(1000);
00082 //                wait_ms(200);
00083 //            } else {
00084 //                motorController.turnRight(1000);
00085 //                wait_us(200);
00086 //            }
00087 //        }
00088 //    }
00089 
00090 }