Initial Commit

Revision:
1:282467cbebb3
Parent:
0:b74b6d70347d
Child:
2:37a19a9e5f2c
--- a/robot.h	Sun Oct 05 12:21:03 2014 +0000
+++ b/robot.h	Sat Oct 11 03:53:04 2014 +0000
@@ -4,6 +4,8 @@
 #include "mbed.h"
 #include "rtos.h"
 #include "HC05.h"
+#include "MPU6050.h"
+#include "I2Cdev.h"
 //#include "MPU6050.h"
 //#include "HC05.h"
 //#include "ACS712.h"
@@ -69,6 +71,14 @@
 //  "Nordic Serial Interface Board" (http://www.sparkfun.com/products/9019)
 //  only handles 4 byte transfers in the ATMega code.
 #define TRANSFER_SIZE   4
+#define ulrL PTD6
+#define ulL PTD5
+#define ulF PTD1
+#define ulR PTC2
+#define ulrR PTC1
+#define ulB PTC0
+
+
 
 extern   HC05 bt;  //bluetooth connection
 //extern   Serial bt;
@@ -80,7 +90,7 @@
 //extern    DigitalOut btSwitch;
 //extern    AnalogIn currentSensor;
 extern    DigitalOut buzzer;
-extern    DigitalOut key;
+extern    DigitalOut key;\
 //extern    PwmOut buzzer;
 extern    AnalogIn LDRsensor1;
 extern    AnalogIn LDRsensor2;
@@ -93,6 +103,18 @@
 extern    DigitalOut BIN1;//(MOT_BIN1_PIN);
 extern    DigitalOut BIN2;//(MOT_BIN2_PIN);
 extern    DigitalOut STBY;//(MOT_STBY_PIN);
+
+extern    DigitalOut SRX;
+
+extern AnalogIn uL;
+extern AnalogIn uF;
+extern AnalogIn uR;
+extern AnalogIn urR;
+extern AnalogIn urL;
+extern AnalogIn uB;
+extern int dy;
+extern int dx;
+    int r_time ();
     void motor_control(int Lspeed, int Rspeed);  //Input speed for motors. Integer between 0 and 100
     void stop();                           //stop motors
     void set_direction(double angle);            //set angle for the robot to face (from origin)
@@ -112,23 +134,25 @@
     double getCurrent();   //Get the current drawn by the robot
     double getCurrent(int n); //get the current, averaged over n samples
     double getVoltage();    //get the battery voltage (ask connor for completed function)
-    void getIMU(float *adata, float *gdata);
     double ldrread1();
     double ldrread2();
     //void pl_buzzer1();
     void Led_on();
     void Led_off();
-    double return_rotation();
-    int isMPU();
     void initRobot();
     extern double pl_buzzer();
     extern void pl_buzzer(void const *args);
+    extern void Imu_yaw(void const *args);
+    extern void encoder_thread(void const *args);
     extern int freq; 
     extern int rMotor;
     extern int lMotor ;
     extern int m_speed;
     extern Mutex stdio_mutex; 
-    
+    extern MPU6050 accelgyro;
+    extern int16_t ax, ay, az;
+    extern int16_t gx, gy, gz;
+    extern int heading;
 
     //Wireless connections