在原子哥阿波罗板子中,MPU9250_init函数并没有用到,为啥还要写呢

2019-07-20 08:26发布

u8 MPU9250_Init(void)
{
    u8 res=0;
    IIC_Init();   
    MPU_Write_Byte(MPU9250_ADDR,MPU_PWR_MGMT1_REG,0X80);
    delay_ms(100);  
    MPU_Write_Byte(MPU9250_ADDR,MPU_PWR_MGMT1_REG,0X00);
    MPU_Set_Gyro_Fsr(3);                                                       
          MPU_Set_Accel_Fsr(0);                                                               
    MPU_Set_Rate(50);                                                                       
    MPU_Write_Byte(MPU9250_ADDR,MPU_INT_EN_REG,0X00);  
          MPU_Write_Byte(MPU9250_ADDR,MPU_USER_CTRL_REG,0X00);
          MPU_Write_Byte(MPU9250_ADDR,MPU_FIFO_EN_REG,0X00);       
          MPU_Write_Byte(MPU9250_ADDR,MPU_INTBP_CFG_REG,0X82);
    res=MPU_Read_Byte(MPU9250_ADDR,MPU_DEVICE_ID_REG);
    if(res==MPU6500_ID)
    {
        MPU_Write_Byte(MPU9250_ADDR,MPU_PWR_MGMT1_REG,0X01);         
        MPU_Write_Byte(MPU9250_ADDR,MPU_PWR_MGMT2_REG,0X00);         
                    MPU_Set_Rate(50);                                                       
    }else return 1;

    res=MPU_Read_Byte(AK8963_ADDR,MAG_WIA);                             
    if(res==AK8963_ID)
    {
        MPU_Write_Byte(AK8963_ADDR,MAG_CNTL1,0X11);               
    }else return 1;

    return 0;
}


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
正点原子
1楼-- · 2019-07-20 11:16
 精彩回答 2  元偷偷看……
kbq1950361006
2楼-- · 2019-07-20 15:51
 精彩回答 2  元偷偷看……
凌小
3楼-- · 2019-07-20 19:05
正点原子 发表于 2018-4-28 15:16
在main函数里面就有调用。是MPU_Init

没有哎
凌小
4楼-- · 2019-07-21 00:43
kbq1950361006 发表于 2018-4-28 15:43
可能是直接拿别的历程过来改的,不必在意这个,无视或者删除

奥,好的。但是我发现调用mpu_dmp_init()这个函数,读不出来加速度数据,而调用MPU9250_Init()这个函数,加速度数据就读的很准,但姿态角Pitch角不准,你知道咋解决不·,谢谢
kbq1950361006
5楼-- · 2019-07-21 03:48
 精彩回答 2  元偷偷看……

一周热门 更多>