12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- // define must ahead #include <M5Stack.h>
- #define M5STACK_MPU6886
- // #define M5STACK_MPU9250
- // #define M5STACK_MPU6050
- // #define M5STACK_200Q
- #include <M5Stack.h>
- float accX = 0.0F;
- float accY = 0.0F;
- float accZ = 0.0F;
- float gyroX = 0.0F;
- float gyroY = 0.0F;
- float gyroZ = 0.0F;
- float pitch = 0.0F;
- float roll = 0.0F;
- float yaw = 0.0F;
- float temp = 0.0F;
- // the setup routine runs once when M5Stack starts up
- void setup(){
- // Initialize the M5Stack object
- M5.begin();
- /*
- Power chip connected to gpio21, gpio22, I2C device
- Set battery charging voltage and current
- If used battery, please call this function in your project
- */
- M5.Power.begin();
-
- M5.IMU.Init();
- M5.Lcd.fillScreen(BLACK);
- M5.Lcd.setTextColor(GREEN , BLACK);
- M5.Lcd.setTextSize(2);
- }
- // the loop routine runs over and over again forever
- void loop() {
- // put your main code here, to run repeatedly:
- M5.IMU.getGyroData(&gyroX,&gyroY,&gyroZ);
- M5.IMU.getAccelData(&accX,&accY,&accZ);
- M5.IMU.getAhrsData(&pitch,&roll,&yaw);
- M5.IMU.getTempData(&temp);
-
- M5.Lcd.setCursor(0, 20);
- M5.Lcd.printf("%6.2f %6.2f %6.2f ", gyroX, gyroY, gyroZ);
- M5.Lcd.setCursor(220, 42);
- M5.Lcd.print(" o/s");
- M5.Lcd.setCursor(0, 65);
- M5.Lcd.printf(" %5.2f %5.2f %5.2f ", accX, accY, accZ);
- M5.Lcd.setCursor(220, 87);
- M5.Lcd.print(" G");
- M5.Lcd.setCursor(0, 110);
- M5.Lcd.printf(" %5.2f %5.2f %5.2f ", pitch, roll, yaw);
- M5.Lcd.setCursor(220, 132);
- M5.Lcd.print(" degree");
- M5.Lcd.setCursor(0, 155);
- M5.Lcd.printf("Temperature : %.2f C", temp);
- delay(1);
- }
|