#include <Wire.h>
#include <Adafruit_BMP280.h>
#include <SoftwareSerial.h>
#define BMP280_ADDRESS 0x76
Adafruit_BMP280 bmp; // I2C
SoftwareSerial mySerial(7, 8);
unsigned long start_bmp = 0;
unsigned long start_gnss = 0;
bool p=false;
void setup() {
Serial.begin(9600);
mySerial.begin(9600);
mySerial.println("$PMTK220,1000*5F");
while ( !Serial ) delay(1000); // wait for native usb
unsigned status;
status = bmp.begin(BMP280_ADDRESS);
if (!status) {
while (1) delay(10);
}
/* Default settings from the datasheet. */
bmp.setSampling(Adafruit_BMP280::MODE_NORMAL, /* Operating Mode. */
Adafruit_BMP280::SAMPLING_X2, /* Temp. oversampling */
Adafruit_BMP280::SAMPLING_X16, /* Pressure oversampling */
Adafruit_BMP280::FILTER_X16, /* Filtering. */
Adafruit_BMP280::STANDBY_MS_500); /* Standby time. */
}
void loop() {
unsigned long current1=millis();
if (current1-start_bmp>=750 && p==false){
start_bmp=current1;
BMP_280();
p=true;
}
if (current1-start_gnss>=500){
start_gnss=current1;
Quectel_L89();
p=false;
}
}