#include<Wire.h>
const int MPU_addr=0x68;
int16_t AcX,AcY,AcZ,Tmp,GyX,GyY,GyZ;
void setup(){
  Wire.begin();
  Wire.beginTransmission(MPU_addr);
  Wire.write(0x6B);  // PWR_MGMT_1 register
  Wire.write(0);     // wakes up the MPU-6050
  Wire.endTransmission(true);
  Serial.begin(115200);
}
void loop(){
  Wire.beginTransmission(MPU_addr);
  Wire.write(0x3B);  // starting ACCEL_XOUT_H
  Wire.endTransmission(false);
  Wire.requestFrom(MPU_addr,14,true);  // total 14 registers
  AcX=Wire.read()<<8|Wire.read();  // ACCEL_XOUT   
  AcY=Wire.read()<<8|Wire.read();  // ACCEL_YOUT
  AcZ=Wire.read()<<8|Wire.read();  // ACCEL_ZOUT
  Tmp=Wire.read()<<8|Wire.read();  // TEMP_OUT
  GyX=Wire.read()<<8|Wire.read();  // GYRO_XOUT
  GyY=Wire.read()<<8|Wire.read();  // GYRO_YOUT
  GyZ=Wire.read()<<8|Wire.read();  // GYRO_ZOUT
  Serial.print("AcX "); Serial.print(AcX);
  Serial.print(" AcY "); Serial.print(AcY);
  Serial.print(" AcZ "); Serial.print(AcZ);
  Serial.print(" Tmp "); Serial.print(Tmp/340.00+36.53);
  Serial.print(" GyX "); Serial.print(GyX);
  Serial.print(" GyY "); Serial.print(GyY);
  Serial.print(" GyZ "); Serial.println(GyZ);
  delay(50);
}
