#include <ESP32Servo.h>
#include <MPU6050_tockn.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
MPU6050 mpu6050(Wire);
long timer = 0;
const int servoPin = 1;
Servo servo;
float angulo = 0.0;
void setup() {
Serial.begin(115200);
Wire.begin();
servo.attach(servoPin);
mpu6050.begin();
mpu6050.calcGyroOffsets(true);
lcd.init(); //Inicia pantalla
lcd.backlight(); //Iluminacion led pantalla
lcd.setCursor(0,0); //Cursor en posición 0,0 (columna,fila)
lcd.print("Angulo gyro:");
}
void loop() {
mpu6050.update();
if (millis()-timer > 500) {
angulo = mpu6050.getGyroAngleX();
if (0.0<=angulo<=180.0) {
servo.write(angulo);
}
lcd.setCursor(0,1);
lcd.print(angulo);
lcd.print(" ");
timer = millis();
}
}
Loading
esp32-s2-devkitm-1
esp32-s2-devkitm-1