Post Go back to editing

max30208温度传感器

Category: Hardware
Product Number: MAX30208

MAX30208温度传感器在手册中介绍支持一个I2C通道同时通信4个max30208传感器(4个I2C地址按照手册GPIO1和0的引脚电平配置为0xA0、0xA2、0xA4、0xA6),但我在具体实现一个I2C通道同时通信4个max30208传感器时,却发现只能读取到I2C地址为0xA0温度传感器的值。之后我又将这四个传感器(0xA0、0xA2、0xA4、0xA6)各自单独配I2C通信,发现这四个传感器虽已经根据GPIO1和0的引脚电平配置出的I2C地址为0xA0、0xA2、0xA3、0xA4,但实际I2C通信地址却为0xA0,也就是说像0xA2、0xA4、0xA6这三个传感器,只有发送0xA0的I2C地址才能读取到采集的温度信息,而不是发送本身对应的0xA2、0xA4、0xA6这三个通信地址。为什么会出现这种情况呢?

Parents
  • 是否按照数据手册将GPIO STATES寄存器设为10,并在上电时就保持电平?请提供主机和从机之间的原理图。MAX30208的GPIO引脚如果配置为输入模式(GPIO mode=10),该引脚用于确定MAX30208的器件地址,器件的上电默认状态就是作为器件地址设置引脚,该引脚内部带有1M下拉电阻,器件地址可以参见数据手册中的Table3。所以在上电后要确保GPIO引脚的电平固定才能确定其器件地址,然后和器件进行通讯。

  • 您好,首先很感谢您的解答,手册上写max30208的GPIO mode上电默认就是10,所以我直接对GPIO0和GPIO1设置高低电平,即分配四个温度传感器的I2C地址,但是仍然不能按照四个地址的形式来读数据,依旧只能读取GPIO0和GPIO1都设置低电平时候的地址(即0xA0)。下面是我的原理图

Reply
  • 您好,首先很感谢您的解答,手册上写max30208的GPIO mode上电默认就是10,所以我直接对GPIO0和GPIO1设置高低电平,即分配四个温度传感器的I2C地址,但是仍然不能按照四个地址的形式来读数据,依旧只能读取GPIO0和GPIO1都设置低电平时候的地址(即0xA0)。下面是我的原理图

Children