🧭
电子罗盘
航向多少度,屏上直接说
第 43 页接 QMC5883L(I2C 0x0D)做电子罗盘:中间是航向角大字与八方位(北 / 东北 / 东 …),右侧是三轴磁场分量,底部健康度。
航向由 `atan2(Y, X)` 算出来再归一到 0~360°。初始化按模块手册的顺序写:`0x0B=0x01` 打开 SET/RESET 周期,`0x09=0x1D` 设成 OSR512 / ±8G / 200Hz / 连续测量,之后从 `0x00~0x05` 连续读 6 字节(X/Y/Z 各 2 字节,小端)。
Screen
屏幕界面效果
以下是该功能页在 2.41 英寸 AMOLED 屏幕(600 × 450)上的界面还原,实际交互与布局以最新固件为准。
航向214度 · 西南
X / Y / Z+182 / -146 / +38
量程 / 速率±8 G · 200 Hz 连续
放置水平 · 未做倾斜补偿
健康度90 分
靠近电机、音箱、铁桌会乱跳 · 属正常现象
屏幕界面效果 · 第 43 页
与实际界面会有差异,最终以实际设备界面为准。
Highlights
核心能力
🧭
航向 + 方位
角度与八方位同屏,不用自己心算。
📊
三轴分量
X/Y/Z 原始磁场值,方便判断干扰来自哪个方向。
⚙️
连续测量
200 Hz 连续模式,转起来不卡顿。
🩺
健康度
没接 / ID 不对 / 读数乱跳,分开报。
Specifications
技术规格
传感器QMC5883L(不是 HMC5883L)
I2C 地址0x0D
量程±8 G,OSR 512,200 Hz 连续
数据0x00~0x05,X/Y/Z 各 2 字节,小端
航向atan2(Y, X) 归一到 0~360°
Use Cases
典型场景
安装朝向
设备固定后确认天线/摄像头朝哪边。
干扰排查
三轴数值突然变大时,挪开附近的电机或音箱。
Commands
相关指令
page 43 跳转到电子罗盘 qmc 读一次航向与三轴分量 qmc on | off 开启 / 关闭连续测量
⚠ 边界与说明
- 不是 HMC5883L 的 0x1E,两者驱动不通用,买错模块会一直「未检测到」。
- 水平放置最准;未做倾斜补偿,倾斜时航向会偏。
- 靠近电机、音箱、铁质桌面会乱跳,属正常现象,挪开即可。