Dependencies:   BNO055_fusion_tom FastPWM mbed

Fork of NucleoCube1 by Will Church

Revision:
0:604ceafb7bb3
Child:
1:d81f93d3f819
diff -r 000000000000 -r 604ceafb7bb3 main.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Sun Apr 02 05:20:13 2017 +0000
@@ -0,0 +1,51 @@
+#include "mbed.h"
+#include "BNO055.h"
+
+
+//------------------------------------
+// Hyperterminal configuration
+// 9600 bauds, 8-bit data, no parity
+//------------------------------------
+
+Serial pc(SERIAL_TX, SERIAL_RX);
+
+DigitalOut myled(LED1);
+PwmOut P1(D6);
+PwmOut P2(PA_0);
+PwmOut P3(PB_4);
+
+int main()
+{
+    //int i = 1;
+    pc.printf("Hello World !\n");
+    I2C    i2c(PB_9, PB_8);         // SDA, SCL
+    BNO055 imu(i2c, PA_8);          // Reset
+ 
+    BNO055_ID_INF_TypeDef bno055_id_inf;
+    BNO055_EULER_TypeDef  euler_angles;
+    
+    pc.printf("Bosch Sensortec BNO055 test program on " __DATE__ "/" __TIME__ "\r\n");
+    if (imu.chip_ready() == 0){
+        pc.printf("Bosch BNO055 is NOT avirable!!\r\n");
+    }
+    imu.read_id_inf(&bno055_id_inf);
+    pc.printf("CHIP:0x%02x, ACC:0x%02x, MAG:0x%02x, GYR:0x%02x, , SW:0x%04x, , BL:0x%02x\r\n",
+               bno055_id_inf.chip_id, bno055_id_inf.acc_id, bno055_id_inf.mag_id,
+               bno055_id_inf.gyr_id, bno055_id_inf.sw_rev_id, bno055_id_inf.bootldr_rev_id);
+    
+    while(1) {
+//        acc.getAccAllAxis(data); 
+//        pc.printf("Data %d %d %d \n",data[0], data[1], data[2]);
+        imu.get_Euler_Angles(&euler_angles);
+        pc.printf("Heading:%+6.4f [deg], Roll:%+6.4f [deg], Pitch:%+6.4f [deg]\r\n",
+                    euler_angles.h, euler_angles.r, euler_angles.p);
+        wait(0.2);
+        
+        //pc.printf("This program runs since %d seconds.\n", i++);
+        //pc.putc(pc.getc());
+        myled = !myled;
+        P1 = (euler_angles.h/360.0);
+        P2 = (euler_angles.r/360.0);
+        P3 = (euler_angles.p/360.0);
+    }
+}