一、模块介绍
MPU6050是一款集成了加速度传感器和陀螺仪的6轴运动传感器。它可以用于测量物体在三维空间中的加速度和旋转速度,并计算出物体的姿态角度。该传感器具有高精度和低功耗的特性,因此也被广泛应用于机器人、飞行器、智能穿戴设备等领域。在使用MPU6050时,用户需要使用I2C接口与其通信,并进行相应的配置和校准,以保证准确的数据输出。
关注微信公众号--星之援工作室 发送关键字(MPU6050)
➡️➡️
使用的注意事项
1.供电选择选择的5V供电更稳定
2.使用的模拟IIC通信
3.需要主要MUP6050受到的环境因素改变较多,使用的时候尽量固定水平位面
4.完整代码资料中有,可自行移植
二、代码展示
main
/****************************************
1. MPU6050
PB9:INT
PB7:IIC_SCL
PB8:IIC_SDA
2. IIC显示屏
PA1:IIC_SCL_OLED
PA2:IIC_SDA_OLED
****************************************/
#include "oled.h"
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include "mpu6050.h"
#include "inv_mpu.h"
#include "inv_mpu_dmp_motion_driver.h"
#include "uart.h"
#include "stdio.h"
MPU6050_Typedef mup6050_init; // 设备状态
int main(void)
{
//NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC中断分组2:2位抢占优先级,2位响应优先级
delay_init(); //延时初始化
OLED_Init();
OLED_ColorTurn(0); //0正常显示,1 反色显示
OLED_DisplayTurn(0); //0正常显示 1 屏幕翻转显示
MPU_Init(); //初始化MPU6050
USART1_Init();
OLED_ShowString(15,0,"Waiting",24,1);
OLED_ShowString(0,28,"Initialise",24,1);
OLED_Refresh();
while(mpu_dmp_init())
{
OLED_Clear();
OLED_Refresh();
}
OLED_Clear();
OLED_Refresh();
OLED_ShowString(0,0,"PITCH:",16,1);
OLED_ShowString(0,15,"ROLL:",16,1);
OLED_ShowString(0,31,"YAW:",16,1);
OLED_ShowString(0,47,"TEMP:",16,1);
OLED_Refresh();
while(1)
{
if(mpu_dmp_get_data(&mup6050_init.pitch,&mup6050_init.roll,&mup6050_init.yaw)==0)
{
mup6050_init.temp=MPU_Get_Temperature(); //得到温度值
MPU_Get_Accelerometer(&mup6050_init.aacx,&mup6050_init.aacy,&mup6050_init.aacz); //得到加速度传感器数据
MPU_Get_Gyroscope(&mup6050_init.gyrox,&mup6050_init.gyroy,&mup6050_init.gyroz); //得到陀螺仪数据
/*
printf("Pitch: %frn",(float)pitch);
printf("Roll: %frn",(float)roll);
printf("yaw: %frn",(float)yaw);
printf("temp: %frn",(float)temp);
printf(" rn");
*/
OLED_ShowFloat(50, 0,mup6050_init.pitch,1,16,1);
OLED_ShowFloat(50,15,mup6050_init.roll,5,16,1);
OLED_ShowFloat(50,31,mup6050_init.yaw,5,16,1);
OLED_ShowFloat(50,47,(float)mup6050_init.temp/100,5,16,1);
OLED_Refresh();
}
}
}
三、参考
正点原子STM32学习笔记——MPU6050介绍https://blog.csdn.net/wlswls1711/article/details/102727250?ops_request_misc=&request_id=&biz_id=102&utm_term=mpu6050%E5%A7%BF%E6%80%81%E8%A7%A3%E7%AE%97stm32&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-102727250.nonecase&spm=1018.2226.3001.4187
完整代码请关注公众号进行获取和咨询
联系方式 微信号:13648103287