可知,mpu_dmp_get_data的返回值一直是1是因为读取速度太慢FIFO溢出的问题 解决办法:使用dmp中断,中断一次读一次这样就不会出现溢出的情况了。 1 res=dmp_set_interrupt_mode(DMP_INT_CONTINUOUS);//dmp continus int
可知,mpu_dmp_get_data的返回值一直是1是因为读取速度太慢FIFO溢出的问题 解决办法:使用dmp中断,中断一次读一次这样就不会出现溢出的情况了。 res=dmp_set_interrupt_mode(DMP_INT_CONTINUOUS);//dmp continus int 1.
mpu_init 函数,初始化 MPU9250,之后就是设置 DMP 所用传感器、FIFO、采样率和加载固件 等一系列操作,在所有操作都正常之后,最后通过 mpu_set_dmp_state(1)使能 DMP 功能,在使 能成功以后,我们便可以通过 mpu_mpl_get_data 来读取姿态解算后的数据了。 mpu_mpl_get_data 函数代码如下: //得到 mpl 处理后...
在这句中,mpu_dmp_get_data(&pitch,&roll,&yaw)的返回值为-1,if进不去,我一层一层查下去,...
可能是出现FIFO溢出问题解析,不断进行循环读fiffo就可以得到正常数据。形如这样:注意: printf(“pitch:%f roll:%f yaw:%f\r\n”,pitch,roll,yaw);语句不要放在while里面!。
unsigned short length, unsigned char *data, unsigned char *more)中,if (!st.chip_cfg.dmp_on)...
程序老是卡在mpu_dmp_get_data(&pitch,&roll,&yaw)这里,困惑很久了,求助 ,电子技术论坛
问题出在移植的DMP库里面 在走mpu_dmp_get_data()的时候,里面有个mpu_read_fifo_stream()函数,里面有个if语句是这样的if (fifo_count > (st.hw->max_fifo >> 1)) { ...
* DMP_FEATURE_SEND_RAW_ACCEL: Add raw accelerometer data to the FIFO.* DMP_FEATURE_SEND_RAW_...
mpu_dmp_get_data 函数代码如下: //得到 dmp 处理后的数据(注意,本函数需要比较多堆栈,局部变量有点多) //pitch:俯仰角 精度:0.1° 范围:-90.0° <---> +90.0° //roll:横滚角 精度:0.1° 范围:-180.0°<---> +180.0° //yaw:航向角 精度:0.1° 范围:-180.0°<---> +180.0° ...