MPU6050的使用

您所在的位置:网站首页 mpu6050寄存器中文版 MPU6050的使用

MPU6050的使用

2023-07-15 07:43| 来源: 网络整理| 查看: 265

MPU6050 前言一、MPU6050配置步骤:二、使用步骤1.修改模拟iic的硬件接口2.读入数据 总结

前言

本文章使用开发板正点原子STM32F407核心板,配置模拟iic来使用mpu6050陀螺仪。 配套代码可在我的资源中免费下载,仅供参考!

一、MPU6050配置步骤:

1.初始化IIC接口 初始化与MPU6050连接的SDA和SCL数据线。 2.复位MPU6050 MPU的地址由D0引脚决定,D0接地了,则地址为0x68;若接VDD,则地址为0x69. 通过对电源管理寄存器1(0x6b)的bit7位写1实现对MPU6050复位。复位后默认值位0X40,设置该寄存器为0x00唤醒MPU6050. 3.设置角速度传感器和加速度传感器的满量程范围 陀螺仪配置寄存器(0x1B)和加速度传感器配置寄存器(0x1C)。分别为+_2000dps、±2g. 4.设置其它参数 关中断,关AUX IIC接口,禁止FIFO,设置陀螺仪采样率和设置数字低通滤波器(DLPF). 分别通过中断使能寄存器 (0X38)和用户控制寄存器(0X6A)控制,通过 FIFO 使能寄存器(0X23)控制,默 认都是 0(即禁止 FIFO),采样率分频寄存器(0X19) 控制:50.数字低通滤波器(DLPF)寄存器(0X1A) 带宽的 1/2 。 5.配置系统时钟源并使能角速度传感器和加速度传感器 系统时钟源:电源管理寄存器 1(0X6B) 使能角速度传感器和加速度传感器:电源管理寄存器 2(0X6C) 陀螺仪配置寄存器,该寄存器地址为: 0X1B在这里插入图片描述只关心 FS_SEL[1:0]这两个位,用于设置陀螺仪的满量程范围 加速度传感器配置寄存器,寄存器地址为: 0X1C 在这里插入图片描述 只关心 AFS_SEL[1:0]这两个位,用于设置加速度传感器的满量程范围

FIFO 使能寄存器,寄存器地址为: 0X23在这里插入图片描述 可以不用 FIFO,设置对应 位为 0 即可禁止 FIFO,设置为 1,则使能 FIFO。

陀螺仪采样率分频寄存器,寄存器地址为: 0X19 在这里插入图片描述 采样频率 = 陀螺仪输出频率 / (1+SMPLRT_DIV) 假定设置为 50Hz,那么 SMPLRT_DIV=1000/50-1=19。

配置寄存器,寄存器地址为: 0X1A在这里插入图片描述 主要关心数字低通滤波器(DLPF)的设置位,即: DLPF_CFG[2:0],

电源管理寄存器 2,寄存器地址为: 0X6C 在这里插入图片描述

二、使用步骤 1.修改模拟iic的硬件接口

代码如下(示例):

AD0-->GND SCL-->PC4 SDA-->PC5 INT-->PC0 //初始化IIC SCL/SDA void IIC_Init(void) { GPIO_InitTypeDef GPIO_InitStructure; RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC, ENABLE);//使能GPIOC时钟 //GPIOC4,C5初始化设置 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4 | GPIO_Pin_5; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;//普通输出模式 GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽输出 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉 GPIO_Init(GPIOC, &GPIO_InitStructure);//初始化 IIC_SCL=1; IIC_SDA=1; } //IO方向设置 #define SDA_IN() {GPIOC->MODER&=~(3


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3