imu.h 942 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #pragma once
  2. // #define M5STACK_MPU6886
  3. #define M5STACK_MPU9250
  4. // #define M5STACK_MPU6050
  5. // #define M5STACK_200Q
  6. #include <M5Stack.h>
  7. #include <BMM150class.h>
  8. #include <utility/quaternionFilters.h>
  9. #include <ResponsiveAnalogRead.h>
  10. #include <Smoothed.h>
  11. #include <ArduinoJson.h>
  12. extern float accX ;
  13. extern float accY ;
  14. extern float accZ ;
  15. extern float gyroX ;
  16. extern float gyroY ;
  17. extern float gyroZ ;
  18. extern float pitch ;
  19. extern float roll ;
  20. extern float yaw ;
  21. extern float pitch_ahrs ;
  22. extern float roll_ahrs ;
  23. extern float yaw_ahrs ;
  24. extern float gyro_smoothing;
  25. extern float ahrs_smoothing;
  26. extern Smoothed<float> yaw_smooth;
  27. extern Smoothed<float> pitch_smooth;
  28. extern Smoothed<float> roll_smooth;
  29. extern ResponsiveAnalogRead gyro_rar;
  30. extern ResponsiveAnalogRead yaw_rar;
  31. extern ResponsiveAnalogRead pitch_rar;
  32. extern ResponsiveAnalogRead roll_rar;
  33. void initGyro();
  34. void calibGyro();
  35. void setup_imu();
  36. void handle_imu();