标题: STM32C8T6+MUP6050+DMP+输出俯仰角+翻滚角+偏航角 [打印本页]

作者: k455619    时间: 2017-9-14 14:00
标题: STM32C8T6+MUP6050+DMP+输出俯仰角+翻滚角+偏航角
利用mup6050自带的DMP,在mup6050中直接输出俯仰角+翻滚角+偏航角,下载好程序后,将mup6050水平放置,因为要自检,如果不水平放置,自检不会通过,则不能初始化DMP,在程序中,inv_mpu_dmp_motion_driver.c以及inv_mpu.c是官方的示例程序经由正点原子修改,我直接移植该程序。


stm32单片机源程序如下:
  1. #include "delay.h"
  2. #include "usart.h"
  3. #include "mup6050.h"
  4. #include "mup6050iic.h"
  5. #include "inv_mpu.h"
  6. #include "inv_mpu_dmp_motion_driver.h"
  7. u16 G_X,G_Y,G_Z,A_X,A_Y,A_Z;
  8. u8 A[6],G[6],J[1],i;       
  9. int main(void){
  10.         delay_init();
  11. uart_init(115200);
  12.         IIC_Init();
  13.         delay_ms(200);
  14.         i=mpu_dmp_init();
  15. while(1){
  16.         float pitch,roll,yaw;
  17.         mup6050_R_l(0x68,0x3b,6,A);
  18.         A_X=((u16)A[0]<<8)|A[1];
  19.         A_Y=((u16)A[2]<<8)|A[3];
  20.         A_Z=((u16)A[4]<<8)|A[5];
  21.         mup6050_R_l(0x68,0x43,6,G);
  22.         G_X=((u16)G[0]<<8)|G[1];
  23.         G_Y=((u16)G[2]<<8)|G[3];
  24.         G_Z=((u16)G[4]<<8)|G[5];
  25.         mpu_dmp_get_data(&pitch,&roll,&yaw);
  26.         printf("\r\n出错于第%d步\r\n",i);
  27.         printf("\r\n---------俯仰角---------%f\r\n",pitch);
  28.                 printf("\r\n---------翻滚角---------%f\r\n",roll);
  29.                 printf("\r\n---------航篇---------%f\r\n",yaw);
  30.                 printf("\r\n---------加速度X轴原始数据---------%d \r\n",A_X);
  31.         printf("\r\n---------加速度Y轴原始数据---------%d \r\n",A_Y);
  32.         printf("\r\n---------加速度Z轴原始数据---------%d \r\n",A_Z);
  33.                 printf("\r\n---------陀螺仪X轴原始数据---------%d \r\n",G_X);
  34. printf("\r\n---------陀螺仪Y轴原始数据---------%d \r\n",G_Y);
  35.                 printf("\r\n---------陀螺仪Z轴原始数据---------%d \r\n",G_Z);
  36.         delay_ms(10);
  37. }
  38. }
复制代码

所有资料51hei提供下载:
MUP6050+STM32.rar (337.09 KB, 下载次数: 93)





作者: dxa572862121    时间: 2017-9-27 15:35
恩,最近也在做这样的课题
作者: jiangkeqin_sy    时间: 2019-7-30 09:02
恩,最近也在做这样的课题




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1