MPU6050使用

一、读写时序
1.写时序

在这里插入图片描述

2.读时序

在这里插入图片描述

二、配置过程

使用到的指令

  • 设置地址(WHO AM I)
  • 配置陀螺仪配置(0x1B)
  • 设置加速度量程(0x1C)
  • 配置采样频率与配置寄存器(0x19)(0x1A)
  • 关闭所有中断(0x38)
  • 关闭IIC主模式(0x6A)
  • 关闭FIFO(0x23)
  • INT引脚低电平有效(0x37)
  • 读取设备ID(0x75)
  • 设置CLKSEL(0x6B)
  • 使能加速度与陀螺仪(0x6C)
2.1确定设备地址

根据寄存器WHO AM I说明
在这里插入图片描述
寄存器地址为1101 00 A0 W/R一共八位组成
A0为0,地址1101 000 --> 0x68 写入地址时0x68需要左移一位并加上W/R
A0为0,地址1101 001 --> 0x69 写入地址时0x69需要左移一位并加上W/R

2.2配置传感器参数
2.2.1传感器配置

0x1B 主要用于配置满量程范围以及自检,设置FS_SEL为3
在这里插入图片描述

2.2.2加速计寄存器

设置AFS_SEL为0
在这里插入图片描述

2.2.3采样频率设置

设置采样频率,SMPLRT_DIV为50
在这里插入图片描述

2.2.4配置寄存器

在这里插入图片描述

2.2.5中断寄存器

关闭所有中断
在这里插入图片描述

2.2.6用户控制寄存器

关闭IIC主模式
在这里插入图片描述

2.2.7FIFO使能

关闭FIFO

在这里插入图片描述

2.2.8INT 引脚/旁路有效 使能配置

在这里插入图片描述

2.2.9WHO AM I在这里插入图片描述
2.2.10电源管理

可以复位设备,DEVICE_RESET
设置CLKSEL,指定设备时钟源0x01,X轴为参考
在这里插入图片描述

2.2.11电源管理2

在这里插入图片描述

2.3读取数值
2.3.1读取加速度值

从0x3B开始读取数据,读取6个字节0x3B~0x40
在这里插入图片描述

2.3.2读取陀螺仪值

从0x43开始读取数据,读取6个字节0x43~0x48
在这里插入图片描述

2.3.3读取温度

从0x41开始读取数据,读取2个字节0x41~0x42
在这里插入图片描述

HMC5883L

简介

霍尼韦尔 HMC5883L 是一种表面贴装的高集成模块,并带有数字接口的弱磁传感器芯片,应用于低成本罗盘和磁场检测领域。HMC5883L 包括最先进的高分辨率 HMC118X 系列磁阻传感器,并附带霍尼韦尔专利的集成电路包括放大器、自动消磁驱动器、偏差校准、能使罗盘精度控制在 1°~2°的 12 位模数转换器.简易的 I2 C 系列总线接口。HMC5883L 是采用无铅表面封装技术,带有 16 引脚,尺寸为 3.0X3.0X0.9mm。HMC5883L 的所应用领域有手机、笔记本电脑、消费类电子、汽车导航系统和个人导航系统。、

地址

HMC5883LL 通过两线 I2C 总线系统作为一个从机装置进行通信。HMC5883LL 使用是一个 IIC 协议所定义的简化后的通信接口协议,通过这一文件,。数据传输速率是标准模式 100kbps 或 400kbps 速率,如 I2C 总线规格中所规定。总线位格式是一个 8 位数据/地址传送和 1 位应答位。格式的数据字节(有效载荷)应区分HMC5883L 从机上的大小写的 ASCII 字符或二进制数据,以及返回的二进制数据。负二进制值将是以二进制的补码形式。默认(出厂) HMC5883LL 7 位从机地址为 0x3C 的写入操作,或 0x3D 的读出操作
HMC5883LL 串行时钟(SCL)和串行数据(SDA)线需要主机(通常是主机微处理器)和 HMC588LL 之间装有上拉电阻(Rp)。在标称 VDDIO 电压下建议负载电阻值约为 10 千欧姆。其他电阻值也可以由 I2C 总线规格定义后连接到 VDDIO 上

指令

在这里插入图片描述

3.1.3配置过程
  • 配置寄存器:HMC5883L有两个配置寄存器,配置寄存器A用于设置数据输出速率和测量配置,配置寄存器B用于设置增益
  • 可以设置为连续测量模式、单一测量模式或闲置模式
  • 编写函数从HMC5883L获取数据,发送命令并接收响应的数据包
Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