

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 MPU6050作原理及STM32控制MPU6050简介:1.要想知道MPU6050作原理,得先了解下俩个传感器:陀螺仪传感器:陀螺仪的原理就是,个旋转物体的所指的向在不受外影响时,是不会改变的。们根据这个道理,它来保持向。然后多种法读取轴所指的向,并动将数据信号传给。我们骑车其实也是利了这个原理。轮转得越快越不容易倒,因为车轴有股保持平的量。现代陀螺仪可以精确地确定运动物体的位的仪器,它在现代航空,航海,航天和中泛使的种仪器。传统的惯性陀螺仪主要部分有机械式的陀螺仪,机械式的陀螺仪对艺结构的要求很。70年代提出了现代的基本设想,到年代以后,就得到了常迅速的发展,激光陀螺仪也有了很的发展。具有
2、结构紧凑,灵敏度,作可靠。光纤陀螺仪在很多的领域已经完全取代了机械式的传统的陀螺仪,成为现代导航仪器中的关键部件。光纤陀螺仪同时发展的除了环式外。加速度传感器:加速度传感器是种能够测量加速度的传感器。通常由质量块、阻尼器、弹性元件、敏感元件和适调电路等部分组成。传感器在加速过程中,通过对质量块所受惯性的测量,利顿第定律获得加速度值。根据传感器敏感元件的不同,常见的加速度传感器包括电容式、电感式、应变式、压阻式、压电式等。其实说简单点,在mpu6050中我们陀螺仪传感器测度,加速度传感器测加速度MPU-60X0 :MPU-60X0是全球例9轴运动处理传感器。它集成了3轴MEMS陀螺仪, 3轴ME
3、MS 加速度计,以及个可扩展的数字运动处理器 DMP(DigitalMotion Processor),可 I2C 接连接个第三的数字传感器,如磁计。扩展之后就可以通过其 I2C 或 SPI 接 输出个 9 轴的信号(SPI 接仅在 MPU-6000 可)。MPU-60X0 也可以通过其 I2C 接 连接惯性的数字传感器,如压传感器。 MPU-60X0 对陀螺仪和加速度计分别了三个 16 位的 ADC,将其测量的模拟量转化 为可输出的数字量。为了精确跟踪快速和慢速的运动,传感器的测量范围都是户可控的,陀螺仪可测范围为250,500,1000,2000/秒(dps),加速度计可测范围为2,4,
4、8,16g。 个上 1024 字节的 FIFO,有助于降低系统功耗。 和所有设备寄存器之间的通信采 400kHz 的 I2C 接或 1MHz 的 SPI 接(SPI 仅 MPU-6000 可)。对于需要速传输的应,对寄存器的读取和中断可20MHz 的 SPI。 另外,上还内嵌了个温度传感器和在作环境下仅有1%变动的振荡器。 芯尺 440.9mm,采 QFN 封装(引线形封装),可承受最 10000g 的冲击,并有可编程的低通滤波器。 关于电源,MPU-60X0 可持 VDD 范围 2.5V5%,3.0V5%,或 3.3V5%。另外 MPU-6050 还有个 VLOGIC 引脚,来为 I2C 输
5、出提供逻辑电平。VLOGIC 电压可取 1.85%或者 VDD。数字运动处理器(DMP):DMP 从陀螺仪、加速度计以及外接的传感器接收并处理数据,处理结果可以从DMP 寄存器读出,或通过 FIFO 缓冲。DMP 有权使 MPU 的个外部引脚产中断。 数据传输:1.I2C原理在上篇博客有详细讲解,在这不再赘述。如果要写 MPU-60X0 寄存器,主设备除了发出开始标志(S)和地址位,还要加个 R/W 位,0 为写,1 为读。在第 9 个时钟周期(电平时),MPU-60X0 产应答信号。然 后主设备开始传送寄存器地址(RA),接到应答后,开始传送寄存器数据,然后仍然要有应 答信号,依次类推。单字
6、节写时序:多字节写时序:如果要读取 MPU-60X0 寄存器的值,先由主设备产开始信号(S),然后发送从设 备地址位和个写数据位,然后发送寄存器地址,才能开始读寄存器。紧接着,收到应答信号后,主设备再发个开始信号,然后发送从设备地址位和个读数据位。然后,作为从设 备的 MPU-60X0 产应答信号并开始发送寄存器数据。通信以主设备产的拒绝应答信号(NACK)和结束标志(P)结束。拒绝应答信号(NACK)产定义为 SDA 数据在第 9 个 时钟周期直为。三STM32控制MPU60501.硬件连接实验采正点原公司的 AN1507 ATK-MPU6050 六轴传感器模块STM32 VCCGNDSDA
7、 GND PB9 PB8 不接 不接SCLINTAD02. 重要寄存器2.1 电源管理寄存器 1 硬件动清零该位了睡眠模式(低功耗),所以我们要清零该位,以进正常作模式TEMP_DIS 于设置是否使能温度传感器,设置为 0,则使能CLKSEL2:0于选择系统时钟源,选择关系如表时钟源内部 8M RC 晶振001PLL,使 X 轴陀螺作为参考PLL,使 Y 轴陀螺作为参考PLL,使 Z 轴陀螺作为参考PLL,使外部 32.768Khz 作为参考PLL,使外部 19.2Mhz 作为参考保留010011100101110111关闭时钟,保持时序产电路复位状态*默认是使内部 8M RC 晶振的,精度不
8、,所以我们般选择 X/Y/Z 轴陀螺作为参考的 PLL 作为时钟源,般设置 CLKSEL=001 即可*2.2 陀螺仪配置寄存器FS_SEL1:0这两个位,于设置陀螺仪的满量程范围: 0,250/S; 1,500 /S; 2,1000 /S; 3,2000 /S;我们般设置为 3,即2000 /S,因为陀螺仪的 ADC 为 16 位分辨率,所以得到灵敏度为: 65536/4000=16.4LSB/( /S)2.3 加速度传感器配置寄存器AFS_SEL1:0这两个位,于设置加速度传感器的满量程范围:0,2g; 1,4g; 2,8g; 3,16g;我们般设置为 0,即2g,因为加速度传感器的ADC
9、 也是 16 位,所以得到灵敏度为: 65536/4=16384LSB/g2.4 FIFO使能寄存器该寄存器于控制 FIFO 使能,在简单读取传感器数据的时候,可以不FIFO,设置对应位为 0 即可禁 FIFO,设置为 1,则使能 FIFO加速度传感器的 3 个轴,全由 1个位( ACCEL_FIFO_EN)控制,只要该位置 1,则加速度传感器的三个通道都开启 FIFO2.5 陀螺仪采样率分频寄存器该寄存器于设置 MPU6050 的陀螺仪采样频率,计算公式为: 采样频率 = 陀螺仪输出频率 / (1+SMPLRT_DIV)这陀螺仪的输出频率,是 1Khz 或者 8Khz,与数字低通滤波器( D
10、LPF)的设置有关,当 DLPF_CFG=0/7 的时候,频率为 8Khz,其他情况是 1Khz。且 DLPF 滤波频率般设置为采样率的半。采样率,我们假定设置为 50Hz,那么 SMPLRT_DIV=1000/50-1=192.6 配置寄存器这的加速度传感器,输出速率( Fs)固定是 1Khz,速度传感器的输出速率( Fs),则根据 DLPF_CFG 的配置有所不同。般我们设置速度传感器的带宽为其采样率的半,如前所说的,如果设置采样率为 50Hz,那么带宽就应该设置为 25Hz,取近似值 20Hz,就应该设置 DLPF_CFG=1002.7 电源管理寄存器 2LP_WAKE_CTRL 于控制
11、低功耗时的唤醒频率剩下的 6 位,分别控制加速度和陀螺仪的x/y/z轴是否进待机模式,这我们全部都不进待机模式,所以全部设置为0 即可2.8 陀螺仪数据输出寄存器通过读取这6个寄存器,就可以读到陀螺仪 x/y/z 轴的值,如 x 轴的数据,可以通过读取0X43( 8 位)和 0X44(低 8 位)寄存器得到,其他轴以此类推2.9 加速度传感器数据输出寄存器 通过读取这6个寄存器,就可以读到加速度传感器 x/y/z 轴的值,如读 x 轴的数据,可以通过读取 0X3B( 8 位)和0X3C(低8位)寄存器得到,其他轴以此类推2.10 温度传感器数据输出寄存器温度换算公式为:Temperature
12、= 36.53 + regval/340温度传感器值2.11 中断使能寄存器OT_EN 该位置 1,该位使能运动检测(Motiondetection)产中断。FIFO_OFLOW_EN该位置1,该位使能FIFO缓冲区溢出产中断。I2C_MST_INT_EN该位置1,该位使能I2C主机所有中断源产中断。DATA_RDY_EN 该位置 1,该位使能数据就绪中断( Data Ready interrupt),所有的传感器寄存器写操作完成时都会产关闭所有中断则给此寄存器赋值0X003. 软件驱动3.1 通过IIC对MPU6050寄存器进读写/IIC写个字节/reg:寄存器地址数据/data:/返回值:
13、 0,正常/其他,错误代码IIC_Write_Byte( reg, data)u8u8u81 0 /发送器件地址+写命令if(IIC_Wait_Ack()/等待应答IIC_Stop();return 1;if(IIC_Wait_Ack()IIC_Stop();return 1;IIC_Stop(); IIC_Read_Byte( reg)res;u8IIC_Start();IIC_Send_Byte(MPU_ADDR )| );1 0 /发送器件地址+写命令IIC_Wait_Ack();/等待应答IIC_Send_Byte(reg);/写寄存器地址IIC_Wait_Ack();/等待应答IIC
14、_Start();1 1 /发送期间地址+读命令IIC_Wait_Ack();/等待应答res=IIC_Read_Byte( );return/返回值: 0,正常/其他,错误代码IIC_Write_Len( addr, reg, len, *buf)u8u8u8u8u8i;u8IIC_Start();IIC_Send_Byte(addr )| );IIC_Stop();return 1;IIC_Send_Byte(reg);/写寄存器地址IIC_Wait_Ack();/等待应答(i= ;ilen;i+)for0IIC_Stop();return 1;/其他,错误代码IIC_Read_Len(
15、addr, reg, len, *buf)IIC_Start(); IIC_Send_Byte(addr )| );1 0 /发送器件地址+写命令IIC_Stop();return 1;IIC_Send_Byte(reg);/写寄存器地址IIC_Wait_Ack();/等待应答IIC_Start();IIC_Send_Byte(addr )| );1 1 /发送器件地址+读命令IIC_Wait_Ack();/等待应答while(len)if1else1 /读数据,发送ACK3.2 MPU6050初始化/初始化MPU6050/返回值: 0,成功/其他,错误代码)IIC_Write_Byte(MP
16、U_PWR_MGMT1_REG,);0X80 /复位MPU6050delay_ms( );100IIC_Write_Byte(MPU_PWR_MGMT1_REG,);0X00 /唤醒MPU6050MPU_Set_Gyro_Fsr( );3/陀螺仪传感器,2000dps/加速度传感器 2gMPU_Set_Accel_Fsr( );0MPU_Set_Rate( );50 /设置采样率50HZ/关闭所有中断);0X00 /I2C主模式关闭);0X00 /关闭FIFO);0X80 /INT引脚低电平有效res IIC_Read_Byte(MPU_DEVICE_ID_REG);=(res MPU_ADD
17、R)if=/器件ID正确IIC_Write_Byte(MPU_PWR_MGMT1_REG,IIC_Write_Byte(MPU_PWR_MGMT2_REG,0X01 /设置CLKSEL,PLL X 轴为参考0X00 /加速度陀螺仪都作MPU_Set_Rate( );50 /设置采样率为50HZ;/ 其他,设置失败u8 MPU_Set_Gyro_Fsr(u8 fsr)IIC_Write_Byte(MPU_GYRO_CFG_REG,fsr );return3 /设置陀螺仪满量程范围/设置MPU6050加速度传感器满量程范围/fsr:0,2g;1,4g;2,8g;3,16g /fsr:0,2g;1,
18、4g;2,8g;3,16g/ 其他,设置失败u8 MPU_Set_Accel_Fsr(u8 fsr)IIC_Write_Byte(MPU_ACCEL_CFG_REG,fsr );return3 /设置加速度传感器满量程范围);)return/返回值:0,设置成功;if4=4/rate ;data=1000-1/设置数字低通滤波器MPU_Set_LPF(rate/ );return2/动设置LPF为采样率的半3.3 读取MPU6050相关测得原始数据 /返回值:温度值(扩了100倍)short MPU_Get_Temperature(void)buf ;u82short raw;temp;floatIIC_Read_Len(MPU_ADDR,MPU_TEMP_OUTH_REG, ,buf);2raw=( )buf )|buf ;081temp=36.53+(double)raw)/ ;340temp* ;returnu866if0*gx=( )buf )|bu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 计算机病毒与防范技术
- 艾滋病培训课件
- 彩妆知识培训
- 工厂安全检查整改
- 干部培训晨读文章
- 2025年主治医师之内科主治303题库附答案(基础题)
- 宪法中小学课件
- 小学生秋冬季防病知识
- 学普通写规范字
- 安全旅游的路上
- 彩钢瓦屋面渗漏水维修施工方案完整
- 2024年度大型演唱会主办方与演出艺人演出合同协议范本3篇
- 装配式建筑深化设计-1.2.3 装配式建筑深化设计拆分原47课件讲解
- 电力工程施工组织措施方案
- T∕HGJ 12404-2021 仪表维修车间设计标准
- 【MOOC】园林植物应用设计-北京林业大学 中国大学慕课MOOC答案
- 继续教育《生态文明建设的理论与实践》考试试题及答案
- 组织部2024年双拥工作计划
- 2024-2025学年人教新目标英语八年级下册期末综合检测卷(含答案)
- 2023年新疆兵团事业单位开展招聘考试真题
- 331金属晶体课件高二化学人教版选择性必修2
评论
0/150
提交评论