init
This commit is contained in:
69
mpu6050/mpu6050.ino
Normal file
69
mpu6050/mpu6050.ino
Normal file
@ -0,0 +1,69 @@
|
||||
// I2Cdev and MPU6050 must be installed as libraries, or else the .cpp/.h files
|
||||
// for both classes must be in the include path of your project
|
||||
#include "I2Cdev.h"
|
||||
#include "MPU6050.h"
|
||||
#include "Wire.h"
|
||||
|
||||
MPU6050 accelgyro;
|
||||
|
||||
int16_t ax, ay, az;
|
||||
int16_t gx, gy, gz;
|
||||
|
||||
void setup() {
|
||||
Wire.begin();
|
||||
|
||||
// initialize serial communication
|
||||
// (38400 chosen because it works as well at 8MHz as it does at 16MHz, but
|
||||
// it's really up to you depending on your project)
|
||||
Serial.begin(38400);
|
||||
|
||||
// initialize device
|
||||
Serial.println("Initializing I2C devices...");
|
||||
accelgyro.initialize();
|
||||
|
||||
// verify connection
|
||||
Serial.println("Testing device connections...");
|
||||
Serial.println(accelgyro.testConnection() ? "MPU6050 connection successful" : "MPU6050 connection failed");
|
||||
|
||||
// use the code below to change accel/gyro offset values
|
||||
/*
|
||||
Serial.println("Updating internal sensor offsets...");
|
||||
// -76 -2359 1688 0 0 0
|
||||
Serial.print(accelgyro.getXAccelOffset()); Serial.print("\t"); // -76
|
||||
Serial.print(accelgyro.getYAccelOffset()); Serial.print("\t"); // -2359
|
||||
Serial.print(accelgyro.getZAccelOffset()); Serial.print("\t"); // 1688
|
||||
Serial.print(accelgyro.getXGyroOffset()); Serial.print("\t"); // 0
|
||||
Serial.print(accelgyro.getYGyroOffset()); Serial.print("\t"); // 0
|
||||
Serial.print(accelgyro.getZGyroOffset()); Serial.print("\t"); // 0
|
||||
Serial.print("\n");
|
||||
accelgyro.setXGyroOffset(220);
|
||||
accelgyro.setYGyroOffset(76);
|
||||
accelgyro.setZGyroOffset(-85);
|
||||
Serial.print(accelgyro.getXAccelOffset()); Serial.print("\t"); // -76
|
||||
Serial.print(accelgyro.getYAccelOffset()); Serial.print("\t"); // -2359
|
||||
Serial.print(accelgyro.getZAccelOffset()); Serial.print("\t"); // 1688
|
||||
Serial.print(accelgyro.getXGyroOffset()); Serial.print("\t"); // 0
|
||||
Serial.print(accelgyro.getYGyroOffset()); Serial.print("\t"); // 0
|
||||
Serial.print(accelgyro.getZGyroOffset()); Serial.print("\t"); // 0
|
||||
Serial.print("\n");
|
||||
*/
|
||||
|
||||
}
|
||||
|
||||
void loop() {
|
||||
// read raw accel/gyro measurements from device
|
||||
accelgyro.getMotion6(&ax, &ay, &az, &gx, &gy, &gz);
|
||||
|
||||
// these methods (and a few others) are also available
|
||||
//accelgyro.getAcceleration(&ax, &ay, &az);
|
||||
//accelgyro.getRotation(&gx, &gy, &gz);
|
||||
// display tab-separated accel/gyro x/y/z values
|
||||
Serial.print("a/g:\t");
|
||||
Serial.print(ax); Serial.print("\t");
|
||||
Serial.print(ay); Serial.print("\t");
|
||||
Serial.print(az); Serial.print("\t");
|
||||
Serial.print(gx); Serial.print("\t");
|
||||
Serial.print(gy); Serial.print("\t");
|
||||
Serial.println(gz);
|
||||
}
|
||||
|
2
mpu6050/sketch.yaml
Normal file
2
mpu6050/sketch.yaml
Normal file
@ -0,0 +1,2 @@
|
||||
default_port: /dev/ttyACM0
|
||||
default_fqbn: esp32:esp32:XIAO_ESP32C3
|
Reference in New Issue
Block a user