综合技术
直播中

王银喜

7年用户 2317经验值
私信 关注
[问答]

MPU6050 dmp读取数据FIFO溢出

很多人卡在这里吧
if (tmp[0] & BIT_FIFO_OVERFLOW) {
            mpu_reset_fifo();
            return -2;
问题的本质就是,读取数据速度不够快导致FIFO溢出。
据说解决的方法就是,不能只用一个dmp_read_fifo(gyro, accel, quat, &sensor_timestamp, &sensors,&more);函数。
我参考了据说“非常成功”的代码,他们使用的库都差不多,或者一样,那么玄机就在如何加快读取?
请各位大神帮帮忙,要不然我就直接读取陀螺仪加速度计原始数据自己做数据融合了,但是我觉得INVsense公司做dmp必定有它的道理吧。
还是想用DMP读取数据

回帖(14)

刘永杰

2019-4-15 08:33:39
参考下我们F407的例子吧。
举报

黄鼎

2019-4-15 08:45:23
我用STM32103X单片机
举报

王鹏飞

2019-4-15 09:03:47
我们例程读DMP,效果不错啊。没死在这里。
举报

孙丽萍

2019-4-15 09:22:17
读取速度上STM32完全不是问题,这个多检查一下你的程序。另外,里面的dmp算法可能静止的时候还可以,要是运动起来以后就需要结合GPS把运动加速度介入,这样才能计算出比较准确的姿态。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分