1015|2

1706

帖子

4

TA的资源

纯净的硅(初级)

楼主
 

【Beetle ESP32 C6 Mini 】外设之 i2c 驱动HMC3588L [复制链接]

从Beetle ESP32 C6 Mini  引脚分布可知, I2C 的外设包括一组I2C 和一组低功耗I2C, SPI 包括除了片选之外的一组SPI;

对于管脚如下:

           SDA->GPIO19

           SCL->GPIO20

 

 

手上有一款I2C 接口的HMC3588L 的模块;

实物图像如下:

      

 

HMC5883是霍尼韦尔公司生产的一款地磁场检测芯片是一款表面贴装的集成了信号处理电路的三轴磁性传感器,应用场景主要包括罗盘、导航、无人机、机器人和手持设备等一些高精度的场合。详细功能可以参考规格书;

硬件连接如下:

 

 

编写相关代码:

#include <Arduino.h>
#include <Wire.h>
#include <SPI.h>



#define  HMC3588Address 0x1E



void setup() {
  Serial.begin(115200);
  Wire.begin();

  SPI.begin(7);    //初始化SPI CS on GPIO7

  Wire.beginTransmission(HMC3588Address);
  Wire.write(0x02);
  Wire.write(0x00);
  Wire.endTransmission();

}

void loop() {
   int x,y,z;

   Wire.beginTransmission(HMC3588Address);
   Wire.write(0x03);
   Wire.endTransmission();

   Wire.requestFrom(HMC3588Address, 6);
   if(6<=Wire.available())
   {
      x = Wire.read()<<8;
      x |= Wire.read();
      z = Wire.read()<<8;
      z |= Wire.read();
      y = Wire.read()<<8;
      y |= Wire.read();

   }


    Serial.print("  x: ");
    Serial.print(x);
    Serial.print("  y: ");
    Serial.print(y);
    Serial.print("  z: ");
    Serial.print(z);
    Serial.print("\r\n");
    delay(200);
}

测试输出相关数据:

 

总结:

      是否需要低功耗I2C 取决于产品设计需求;

此帖出自无线连接论坛

最新回复

三个轴都同时接近满量程?   详情 回复 发表于 2024-7-20 18:56
点赞 关注(1)
 

回复
举报

6809

帖子

0

TA的资源

五彩晶圆(高级)

沙发
 

是否需要低功耗I2C 取决于产品设计需求,这个是重点

此帖出自无线连接论坛
 
 

回复

9792

帖子

24

TA的资源

版主

板凳
 

三个轴都同时接近满量程?

此帖出自无线连接论坛
个人签名虾扯蛋,蛋扯虾,虾扯蛋扯虾
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
快速回复 返回顶部 返回列表