物联网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: <h>

参考文献及购买链接

1\] [QMC5883购买链接](https://item.taobao.com/item.htm?spm=a21n57.1.0.0.736f523cV2p22h&id=582111664445&ns=1&abbucket=15#detail)

相关推荐
ARM+FPGA+AI工业主板定制专家1 小时前
基于GPS/PTP/gPTP的自动驾驶数据同步授时方案
人工智能·机器学习·自动驾驶
长鸳词羡1 小时前
wordpiece、unigram、sentencepiece基本原理
人工智能
ㄣ知冷煖★1 小时前
【GPT5系列】ChatGPT5 提示词工程指南
人工智能
科士威传动1 小时前
丝杆支撑座在印刷设备如何精准运行?
人工智能·科技·自动化·制造
程序员小远2 小时前
银行测试:第三方支付平台业务流,功能/性能/安全测试方法
自动化测试·软件测试·python·功能测试·测试工具·性能测试·安全性测试
taxunjishu3 小时前
DeviceNet 转 Modbus TCP 协议转换在 S7-1200 PLC化工反应釜中的应用
运维·人工智能·物联网·自动化·区块链
kalvin_y_liu3 小时前
智能体框架大PK!谷歌ADK VS 微软Semantic Kernel
人工智能·microsoft·谷歌·智能体
爱看科技3 小时前
智能眼镜行业腾飞在即,苹果/微美全息锚定“AR+AI眼镜融合”之路抢滩市场!
人工智能·ar
光影少年3 小时前
angular生态及学习路线
前端·学习·angular.js
猫头虎4 小时前
如何查看局域网内IP冲突问题?如何查看局域网IP环绕问题?arp -a命令如何使用?
网络·python·网络协议·tcp/ip·开源·pandas·pip