mpu6050寄存器详解文档.docx

上传人:人*** 文档编号:558923614 上传时间:2022-11-27 格式:DOCX 页数:10 大小:416.52KB
返回 下载 相关 举报
mpu6050寄存器详解文档.docx_第1页
第1页 / 共10页
mpu6050寄存器详解文档.docx_第2页
第2页 / 共10页
mpu6050寄存器详解文档.docx_第3页
第3页 / 共10页
mpu6050寄存器详解文档.docx_第4页
第4页 / 共10页
mpu6050寄存器详解文档.docx_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《mpu6050寄存器详解文档.docx》由会员分享,可在线阅读,更多相关《mpu6050寄存器详解文档.docx(10页珍藏版)》请在金锄头文库上搜索。

1、mpu6050寄存器详解文档详解MPU6050,用STM32读取原始数据,并互相交融算出俯仰角、翻滚角、偏航角(2014-01-1616:53:41)转载是什么MPU6050是一个6轴运动办理组件,包含了3轴加快度和3轴陀螺仪。MPU-6000为全世界首例整合性6轴运动办理组件,相较于多组件方案,免去了组合陀螺仪与加快器时之轴间差的问题,减少了大批的包装空间。MPU-6000整合了3轴陀螺仪、3轴加快器,并含可藉由第二个I2C端口连接其余厂牌之加快器、磁力传感器、或其余传感器的数位运动办理(DMP:DigitalMotionProcessor)硬件加快引擎,由主要I2C端口以单一数据流的形式,

2、向应用端输出完好的9轴交融演算技术InvenSense的运动办理资料库,可办理运动感测的复杂数据,降低了运动办理运算对操作系统的负荷,并为应用开发供给架构化的API。MPU-6000的角速度全格感测范围为250、500、1000与2000/sec(dps),可正确追緃快速与慢速动作,并且,用户可程式控制的加快器全格感测范围为2g、4g8g与16g。产品传输可透过最高至400kHz的I2C或最高达20MHz的SPI。MPU-6000可在不一样电压下工作,VDD供电电压介为5%、5%或5%,逻辑接口VVDIO供电为5%。MPU-6000的包装尺寸(QFN),在业界是革命性的尺寸。其余的特色包含内建

3、的温度感测器、包含在运作环境中仅有1%改动的振荡器。2.加快度传感器是干嘛用的总而言这,加快度传感器,实际上是力传感器。用来检查上下左右前后哪几个面都受了多少力(包含重力),而后计算角度。3.陀螺仪是干嘛用的/10简而言之,陀螺仪就是到了90度,那么它在角速度检测仪。比方,一块板,以X轴为轴心,在一秒钟的时间转X轴上的角速度就是90度/秒(DPS,角速度单位,DegreePerSecond的缩写/S,表现了转动的快慢)分辨率是多少3轴加快度和3轴陀螺仪分别用了3个16位的ADC,也就是说,加快度有3个16位ADC,此中每个轴使用了一个。也是说,每个轴输出的数据,是216也就是-32768-+3

4、2768。陀螺仪也是相同。5.单位换算上边说的-32768-+32768速度达到多少度/秒,那么这个数字究竟代表了什么呢比方陀螺仪32768究竟是指角这个实际上是依据MPU6050设置的量程来决定的,量程不一样样,32768代表的值就不一样样。MPU6050的量程设置,在MPU6050:initialize()(库)初始化函数中进行了设置:setFullScaleGyroRange(MPU6050_GYRO_FS_250);setFullScaleAccelRange(MPU6050_ACCEL_FS_2);分别设置为,250度/秒,2g按陀螺仪来说,MPU6050有四个量程可选:250,50

5、0,1000,2000度/s比方说,设置了是250那,么-32768-+32768就代表了-250-+250。此时它的LSB(拉傻B,最低有效位)是131LSB/(度/s)STM32自带I2C,但一般有两个I2C1(PB6,PB7)和I2C2(PB10,PB11),并且,I2C分为硬件、和模拟。软件i2c是程序员使用程序控制SCL,SDA线输出高低电平,模拟硬件i2c程序员只要调用i2c的控制函数即可,不用直接的去控制i2c协议的时序.SCL,SDA高低电平的输出本模块采纳的是IIC通讯方式,因此我们只要要连接四跟线便能够完成电路的连接,简单方便!原始数占有:AX、AY、AZGX、GY、GZ简

6、单的算法以后能够获取Roll,pitch,yaw参照MPU-6050数据手册引脚说明:VDD供电电压为5%、5%、5%;VDDIO为5%内建振荡器在工作温度范围内仅有1%频率变化。可选外面时钟输入或找出几个重要的寄存器:1)Register25SampleRateDivider(SMPRT_DIV)1)SMPLRT_DIV8位无符号值,经过该值将陀螺仪输出分频,获取采样频率该寄存器指定陀螺仪输出率的分频,用来产生MPU-60X0的采样率。传感器寄存器的输出、FIFO输出、DMP采样和运动检测的都是基于该采样率。采样率的计算公式采样率=陀螺仪的输出率/(1+SMPLRT_DIV)当数字低通滤波器

7、没有使能的时候,陀螺仪的输出平路等于8KHZ,反之等于1KHZ。2)Register26Configuration(CONFIG)1)EXT_SYNC_SET位3无符号值,配置帧同步引脚的采样2)DLPF_CFG3位无符号值,配置数字低通滤波器该寄存器为陀螺仪和加快度计配置外面帧同步(FSYNC)引脚采样和数字低通滤波器DLPF)。经过配置EXT_SYNC_SET,能够对连接到FSYNC引脚的一个外面信号进行采样。FSYNC引脚上的信号变化会被锁存,这样就能捕捉到很短的频闪信号。采样结束后,锁存器将复位到当前的FSYNC信号状态。依据下边的表格定义的值,收集到的数据会替代掉数据寄存器中上一次接

