/ Programs / MPU9250_BMP280_Together / MPU9250_BMP280_Together.ino
MPU9250_BMP280_Together.ino
 1  #include <Wire.h>
 2  #include <SPI.h>
 3  #include <MPU9250_asukiaaa.h>
 4  #include <Adafruit_Sensor.h>
 5  #include <Adafruit_BMP280.h>
 6  
 7  #define CSB 10
 8  
 9  
10  MPU9250_asukiaaa mpu;
11  Adafruit_BMP280 bmp(CSB);
12  
13  float aX, aY, aZ, aSqrt, gX, gY, gZ, mX, mY, mZ, mDirection;
14  float temperature, pressure, altitude;
15  
16  void setup() {
17    Serial.begin(115200);
18    Wire.begin();
19    while(!Serial);
20  
21    mpu.beginAccel();
22    mpu.beginGyro();
23    mpu.beginMag();
24  
25    while(!bmp.begin()) {
26        Serial.println("BMP280 not found");
27        while(1);
28    }
29  
30    bmp.setSampling(Adafruit_BMP280::MODE_NORMAL, 
31                    Adafruit_BMP280::SAMPLING_X2, 
32                    Adafruit_BMP280::SAMPLING_X16, 
33                    Adafruit_BMP280::FILTER_X16,
34                    Adafruit_BMP280::STANDBY_MS_500);
35  
36  }
37  
38  void loop() {
39    mpu.accelUpdate();
40    mpu.gyroUpdate();
41    mpu.magUpdate();
42  
43    temperature = bmp.readTemperature();
44    pressure = bmp.readPressure();
45    altitude = bmp.readAltitude(1031.25); 
46  
47    aX = mpu.accelX();
48    aY = mpu.accelY();
49    aZ = mpu.accelZ();
50    aSqrt = mpu.accelSqrt();
51  
52    gX = mpu.gyroX();
53    gY = mpu.gyroY();
54    gZ = mpu.gyroZ();
55  
56    mX = mpu.magX();
57    mY = mpu.magY();
58    mZ = mpu.magZ();
59    mDirection = mpu.magHorizDirection();
60  
61    Serial.println("\nBMP280 DATA");
62    Serial.print("Temperature: "); Serial.println(temperature);
63    Serial.print("Pressure: "); Serial.println(pressure);
64    Serial.print("Altitude: "); Serial.println(altitude);
65  
66    Serial.println("\nMPU9250 DATA");
67    Serial.println("Accelerometer: "); 
68    Serial.print("X: "); Serial.println(aX);
69    Serial.print("Y: "); Serial.println(aY);
70    Serial.print("Z: "); Serial.println(aZ);
71    Serial.print("Sqrt: "); Serial.println(aSqrt);
72  
73    Serial.println("\nGyrometer: ");
74    Serial.print("X: "); Serial.println(gX);
75    Serial.print("Y: "); Serial.println(gY);
76    Serial.print("Z: "); Serial.println(gZ);
77  
78    Serial.println("\nMagnetometer: ");
79  
80    Serial.print("X: "); Serial.println(mZ);
81    Serial.print("Y: "); Serial.println(mY);
82    Serial.print("Z: "); Serial.println(mZ);
83    Serial.print("Horizontal Direction: "); Serial.println(mDirection);
84  
85    delay(1000);
86  }