简介
MPU6050是一个6轴姿态传感器,可以测量芯片自身X、Y、Z轴的加速度、角速度参数,通过数据融合,可进一步得到姿态角,常应用于平衡车、飞行器等需要检测自身姿态的场景
3轴加速度计(Accelerometer):测量X、Y、Z轴的加速度
3轴陀螺仪传感器(Gyroscope):测量X、Y、Z轴的角速度
MPU6050参数
16位ADC采集传感器的模拟信号,量化范围:-32768~32767
加速度计满量程选择:±2、±4、±8、±16(g)
陀螺仪满量程选择: ±250、±500、±1000、±2000(°/sec)
可配置的数字低通滤波器
可配置的时钟源
可配置的采样分频
I2C从机地址:1101000(AD0=0)
1101001(AD0=1)
硬件电路


框图

读数据传感器,就能得到测量值,全自动进行(类似AD连续转换和DMA转运)
**Self test自测单元:**验证芯片好坏,启动自测后,芯片内部会模拟一个外力施加在传感器上,外力导致传感器数据比平时大一些------如何自测?先使能自测,读取数据,再失能自测,读取数据,两个数据相减得到自测响应数据(在芯片手册范围内就说明芯片没问题)
Charge pump电荷泵or充电泵(一种升压电路):CPOUT引脚需要外接一个电容
例如5V电源和电容并联,电池给电容充电5V,再串联进电路就是10V了。但是电容电荷比较少,所以并联、串联的切换速度要快。
右侧寄存器和通信接口部分
中断状态寄存器:控制内部哪些事件到中断引脚的输出
FIFO:先入先出寄存器,对数据流进行缓存
Config registers配置寄存器:对内部电路进行配置
sensor registers:传感器寄存器,数据寄存器,存储各个传感器的数据
Factory calibration:工厂校准,内部传感器都进行了校准
DMP:数字运动处理器,芯片内部自带的姿态解算硬件算法,配合官方DMP库,可以进行姿态解算
FSYNC:帧同步
通信接口部分:

上面是I2C和SPI通信接口,用于和STM32通信
下面是主机通信接口,用于和MPU6050扩展的设备进行通信
serial interface bypass mux接口旁路选择器:就是一个开关,如果拨到上面辅助的I2C引脚就和正常的I2C引脚接在一起,这样两路总线就合到一起了,STM32可以控制所有设备;如果拨到下面,辅助的I2C引脚就由MPU6050控制,两条I2C独立分开,STM32是MPU6050的大哥,MPU6050是扩展设备的大哥
右下角为供电部分