8、收到的有效数据数字低通滤波器是由DLPF_CFG来配置,依据下表中DLPF_CFG的值对加快度传感器和陀螺仪滤波3)Register27GyroscopeConfiguration(GYRO_CONFIG)1)XG_ST设置此位,X轴陀螺仪进行自我测试。2)YG_ST设置此位,Y轴陀螺仪进行自我测试。3)ZG_ST设置此位,Z轴陀螺仪进行自我测试。4)FS_SEL2位无符号值。选择陀螺仪的量程。这个寄存器是用来触发陀螺仪自检和配置陀螺仪的满量程范围。陀螺仪自检同意用户测试陀螺仪的机械和电气部分,经过设置该寄存器的XG_ST、YG_ST和ZG_STbits能够激活陀螺仪对应轴的自检。每个轴的检测

9、能够独立进行或同时进行。自检的响应=打开自检功能时的传感器输出-未启用自检功能时传感器的输出在MPU-6000/MPU-6050数据手册的电气特征表中已经给出了每个轴的限制范围。当自检的响应值在规定的范围内,便能够经过自检;反之,就不可以经过自检。依据下表,FS_SEL选择陀螺仪输出的量程:4)Register28AccelerometerConfiguration(ACCEL_CONFIG)1)XA_ST设置为1时,X轴加快度感觉器进行自检。2)YA_ST设置为1时,Y轴加快度感觉器进行自检。3)ZA_ST设置为1时,Z轴加快度感觉器进行自检。4)AFS_SEL2位无符号值。选择加快度计的量

10、程。详尽细节和上边陀螺仪的相似。依据下表,AFS_SEL选择加快度传感器输出的量程。5)Registers59to64AccelerometerMeasurements(ACCEL_XOUT_H,ACCEL_XOUT_L,ACCEL_YOUT_H,ACCEL_YOUT_L,ACCEL_ZOUT_H,andACCEL_ZOUT)_L1)ACCEL_XOUT16位2s补码值。储存近来的X轴加快度感觉器的丈量值。2)ACCEL_YOUT16位2s补码值。储存近来的Y轴加快度感觉器的丈量值。3)ACCEL_ZOUT16位2s补码值。储存近来的Z轴加快度感觉器的丈量值。这些寄存器储存加快感觉器近来的丈量

11、值。加快度传感器寄存器,连同温度传感器寄存器、陀螺仪传感器寄存器和外面感觉数据寄存器,都由两部分寄存器构成(近似于STM32F10X系列中的影子寄存器):一个内部寄存器,用户不行见。另一个用户可读的寄存器。内部寄存器中数据在采样的时候及时的到更新,仅在串行通讯接口不忙碌时,才将内部寄存器中的值复制到用户可读的寄存器中去,防备了直接对感觉丈量值的突发接见。在寄存器28中定义了每个16位的加快度丈量值的最大范围,关于设置的每个最大范围,都对应一个加快度的敏捷度ACCEL_xOUT,以下边的表中所示:6)Registers65and66TemperatureMeasurement(TEMP_OUT_

12、HandTEMP_OUT_L)1)TEMP_OUT16位有符号值。储存的近来温度传感器的丈量值。7)Registers67to72GyroscopeMeasurements(GYRO_XOUT_H,GYRO_XOUT_L,GYRO_YOUT_H,GYRO_YOUT_L,GYRO_ZOUT_H,andGYRO_ZOUT)_L这个和加快度感觉器的寄存器相似对应的敏捷度:8)Register107PowerManagement1(PWR_MGMT_1)该寄存器同意用户配置电源模式和时钟源。它还供给了一个复位整个器件的位,和一个关闭温度传感器的位1)DEVICE_RESET置1后全部的寄存器复位,随后

13、DEVICE_RESET自动置0.2)SLEEP置1后进入眠眠模式3)CYCLE当CYCLE被设置为1,且SLEEP没有设置,MPU-60X0进入循环模式,为了从速度传感器中获取采样值,在睡眠模式和正常数据收集模式之间切换,每次获取一个采样数据。在LP_WAKE_CTRL(108)寄存器中,能够设置唤醒后的采样率和被唤醒的频率。4)TEMP_DIS置1后关闭温度传感器5)CLKSEL指定设备的时钟源时钟源的选择:9)Register117WhoAmI(WHO_AM_I)WHO_AM_I中的内容是MPU-60X0的6位I2C地址上电复位的第6位到第1位值为:110100为了让两个MPU-6050

14、能够连接在一个I2C总线上,当AD0引脚逻辑低电平常,设备的地址是b1101000,当AD0引脚逻辑高电平常,设备的地址是b1101001()淘宝买的货终于到了,学惯用因此没买好的,这个模块只要18块钱。MPU-6000能够使用SPI和I2C接口,而MPU-6050只好使用I2C,此中I2C的地址由AD0引脚决定;寄存器共117个,挺多的,下边的是精简常用的,依据详尽的要求,合适的增加。#defineSMPLRT_DIV0x19/采样率分频,典型值:0x07(125Hz)*/#defineCONFIG0x1A/低通滤波频率,典型值:0x06(5Hz)*/#defineGYRO_CONFIG0x1B/陀螺仪自检及丈量范围,典型值:0x18(不自检,2000deg/s)*/#defineACCEL_CONFIG0x1C/加快计自检、丈量

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号