added gy80 dcm

Dependencies:   mbed DCM_AHRS_GY80 PID MMA8451Q

Fork of quadCommand by Greg Abdo

Committer:
gabdo
Date:
Sun Jun 09 22:13:59 2013 +0000
Revision:
0:8681037b9a18
Child:
1:9b90e7de6e09
quadCommand!

Who changed what in which revision?

UserRevisionLine numberNew contents of line
gabdo 0:8681037b9a18 1 /************************* quadCommand.h *********************************/
gabdo 0:8681037b9a18 2 /* */
gabdo 0:8681037b9a18 3 /*************************************************************************/
gabdo 0:8681037b9a18 4
gabdo 0:8681037b9a18 5 #ifndef QUAD_COMMAND_H
gabdo 0:8681037b9a18 6 #define QUAD_COMMAND_H
gabdo 0:8681037b9a18 7
gabdo 0:8681037b9a18 8 #include "mbed.h"
gabdo 0:8681037b9a18 9 #include "motor.h"
gabdo 0:8681037b9a18 10 #include "com.h"
gabdo 0:8681037b9a18 11 #include "sensors.h"
gabdo 0:8681037b9a18 12
gabdo 0:8681037b9a18 13 const PinName MOTOR1 = PTD4; // Pin used for motor 1.
gabdo 0:8681037b9a18 14 const PinName MOTOR2 = PTA12; // Pin used for motor 2.
gabdo 0:8681037b9a18 15 const PinName MOTOR3 = PTA4; // Pin used for motor 3.
gabdo 0:8681037b9a18 16 const PinName MOTOR4 = PTA5; // Pin used for motor 4.
gabdo 0:8681037b9a18 17
gabdo 0:8681037b9a18 18 const PinName TXPIN = PTD3; // Pin used for xbee TX.
gabdo 0:8681037b9a18 19 const PinName RXPIN = PTD2; // Pin used for xbee RX.
gabdo 0:8681037b9a18 20
gabdo 0:8681037b9a18 21 class quadCommand
gabdo 0:8681037b9a18 22 {
gabdo 0:8681037b9a18 23 public:
gabdo 0:8681037b9a18 24 quadCommand(); // Constructor.
gabdo 0:8681037b9a18 25 void run(); // Loop.
gabdo 0:8681037b9a18 26 void rxInput(); // Deal with new input from xbee.
gabdo 0:8681037b9a18 27 void updatePosition();
gabdo 0:8681037b9a18 28 void txPosition();
gabdo 0:8681037b9a18 29
gabdo 0:8681037b9a18 30 private:
gabdo 0:8681037b9a18 31 motor *myMotors[4]; // Array of motor objects.
gabdo 0:8681037b9a18 32 com *myCom; // The com object.
gabdo 0:8681037b9a18 33 sensors *world; // Sensors used to observe the world.
gabdo 0:8681037b9a18 34
gabdo 0:8681037b9a18 35 short rxThrottle; // Throttle position: 0 -> 100.
gabdo 0:8681037b9a18 36 short rxPitch; // Pitch: -180 -> 180.
gabdo 0:8681037b9a18 37 short rxRoll; // Roll: -180 -> 180.
gabdo 0:8681037b9a18 38 short rxYaw; // Yaw: -180 -> 180.
gabdo 0:8681037b9a18 39
gabdo 0:8681037b9a18 40 bool globalUpdate;
gabdo 0:8681037b9a18 41
gabdo 0:8681037b9a18 42 short currentPitch; //
gabdo 0:8681037b9a18 43 bool updatedPitch;
gabdo 0:8681037b9a18 44
gabdo 0:8681037b9a18 45 short currentRoll; //
gabdo 0:8681037b9a18 46 bool updatedRoll;
gabdo 0:8681037b9a18 47
gabdo 0:8681037b9a18 48 short currentAlt; //
gabdo 0:8681037b9a18 49 bool updatedAlt;
gabdo 0:8681037b9a18 50 };
gabdo 0:8681037b9a18 51
gabdo 0:8681037b9a18 52 #endif