物联网AI MicroPython传感器学习 之 QMC5883指南针罗盘传感器

学物联网,来万物简单IoT物联网!!

一、产品简介

QMC5883是一款表面贴装的集成了信号处理电路的三轴磁性传感器,应用场景主要包括罗盘、导航、无人机、机器人和手持设备等一些高精度的场合。

引脚定义

VCC:3V3~5V

GND:电源地

SCL:IIC时钟线

SDA:IIC数据线

二、技术参数

  • 工作电压:3V3 ~ 5V
  • 工作温度:-40°C至+85°C
  • 功耗:75uA
  • 分辨率:16位ADC实现2毫高斯场分辨率
  • 尺寸:13.9mm * 18.5mm

三、软件接口

QMC5883(i2cObj) - 创建QMC5883驱动对象

  • 函数原型:

qmc5883obj = QMC5883(i2cObj)

  • 参数说明:
参数 类型 必选参数? 说明
i2cObj I2C 创建I2C对象
  • 返回值:
    执行成功,返回 QMC5883 对象;创建失败,抛出Exception
  • 示例代码:
python 复制代码
from machine import I2C              # 驱动库
import qmc5883                       # QMC5883传感器驱动库

# 初始化I2C类型的设备
i2cObj = I2C(1, scl=Pin(22), sda=Pin(21), freq=400000)

qmc5883obj = qmc5883.QMC5883(i2cObj)    # 初始化QMC5883传感器对象
print("QMC5883 inited!")
  • 输出:

    QMC5883 inited!

getHeading - 创建 QMC5883 指南针数据

  • 函数原型:

QMC5883.getHeading()

  • 参数说明:
  • 返回值:
    指南针指向值,单位:度。
  • 示例代码:
python 复制代码
from machine import I2C              # 驱动库
import qmc5883                       # QMC5883传感器驱动库

# 初始化I2C类型的设备
i2cObj = I2C(1, scl=Pin(22), sda=Pin(21), freq=400000)

qmc5883obj = qmc5883.getHeading(i2cObj)    # 初始化QMC5883传感器对象
print("QMC5883 inited!")

h = qmc5883obj.getAcceleration()
print("heading:", h)
  • 输出:
    分别代表h为实际测量值

    QMC5883 inited!
    heading:

参考文献及购买链接

1 QMC5883购买链接

相关推荐
2601_955759629 分钟前
code0 gemini-2.5-pro 企业实战:数据分析团队怎样更快产出报告
大数据·人工智能·数据分析
Ivanqhz14 分钟前
刚体的自由度
人工智能·算法
凉、介26 分钟前
Virtio 系列(一):框架概览
笔记·学习·嵌入式·虚拟化·virtio
ZZZMMM.zip30 分钟前
数据侦探社-数据趋势分析的HarmonyOS开发实践
人工智能·华为·harmonyos·鸿蒙·鸿蒙系统
2601_9557594131 分钟前
code0 gpt-5.5 场景相关:教育平台智能批改与答疑实操
大数据·人工智能·gpt
KaMeidebaby32 分钟前
卡梅德生物技术快报|抗体合成:多肽抗体合成工程化方案:Nsp2 保守肽多抗制备与多维度验证
前端·网络·数据库·人工智能·算法
「QT(C++)开发工程师」38 分钟前
AI Agent(智能体) 教程
人工智能·ai·ai编程
浅止菌40 分钟前
性能瓶颈找不到?ftrace+perf组合拳,5分钟定位内核问题
嵌入式硬件
旋律翼241 分钟前
AI Prompt 工程化设计最佳实践(Harness Engineering)
人工智能·prompt
程序猿DD1 小时前
AI Key 太多?我做了个统一管理工具
人工智能