#include <Wire.h>
#include <Adafruit_MPU6050.h>
#include <Adafruit_Sensor.h>
#include <LiquidCrystal.h>

Adafruit_MPU6050 mpu;

LiquidCrystal lcd(13,12,11,10,9,8); // Set the LCD I2C address and size

void setup() {
  Serial.begin(9600);
  while (!Serial)
    delay(10); // wait for Serial monitor
  Serial.println("Initializing MPU6050...");
  mpu.begin();
  Serial.println("MPU6050 initialized.");

  lcd.begin(16, 2); // Initialize the LCD
  lcd.print("MPU6050 Sensor");
  lcd.setCursor(0, 1);
  lcd.print("Accelerometer");
  delay(2000);
  lcd.clear();
}

void loop() {
  sensors_event_t a, g, temp;
  mpu.getEvent(&a, &g, &temp);

  Serial.print("Acceleration: X=");
  Serial.print(a.acceleration.x);
  Serial.print(" Y=");
  Serial.print(a.acceleration.y);
  Serial.print(" Z=");
  Serial.println(a.acceleration.z);
  delay(1000); // delay for 1 second

  lcd.setCursor(0, 0);
  lcd.print("X:");
  lcd.setCursor(7, 0);
  lcd.print(a.acceleration.x, 2);
  lcd.setCursor(12, 0);
  lcd.print("X");
  lcd.setCursor(0, 1);
  lcd.print("       ");
  lcd.setCursor(0, 1);
  lcd.print("Y:");
  lcd.setCursor(7, 1);
  lcd.print(a.acceleration.y, 2);
  lcd.setCursor(12, 1);
  lcd.print("Y");
  delay(500); // Adjust the delay as needed
}