IICreadBytes(devAddr, MPU6050_RA_ACCEL_XOUT_H, 14, buffer);
对于加计x轴的数据,buffer[0]存放高位--0xff,buffer[1]--0x40存放低位
计算方法:if(buffer[0]>0x7f)
MPU6050_Lastax=((buffer[0]*256+buffer[1])-65535);//=-191
else
MPU6050_Lastax=((buffer[0]*256+buffer[1]);
或者 MPU6050_Lastax=(((int16_t)buffer[0]) << 8) | buffer[1];//=0xff40直接把两个两位无符号数合并成4位的有符号数。
MPU6050_Lastax=MPU6050_Lastax/16.384;(量程±2g)
如何计算0xff40对应的十进制数字:用-(0xffff-0xff40+1)=-191
对于加计x轴的数据,buffer[0]存放高位--0xff,buffer[1]--0x40存放低位
计算方法:if(buffer[0]>0x7f)
MPU6050_Lastax=((buffer[0]*256+buffer[1])-65535);//=-191
else
MPU6050_Lastax=((buffer[0]*256+buffer[1]);
或者 MPU6050_Lastax=(((int16_t)buffer[0]) << 8) | buffer[1];//=0xff40直接把两个两位无符号数合并成4位的有符号数。
MPU6050_Lastax=MPU6050_Lastax/16.384;(量程±2g)
如何计算0xff40对应的十进制数字:用-(0xffff-0xff40+1)=-191