您的位置:首页 > 其它

stm32小四轴之MPU6050的DMP库移植

2017-02-11 20:08 399 查看
      前些天,根据原子哥和火哥的MPU6050例程,自己仿写了一个IIC读MPU6050的程序,因为我要做的是小四轴,要姿态融合解算,只是单纯的原始数据没有实际价值,所以一开始我仿照crazepony的程序写DMP程序。但是,crazepony的DMP是自己写的,不是用官方的DMP库,我仿写起来很吃力,昨天花了7、8个小时也没有写出了。到了今天,突然醒悟,百度一下,发现大部分DMP都是移植官方的库,简单又方便,可怜我一直以为crazepong的写法才是简便的

,转变思想后,立马移植官方的DMP库。
       以下就是移植过程:
       1、把官方DMP库即下图的eMPL和我自己的mpu605、myiic文件复制到[HARDWARE]文件夹中。



        2、打开MDK工程,双击[HARDWARE],把3个文件都添加进去。

       3、添加完之后,在main函数文件包含头文件。

     4、在inv_mpu.c文件,将官方定义的i2cwrite,i2cread,delay_ms,get_ms函数换成自己的函数。

    5、在inv_mpu.c文件的底部,添加MPU_DMP初始化函数mpu_dmp_init()和读DMP函数mpu_dmp_get_data(),并将获得的四元素转换成欧拉角。

    6、到此就移植完,然后在main函数中把获得的数据打印出来。

    到这一步,已经获取好数据了,下一步就是学习姿态控制算法了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: