博世磁力计BMM150

简介

BMM150 是一款面向消费类市场的独立地磁传感器,可用于测量三个互相垂直轴向的磁场。基于 Bosch 独有的 FlipCore 技术,其性能和功能被精心优化,完全契合各种三轴移动应用的严格要求,如电子罗盘、导航以及增强现实等。

内部的评估电路(ASIC)将地磁传感器的模拟输出转换为数字信号,可通过行业标准的数字接口(SPI 和 I²C)进行读取。

BMM150 的封装与接口被设计为适配多种硬件需求。由于其超小尺寸和平整封装结构,该传感器特别适用于移动类应用。它采用晶圆级芯片封装(WLCSP),尺寸仅为 1.56 × 1.56 × 0.6 mm,在 PCB 上的布置非常灵活。

此外,BMM150 支持超低电压运行(主供电 VDD 范围:1.62V 至 3.6V;接口电压 VDDIO 范围:1.2V 至 3.6V),并可以通过编程方式在用户特定应用中优化功能、性能与功耗。它内建可编程中断引擎,为开发者带来极大的设计灵活性。

BMM150 可感应地磁场的三个轴向方向,广泛应用于手机、手持设备、计算机外设、人机交互界面、虚拟现实与游戏控制器等。

SPEC 参数

供电电压VDD:1.62 2.4 3.6V

IO电压:1.2 1.8 3.6V

输入逻辑低电平:0.3VDDIO MAX

输入逻辑高电平:0.7VDDIO MIN

输出逻辑低电平:0.2VDDIO MAX

输出逻辑高电平:0.8VDDIO MIN

磁场强度测量范围: XY轴 正负1200 正负1300 uT

            Z轴 正负2000 正负2500 uT

30uT 25摄氏度 航向角精度: 正负2.5度

活动峰值电流: 20mA

启动时间:1ms (从关机状态转为待机状态)

休眠时间:3ms (从待机状态转为睡眠状态)

框图

 

功能介绍:

1电源管理

BMM有两个独立的电源引脚:VDD和VDDIO

VDD是芯片内部模拟和数字功能模块的供电引脚

VDDIO是为数字逻辑和接口电路供电的独立供电引脚

你可以在VDD供电为0或者VDDIO供电为0时关闭器件,但是禁止在VDDIO为0时给其他数字IO接入高电平。

该器件将会在重新上电后复位相关逻辑或寄存器数值,请关注所有与默认值不同的设计。

如果使用IIC协议,建议直接将VDDIO和PS连接,确保选择了正确的通信协议。

2电源模式

BMM150有四种电源模式

关机模式

关机状态下,VDD或者VDDIO断电,芯片不工作,只用VDD和VDDIO同时供电,芯片自动执行上电复位。

待机模式

待机模式是BMM150上电后的默认模式,上电复位结束后,将执行芯片启动队列。在此队列中,NVM 内容将下载到位于器件内核的影子寄存器中。启动队列完成后,器件将进入挂起模式。在此模式下,用户只能访问存储电源控制位信息和 SPI3 线使能位的寄存器。挂起模式下,其他寄存器均无法访问。除控制寄存器 (Ox4B) 外,所有寄存器都将丢失其内容。需要注意的是,在此模式下,读取芯片 ID(寄存器 0x​​40)将返回“0x00”(I2C)或高阻态(SPI)。

睡眠模式

用户可以将电源位设置为1将设备从待机模式切换到睡眠模式,也可以将操作模式位设置为11将设备从活动模式强制切换到睡眠模式。将电源控制位设置为“0”(寄存器0x4B的位0)将使设备恢复到挂起模式。用户可以从睡眠模式将设备恢复到挂起模式或活动模式。

活动模式

可以通过设置 操作模式位(寄存器 0x​​4C)从休眠模式切换到活动模式。在此模式下,将执行磁场测量,并且所有寄存器均可访问。

在活动模式下,可以区分两种工作模式:

正常模式:根据用户寄存器中的设置定期测量选定的通道。测量完成后,输出数据将存入数据寄存器,设备等待下一个测量周期,该周期由编程输出数据速率 (ODR) 设定。从正常模式,用户可以通过将 OpMode 设置为“11”或执行软复位返回休眠模式。通过将电源控制位设置为“0”,可以进入挂起模式。

强制模式(单次测量):由主机设置时,将根据用户寄存器中的编程设置测量选定的通道。测量完成后,输出数据将存入数据寄存器,OpMode 寄存器的值恢复为“11”,设备返回休眠模式。强制模式有助于实现主机微控制器和 BMM150 之间的同步操作。此外,强制模式还可以实现与正常模式下不同的数据输出速率。

在主动模式和正常运行下,原则上可以通过 x/y 轴和 z 轴的重复设置以及输出数据速率 ODR 来调整输出噪声和活动时间(因此功耗)之间的任何所需平衡。平均功耗取决于高电流阶段时间(数据采集期间)与低电流阶段时间(数据采集之间)的比率。因此,为生成一个磁场数据点而获取的重复次数越多,一个采样阶段中的活动时间比率越长,平均电流越高。

由于内部平均时间更长,输出数据的噪声水平随着重复次数的增加而降低。
通过使用强制模式,可以以任何速率触发新的测量。因此,用户可以以比完成测量周期所需的更短的间隔触发测量。如果不允许测量周期完成,则结果数据将不会写入数据寄存器。为防止这种情况,手动触发的测量间隔不得短于有效测量时间,后者是所选重复次数的函数。强制模式下可选的最大读出频率可按下式计算:

 

其中,nXY 表示 X/Y 轴的重复次数(而非寄存器值),nZ 表示 Z 轴的重复次数(而非寄存器值)。
虽然 X/Y 和 Z 轴的重复次数以及 ODR 可以独立调整,且调整范围很广,但建议使用四种预设值(高精度预设值、增强型常规预设值、常规预设值和低功耗预设值),这些预设值反映了 BMM150 最常见的使用场景,即在给定电流消耗下所需的输出精度。
这四种预设值包含以下寄存器配置,选择预设值后,这些配置将由 BMM150 API 或 Bosch Sensortec 提供的驱动程序自动设置。表 3 显示了建议的预设值以及由此产生的磁场输出噪声和电流消耗:

 

 

posted @ 2025-06-25 10:26  LyricsWu  阅读(322)  评论(0)    收藏  举报