library for IMU demo with mag calibration code

Dependencies:   PinDetect mbed

Dependents:   LSM9DS1_Demo_wCal 4180_Lab2_Mike_SD_IMU_I2C_RS232 ECE4180Lab2_bubble Lab2_EverythingIO ... more

Fork of LSM9DS1_Library by Jason Mar

main.cpp

Committer:
jmar7
Date:
2015-10-26
Revision:
0:e8167f37725c

File content as of revision 0:e8167f37725c:

#include "LSM9DS1.h"

DigitalOut myled(LED1);
Serial pc(USBTX, USBRX);

int main() {
    //LSM9DS1 lol(p9, p10, 0x6B, 0x1E);
    LSM9DS1 lol(p9, p10, 0xD6, 0x3C);
    lol.begin();
    if (!lol.begin()) {
        pc.printf("Failed to communicate with LSM9DS1.\n");
    }
    lol.calibrate();
    while(1) {
        lol.readTemp();
        lol.readMag();
        lol.readGyro();
        
        //pc.printf("%d %d %d %d %d %d %d %d %d\n\r", lol.calcGyro(lol.gx), lol.calcGyro(lol.gy), lol.calcGyro(lol.gz), lol.ax, lol.ay, lol.az, lol.mx, lol.my, lol.mz);
        //pc.printf("%d %d %d\n\r", lol.calcGyro(lol.gx), lol.calcGyro(lol.gy), lol.calcGyro(lol.gz));
        pc.printf("gyro: %d %d %d\n\r", lol.gx, lol.gy, lol.gz);
        pc.printf("accel: %d %d %d\n\r", lol.ax, lol.ay, lol.az);
        pc.printf("mag: %d %d %d\n\n\r", lol.mx, lol.my, lol.mz);
        myled = 1;
        wait(2);
        myled = 0;
        wait(2);
    }
}