赞
踩
本文主要介绍MPU6050的功能、原理、部分寄存器。
I2C介绍可见于:https://blog.csdn.net/qq_53922901/article/details/136430501?spm=1001.2014.3001.5501
软件I2C读写MPU6050见:https://blog.csdn.net/qq_53922901/article/details/136662006?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22136662006%22%2C%22source%22%3A%22qq_53922901%22%7D
要根据实际情况来选择满量程,在不会以此满量程的情况下,满量程越小,对信号的感知就越细腻
I2C从机地址两种方式:
直接转16进制表示0x68,在时序中传入从机地址表示为(0x68<<1)| 0x01,左移一位再或上是要读还是要写
先左移一位变为0xd0,在时序中传入地址0xd0 | 0x01,直接或上要读还是要写
XCL、XDA:在MPU6050进行复杂的运动时,六轴姿态传感器会造成判断误差,此时可以用这些接口接入磁力计来提供稳定的偏航角来纠正姿态传感器。或者要用于无人机时,需要定高飞行,还可以加入气压计,扩展为10轴,提供高度的稳定参考。
AD0:可以看到为弱下拉,在浮空状态就是低电平,要使其置为高电平,直接将AD0连接VCC。
MPU-60X0由以下关键块和功能组成:
允许产生内部时钟的内部源是:
允许的外部时钟源是:
该寄存器指定来自用于生成MPU-60X0的采样速率的陀螺仪输出速率的分频器。
采样频率 = 时钟源 /(1 + SMPLRT_DIV)<分频系数>
注意:DLPF禁用时陀螺仪输出速率=为8 kHz(DLPF_CFG=0或7),启用DLPF时为1 kHz
此寄存器可配置陀螺仪和加速度计的外部帧同步(FSYNC)针脚采样(不使用)和数字低通滤波器(DLPF)设置
DLPF由DLPF_CFG配置。加速度计和陀螺仪根据DLPF_CFG的值进行过滤,如下表所示:
陀螺仪自检允许用户测试陀螺仪的机械和电气部分。通过控制该寄存器的XG_ST、YG_ST和ZG_ST位,可以激活每个陀螺仪轴的自检。每个轴的自检可以独立进行,也可以同时进行。
自测响应 = 自测使能时的数据 - 自测失能时的数据
自测响应的最小最大值
FS_SEL根据下表选择陀螺仪输出的全比例范围:
该寄存器用于触发加速度计的自检,并配置加速度计的全比例范围。(配置方法一致)此寄存器还可配置了数字高通滤波器(DHPF)。
这些寄存器存储了最近的加速度计测量值。
加速度计测量寄存器,以及温度测量寄存器、陀螺仪测量寄存器和外部传感器数据寄存器,由两组寄存器组成:一个内部寄存器集和一个面向用户的读取寄存器集。
LP_WAKE_CTRL:用于配置电源管理1寄存器中循环模式的频率
其他各位分别可以配置对应的轴是否进入待机状态
此寄存器用于验证设备的身份。WHO_AM_I的内容是MPU-60X0的7位I2C地址的上6位(即I2C从机地址)。MPU-60X0的I 2C地址的最不显著位由AD0引脚的值决定。AD0引脚的值没有反映在这个寄存器中。
默认读出为0x68
在下图中,系统处理器是MPU-6000的SPI主服务器。引脚8、9、23和24用于支持用于SPI通信的/CS、SDO、SCLK和SDI信号。
由于这些SPI引脚与I2 C的引脚(9、23和24)共享,系统处理器不能通过接口旁路复用器访问辅助I2 C总线,接口旁路复用器将处理器I2 C接口引脚连接到传感器I2 C接口引脚。由于MPU-6000作为I2 C主控的能力有限,并且依赖于系统处理器来管理任何辅助传感器的初始配置,必须使用另一种方法对辅助传感器I2 C总线引脚6和7(AUX_DA和AUX_CL)上的传感器进行编程。当在MPU-6000和系统处理器之间使用SPI通信时,可以通过使用I2 C Slave 0-4在任何设备上执行读写事务,并实现设备在辅助I2 C传感器总线上的注册。I2 C Slave 4接口只能用于执行单个字节的读和写事务。一旦配置了外部传感器,MPU-6000可以使用传感器I2 C总线执行单节或多字节读取。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。