SSLM1 / Mbed 2 deprecated 1_MPU9250

Dependencies:   mbed 2_MPU9250

Committer:
sasakisho
Date:
Sat Jul 04 03:28:53 2020 +0000
Revision:
0:c525c4fddba7
version0

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sasakisho 0:c525c4fddba7 1 /* MPU9250のライブラリを使ったコード */
sasakisho 0:c525c4fddba7 2
sasakisho 0:c525c4fddba7 3 #include "mbed.h"
sasakisho 0:c525c4fddba7 4 #include "MPU9250.h"
sasakisho 0:c525c4fddba7 5
sasakisho 0:c525c4fddba7 6 Serial pc (USBTX, USBRX);
sasakisho 0:c525c4fddba7 7 MPU9250 mpu(p28, p27);
sasakisho 0:c525c4fddba7 8 Timer t;
sasakisho 0:c525c4fddba7 9
sasakisho 0:c525c4fddba7 10
sasakisho 0:c525c4fddba7 11
sasakisho 0:c525c4fddba7 12 int main()
sasakisho 0:c525c4fddba7 13 {
sasakisho 0:c525c4fddba7 14 unsigned long ID;
sasakisho 0:c525c4fddba7 15
sasakisho 0:c525c4fddba7 16 //file value
sasakisho 0:c525c4fddba7 17 int i = 0, j = 0, k= 500;
sasakisho 0:c525c4fddba7 18 float accel[3], gyro[3], mag[3];
sasakisho 0:c525c4fddba7 19 float AX[k], AY[k], AZ[k];
sasakisho 0:c525c4fddba7 20 float GX[k], GY[k], GZ[k];
sasakisho 0:c525c4fddba7 21 float MX[k], MY[k], MZ[k];
sasakisho 0:c525c4fddba7 22 float T[k];
sasakisho 0:c525c4fddba7 23
sasakisho 0:c525c4fddba7 24 pc.baud(460800);
sasakisho 0:c525c4fddba7 25
sasakisho 0:c525c4fddba7 26 //accle&gyro ID
sasakisho 0:c525c4fddba7 27 ID = mpu.who();
sasakisho 0:c525c4fddba7 28 pc.printf("ID = 0x%x\r\n", ID);
sasakisho 0:c525c4fddba7 29
sasakisho 0:c525c4fddba7 30 //mag ID
sasakisho 0:c525c4fddba7 31 ID = mpu.AKwho();
sasakisho 0:c525c4fddba7 32 pc.printf("ID = 0x%x\n", ID);
sasakisho 0:c525c4fddba7 33
sasakisho 0:c525c4fddba7 34 //MPU9250 start
sasakisho 0:c525c4fddba7 35 mpu.start();
sasakisho 0:c525c4fddba7 36
sasakisho 0:c525c4fddba7 37 //accel setup
sasakisho 0:c525c4fddba7 38 mpu.accelsetup(3);
sasakisho 0:c525c4fddba7 39
sasakisho 0:c525c4fddba7 40 //gyro setup
sasakisho 0:c525c4fddba7 41 mpu.gyrosetup(3);
sasakisho 0:c525c4fddba7 42
sasakisho 0:c525c4fddba7 43 //mag setup
sasakisho 0:c525c4fddba7 44 mpu.AKsetup(1);
sasakisho 0:c525c4fddba7 45 wait(0.5);
sasakisho 0:c525c4fddba7 46
sasakisho 0:c525c4fddba7 47 t.start();
sasakisho 0:c525c4fddba7 48
sasakisho 0:c525c4fddba7 49 while(j < 12)
sasakisho 0:c525c4fddba7 50 {
sasakisho 0:c525c4fddba7 51
sasakisho 0:c525c4fddba7 52 while(i < k)
sasakisho 0:c525c4fddba7 53 {
sasakisho 0:c525c4fddba7 54 mpu.accel_read(3, accel);
sasakisho 0:c525c4fddba7 55 mpu.gyro_read(3, gyro);
sasakisho 0:c525c4fddba7 56 mpu.mag_read(mag);
sasakisho 0:c525c4fddba7 57
sasakisho 0:c525c4fddba7 58 AX[i] = accel[0];
sasakisho 0:c525c4fddba7 59 AY[i] = accel[1];
sasakisho 0:c525c4fddba7 60 AZ[i] = accel[2];
sasakisho 0:c525c4fddba7 61
sasakisho 0:c525c4fddba7 62 GX[i] = gyro[0];
sasakisho 0:c525c4fddba7 63 GY[i] = gyro[1];
sasakisho 0:c525c4fddba7 64 GZ[i] = gyro[2];
sasakisho 0:c525c4fddba7 65
sasakisho 0:c525c4fddba7 66 MX[i] = mag[0];
sasakisho 0:c525c4fddba7 67 MY[i] = mag[1];
sasakisho 0:c525c4fddba7 68 MZ[i] = mag[2];
sasakisho 0:c525c4fddba7 69
sasakisho 0:c525c4fddba7 70 T[i] = t.read();
sasakisho 0:c525c4fddba7 71
sasakisho 0:c525c4fddba7 72 i++;
sasakisho 0:c525c4fddba7 73
sasakisho 0:c525c4fddba7 74 wait(0.0083);
sasakisho 0:c525c4fddba7 75
sasakisho 0:c525c4fddba7 76 }
sasakisho 0:c525c4fddba7 77
sasakisho 0:c525c4fddba7 78 i = 0;
sasakisho 0:c525c4fddba7 79
sasakisho 0:c525c4fddba7 80 while(i < k)
sasakisho 0:c525c4fddba7 81 {
sasakisho 0:c525c4fddba7 82 pc.printf("%f, %f, %f, %f, %f, %f, %f, %f, %f, %f\n", T[i], AX[i], AY[i], AZ[i], GX[i], GY[i], GZ[i], MX[i], MY[i], MZ[i]) ;
sasakisho 0:c525c4fddba7 83
sasakisho 0:c525c4fddba7 84 i++;
sasakisho 0:c525c4fddba7 85 }
sasakisho 0:c525c4fddba7 86
sasakisho 0:c525c4fddba7 87 i = 0;
sasakisho 0:c525c4fddba7 88
sasakisho 0:c525c4fddba7 89 j++;
sasakisho 0:c525c4fddba7 90 }
sasakisho 0:c525c4fddba7 91
sasakisho 0:c525c4fddba7 92 t.stop();
sasakisho 0:c525c4fddba7 93
sasakisho 0:c525c4fddba7 94 pc.printf("finish!");
sasakisho 0:c525c4fddba7 95 }