Class of MPU9250

Dependencies:   AHRS_fillter mbed

Fork of MPU9250AHRS by BE@R lab

Revision:
9:a9b0f8540cc6
Parent:
8:928673148b55
diff -r 928673148b55 -r a9b0f8540cc6 MPU9250.h
--- a/MPU9250.h	Wed Jan 20 02:42:22 2016 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,108 +0,0 @@
-#ifndef MPU9250_H
-#define MPU9250_H
-
-#include "mbed.h"
-#include "math.h"
-#include "register.h"
-
-
-static DigitalOut myled(LED1);
-
-
-class MPU9250
-{
-
-protected:
-
-public:
-    enum Ascale {
-        AFS_2G = 0,
-        AFS_4G,
-        AFS_8G,
-        AFS_16G
-    };
-
-    enum Gscale {
-        GFS_250DPS = 0,
-        GFS_500DPS,
-        GFS_1000DPS,
-        GFS_2000DPS
-    };
-
-    enum Mscale {
-        MFS_14BITS = 0, // 0.6 mG per LSB
-        MFS_16BITS      // 0.15 mG per LSB
-    };
-
-    MPU9250(PinName sda, PinName scl, PinName tx, PinName rx, int address);
-    ~MPU9250() {}
-
-    Serial pc;
-    I2C i2c;
-    void writeByte(uint8_t address, uint8_t subAddress, uint8_t data);
-    char readByte(uint8_t address, uint8_t subAddress);
-    void readBytes(uint8_t address, uint8_t subAddress, uint8_t count, uint8_t * dest) ;
-
-    void initMPU9250();
-    void calibrateMPU9250();
-
-    void setMres();
-    void setGres();
-    void setAres();
-    
-    void getMres();
-    void getGres();
-    void getAres();
-
-    void AccelXYZCal();
-    void GyroXYZCal();
-    void MagXYZCal();
-
-    void MagCal();
-
-    void readAccelData();
-    void readGyroData();
-    void readMagData();
-    void readTempData();
-
-    void resetMPU9250();
-    void initAK8963();
-    void MPU9250SelfTest();
-    
-    void Start();
-    void ReadRawAccGyroMag();
-    
-    float ax, ay, az, gx, gy, gz, mx, my, mz; // variables to hold latest sensor data values
-    
-
-protected:
-    float temperature;
-    uint8_t whoami;
-
-private:
-    uint8_t MPU9250_ADDRESS;
-
-    int16_t accelCount[3];  // Stores the 16-bit signed accelerometer sensor output
-    int16_t gyroCount[3];   // Stores the 16-bit signed gyro sensor output
-    int16_t magCount[3];    // Stores the 16-bit signed magnetometer sensor output
-    float magCalibration[3], magbias[3];  // Factory mag calibration and mag bias
-    float gyroBias[3], accelBias[3]; // Bias corrections for gyro and accelerometer
-    //int16_t tempCount;   // Stores the real internal chip temperature in degrees Celsius
-    float SelfTest[6];
-
-
-
-    //MagCal
-    float xmax,xmin;
-    float ymax,ymin;
-    float zmax,zmin;
-    bool change;
-
-    uint8_t Ascale;     // AFS_2G, AFS_4G, AFS_8G, AFS_16G
-    uint8_t Gscale; // GFS_250DPS, GFS_500DPS, GFS_1000DPS, GFS_2000DPS
-    uint8_t Mscale; // MFS_14BITS or MFS_16BITS, 14-bit or 16-bit magnetometer resolution
-    uint8_t Mmode;        // Either 8 Hz 0x02) or 100 Hz (0x06) magnetometer data ODR
-    float aRes, gRes, mRes;      // scale resolutions per LSB for the sensors
-
-};
-#endif
\ No newline at end of file