Hepta 9axis Sensor(magnetometer)

Dependencies:   mbed HeptaBattery

Fork of Lab7-01_template by HEPTA-Sat Training 2017~2018

Revision:
14:d758d18b2710
Parent:
13:a1fa75a002f6
Child:
15:44477a8ccbbf
--- a/main.cpp	Wed Sep 06 02:59:57 2017 +0000
+++ b/main.cpp	Thu Sep 07 13:49:46 2017 +0000
@@ -1,25 +1,50 @@
 #include "mbed.h"
-#include "SDFileSystem.h"
-#include "HeptaXbee.h"
-#include "HeptaCamera_GPS.h"
-#include "Hepta9axis.h"
-#include "HeptaTemp.h"
-#include "HeptaBattery.h"
-
-Serial pc(USBTX,USBRX);
-SDFileSystem sd(p5, p6, p7, p8, "sd");
-HeptaXbee xbee(p9,p10);
-HeptaCamera_GPS cam_gps(p13, p14,p25,p24);
-Hepta9axis n_axis(p28,p27,0xD0,0x18);
-HeptaTemp temp(p17);
-HeptaBattery battery(p16,p26);
-
-DigitalOut myled(LED1);
-
+I2C i2c(p28, p27);
+Serial pc(USBTX, USBRX);
+const int addr_accel_gyro = 0xD0;
+char cmd[2];
+const int addr_compus = 0x18;
+short int mxl,mxh,myl,myh,mzl,mzh,st2;
 int main()
 {
-    myled = 1;
-    wait(0.5);
-    myled = 0;
-    wait(0.5);
+    i2c.frequency(100000);
+    cmd[0]=0x6B;
+    cmd[1]=0x00;
+    i2c.write(addr_accel_gyro,cmd,2);
+    cmd[0] = 0x37;
+    cmd[1] = 0x02;
+    i2c.write(addr_accel_gyro,cmd,2);
+    i2c.stop();
+    while(1) {
+        i2c.start();
+        i2c.write(addr_compus);
+        i2c.write(0x0A);
+        i2c.write(0x12);
+        i2c.stop();
+        i2c.start();
+        i2c.write(addr_compus);
+        i2c.write(0x03);
+        i2c.start();
+        i2c.write(addr_compus|0x01);
+        mxl = i2c.read(0);
+        i2c.stop();
+        i2c.start();
+        i2c.write(addr_compus);
+        i2c.write(0x04);
+        i2c.start();
+        i2c.write(addr_compus|0x01);
+        mxh = i2c.read(0);
+        i2c.stop();
+        i2c.start();
+        i2c.write(addr_compus);
+        i2c.write(0x09);
+        i2c.start();
+        i2c.write(addr_compus|0x01);
+        st2 = i2c.read(0);
+        i2c.stop();
+        double  mg_x = short((mxh<<8) | (mxl));
+        double MX = ( mg_x)*0.15;
+        pc.printf("MX = %f\r\n",MX);
+        wait(0.5);
+    }
 }
\ No newline at end of file