最近项目上要用到 MPU6050 陀螺仪,以前没有接触过它。虽然在网上很容易就可以找到了需要的代码。实现了一部分功能。但是却还是对陀螺仪的工作原理不太了解,它的代码也需要分析一下,I2C通信、相关寄存器也要熟悉。我看网上多是在Arduino开发板实现的,那么在 C51单片机板上怎么实现呢,又或者 S5PV210 上怎么实现呢?带着这些问题,开始 MPU6050 的开发。
一、型号
我看了一下型号为 GY-521 MPU6050模块 三维角度传感器6DOF 三轴加速度计电子陀螺仪
可在官网下载最新的芯片手册和寄存器映射和描述,参看:MPU6050 官网
二、查看芯片手册
(1)产品简介
MPU-60X0是世界上第一款集成 6 轴MotionTracking设备。它集成了3轴MEMS陀螺仪,3轴MEMS加速度计,以及一个可扩展的数字运动处理器 DMP( DigitalMotion Processor),可用I2C接口连接一个第三方的数字传感器,比如磁力计。扩展之后就可以通过其 I2C或SPI接口输出一个9轴的信号( SPI接口仅在MPU-6000可用)。 MPU-60X0也可以通过其I2C接口连接非惯性的数字传感器,比如压力传感器。
MPU-60X0对陀螺仪和加速度计分别用了三个16位的ADC,将其测量的模拟量转化为可输出的数字量。为了精确跟踪快速和慢速的运动,传感器的测量范围都是用户可控的,陀螺仪可测范围为±250, ±500, ±1000, ±2000°/秒( dps),加速度计可测范围为±2, ±4,±8, ±16g。
一个片上1024字节的FIFO,有助于降低系统功耗。和所有设备寄存器之间的通信采用 400kHz的 I2C接口或 1MHz的 SPI接口( SPI仅MPU-6000可用)。 对于需要高速传输的应用, 对寄存器的读取和中断可用 20MHz的SPI。另外,片上还内嵌了一个温度传感器和在工作环境下仅有±1%变动的振荡器。芯片尺寸4×4×0.9mm,采用QFN封装(无引线方形封装),可承受最大 10000g的冲击,并有可编程的低通滤波器。
关于电源, MPU-60X0可支持 VDD范围 2.5V±5%, 3.0V±5%,或 3.3V±5%。另外MPU-6050还有一个 VLOGIC引脚,用来为 I2C输出提供逻辑电平。 VLOGIC电压可取1.8±5%或者VDD。
(2)产品特征
数字输出6轴或9轴的旋转矩阵、四元数(quaternion)、欧拉角格式(EulerAngleforma)的融合演算数据。
具有131 LSBs/°/sec 敏感度与全格感测范围为±250、 ±500、 ±1000与±2000°/sec 的3轴角速度感测器(陀螺仪)。
可程式控制,且程式控制范围为±2g、 ±4g、 ±8g和±16g的3轴加速器。
移除加速器与陀螺仪轴间敏感度,降低设定给予的影响与感测器的飘移。
数字运动处理(DMP:DigitalMotion Processing)引擎可减少复杂的融合演算数据、 感测器同步化、 姿势感应等的负荷。 运动处理数据库支持 Android、 Linux与Windows 内建之运作时间偏差与磁力感测器校正演算技术,免除了客户须另外进行校正的需求。
以数位输出的温度传感器
以数位输入的同步引脚(Syncpin)支援视频电子影相稳定技术与GPS
可程式控制的中断(interrupt)支援姿势识别、摇摄、画面放大缩小、滚动、快速下降中断、 high-G中断、零动作感应、触击感应、摇动感应功能。
VDD供电电压为2.5V±5%、 3.0V±5%、 3.3V±5%; VDDIO为1.8V±5%
陀螺仪运作电流: 5mA, 陀螺仪待命电流: 5uA; 加速器运作电流: 500uA, 加速器省电模式电流: 40uA@10Hz
高达 400kHz 快速模式的 I2C,或最高至 20MHz 的 SPI 串行主机接口(serial hostinterface)
内建振荡器在工作温度范围内仅有±1%频率变化。 可选外部时钟输入 32.768kHz或19.2MHz
(3)使用说明
《1》引脚输出和信号描述
《2》典型用法
《3》所需电容规格
需要了解的小知识点:
电容的基本单位是F(法拉),其它单位还有:毫法(mF)、微法(uF)、纳法(nF)、皮法(pF)。
由于单位F 的容量太大,所以我们看到的一般都是μF、nF、pF的单位。
换算:1F=1000000μF,1μF=1000nF=1000000pF
电容规格:Ceramic, X7R, 0.1μF ±10%, 2V 是什么意思呢?
参看:全系列电容规格书
Ceramic
陶瓷介质
X7R
温度系数/特性:工作温度范围 -55℃~125℃ (军工级)
元器件级别主要是指其工作温度范围,如下:
商业级:0℃~+70℃
工业级:-40℃~+85℃
汽车级:-40℃~125℃
军品级:-55℃~+125℃
0.1μF ±10%
0.1μF 容量,容差是±10%
2V
额定电压,以此也可以选择电容尺寸
三、电路图
到此,硬件部分看完了!!