加速度计和陀螺仪可以读了,但是磁力计就是不行,麻烦大神帮忙看看
//******读取MPU9250数据****************************************
void READ_MPU9250_ACCEL(void)
{
BUF[0]=Single_Read(ACCEL_ADDRESS,ACCEL_XOUT_L);
BUF[1]=Single_Read(ACCEL_ADDRESS,ACCEL_XOUT_H);
A_X= (BUF[1]<<8)|BUF[0];
A_X/=164; //读取计算X轴数据
// 。。。。。。
BUF[12]=Single_Read(ACCEL_ADDRESS,TEMP_OUT_L);
BUF[13]=Single_Read(ACCEL_ADDRESS,TEMP_OUT_H);
T_T= (BUF[13]<<8)|BUF[12];
T_T = ((T_T + 13200)) / 504;// 读取计算出温度
}
void READ_MPU9250_MAG(void)
{
Single_Write(GYRO_ADDRESS,0x37,0x02);//turn on Bypass Mode
delay5ms();
Single_Write(MAG_ADDRESS,0x0A,0x01);
delay5ms();
BUF[14]=Single_Read(MAG_ADDRESS,MAG_XOUT_L);
BUF[15]=Single_Read(MAG_ADDRESS,MAG_XOUT_H);
M_X=(BUF[15]<<8)|BUF[14];
BUF[16]=Single_Read(MAG_ADDRESS,MAG_YOUT_L);
BUF[17]=Single_Read(MAG_ADDRESS,MAG_YOUT_H);
M_Y= (BUF[17]<<8)|BUF[16];
//读取计算Y轴数据
//......
Single_Write(MAG_ADDRESS,0x0A,0x01);
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>