Pmod_NAV SPI

Dependencies:   mbed LSM9DS1 MadgwickAHRS

Committer:
771_8bit
Date:
Thu Apr 25 04:07:15 2019 +0000
Revision:
1:50b33bd88ea5
Parent:
0:6c187b735281
hello;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
771_8bit 0:6c187b735281 1 #include "mbed.h"
771_8bit 0:6c187b735281 2 #include "LSM9DS1.h"
771_8bit 0:6c187b735281 3 #include "MadgwickAHRS.h"
771_8bit 0:6c187b735281 4
771_8bit 0:6c187b735281 5 RawSerial pc(USBTX, USBRX);
771_8bit 0:6c187b735281 6
771_8bit 0:6c187b735281 7 LSM9DS1 lsm = LSM9DS1(PB_5, PB_4, PB_3,PB_10,PA_8); //mosi,miso,sclk,cs_AG,cs_M
771_8bit 0:6c187b735281 8 Ticker AHRS;
771_8bit 0:6c187b735281 9 Ticker PRINT;
771_8bit 0:6c187b735281 10 DigitalOut myled(LED1);
771_8bit 0:6c187b735281 11 Madgwick filter = Madgwick();
771_8bit 0:6c187b735281 12
771_8bit 0:6c187b735281 13 void ahrs(){
771_8bit 0:6c187b735281 14 filter.update(lsm.gyro_y, lsm.gyro_x, lsm.gyro_z, lsm.accel_y, lsm.accel_x, lsm.accel_z ,lsm.mag_y, lsm.mag_x, lsm.mag_z);
771_8bit 0:6c187b735281 15 }
771_8bit 0:6c187b735281 16
771_8bit 0:6c187b735281 17 void print(){
771_8bit 0:6c187b735281 18 printf("roll:%f,pitch:%f,yaw:%f,accel_z:%f,gyro_z:%f,mag_x:%f\r\n", filter.getRoll(),filter.getPitch(),filter.getYaw(),lsm.accel_z, lsm.gyro_z,lsm.mag_x);
771_8bit 0:6c187b735281 19 }
771_8bit 0:6c187b735281 20
771_8bit 0:6c187b735281 21 int main() {
771_8bit 0:6c187b735281 22 lsm.initSPI();
771_8bit 0:6c187b735281 23 lsm.initAccel(lsm.LSM9DS1_ACCELRANGE_8G); //2,4,8,16
771_8bit 0:6c187b735281 24 lsm.initGyro(lsm.LSM9DS1_GYROSCALE_500DPS); //245,500,2000
771_8bit 0:6c187b735281 25 lsm.initMag(lsm.LSM9DS1_MAGGAIN_4GAUSS); //4,8,12,16
771_8bit 0:6c187b735281 26
771_8bit 0:6c187b735281 27 filter.begin(100); // N Hz
771_8bit 0:6c187b735281 28 AHRS.attach_us(&ahrs, 10000); // N us周期
771_8bit 0:6c187b735281 29
771_8bit 0:6c187b735281 30 PRINT.attach(&print,1);
771_8bit 0:6c187b735281 31
771_8bit 0:6c187b735281 32 while(1){
771_8bit 0:6c187b735281 33 lsm.readGyro();
771_8bit 0:6c187b735281 34 lsm.readAccel();
771_8bit 0:6c187b735281 35 lsm.readMag();
771_8bit 0:6c187b735281 36 wait(0.1);
771_8bit 0:6c187b735281 37 }
771_8bit 0:6c187b735281 38 }