1

Dependencies:   mbed C12832 LSM9DS1

Committer:
louisverzellesi
Date:
Sun Nov 18 14:47:28 2018 +0000
Revision:
0:18d8c3604718
1;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
louisverzellesi 0:18d8c3604718 1 // LSM9DS91 Demo
louisverzellesi 0:18d8c3604718 2
louisverzellesi 0:18d8c3604718 3 #include "mbed.h"
louisverzellesi 0:18d8c3604718 4 #include "LSM9DS1.h"
louisverzellesi 0:18d8c3604718 5
louisverzellesi 0:18d8c3604718 6 // refresh time. set to 500 for part 2 and 50 for part 4
louisverzellesi 0:18d8c3604718 7 #define REFRESH_TIME_MS 1000
louisverzellesi 0:18d8c3604718 8
louisverzellesi 0:18d8c3604718 9 // Verify that the pin assignments below match your breadboard
louisverzellesi 0:18d8c3604718 10 LSM9DS1 imu(p9, p10);
louisverzellesi 0:18d8c3604718 11
louisverzellesi 0:18d8c3604718 12 Serial pc(USBTX, USBRX);
louisverzellesi 0:18d8c3604718 13
louisverzellesi 0:18d8c3604718 14 //Init Serial port and LSM9DS1 chip
louisverzellesi 0:18d8c3604718 15 void setup()
louisverzellesi 0:18d8c3604718 16 {
louisverzellesi 0:18d8c3604718 17 // Use the begin() function to initialize the LSM9DS0 library.
louisverzellesi 0:18d8c3604718 18 // You can either call it with no parameters (the easy way):
louisverzellesi 0:18d8c3604718 19 uint16_t status = imu.begin();
louisverzellesi 0:18d8c3604718 20
louisverzellesi 0:18d8c3604718 21 //Make sure communication is working
louisverzellesi 0:18d8c3604718 22 pc.printf("LSM9DS1 WHO_AM_I's returned: 0x%X\r\n", status);
louisverzellesi 0:18d8c3604718 23 pc.printf("Should be 0x683D\r\n");
louisverzellesi 0:18d8c3604718 24 }
louisverzellesi 0:18d8c3604718 25
louisverzellesi 0:18d8c3604718 26 int main()
louisverzellesi 0:18d8c3604718 27 {
louisverzellesi 0:18d8c3604718 28 setup(); //Setup sensor and Serial
louisverzellesi 0:18d8c3604718 29 pc.printf("------ LSM9DS1 Demo -----------\r\n");
louisverzellesi 0:18d8c3604718 30
louisverzellesi 0:18d8c3604718 31 while (true)
louisverzellesi 0:18d8c3604718 32 {
louisverzellesi 0:18d8c3604718 33
louisverzellesi 0:18d8c3604718 34 imu.readAccel();
louisverzellesi 0:18d8c3604718 35
louisverzellesi 0:18d8c3604718 36 pc.printf("A: %2f, %2f, %2f\r\n", imu.ax, imu.ay, imu.az);
louisverzellesi 0:18d8c3604718 37
louisverzellesi 0:18d8c3604718 38 imu.readGyro();
louisverzellesi 0:18d8c3604718 39
louisverzellesi 0:18d8c3604718 40 pc.printf("G: %2f, %2f, %2f\r\n", imu.gx, imu.gy, imu.gz);
louisverzellesi 0:18d8c3604718 41
louisverzellesi 0:18d8c3604718 42 imu.readMag();
louisverzellesi 0:18d8c3604718 43
louisverzellesi 0:18d8c3604718 44 pc.printf("M: %2f, %2f, %2f\r\n\r\n", imu.mx, imu.my, imu.mz);
louisverzellesi 0:18d8c3604718 45
louisverzellesi 0:18d8c3604718 46 wait_ms(REFRESH_TIME_MS);
louisverzellesi 0:18d8c3604718 47 }
louisverzellesi 0:18d8c3604718 48 }