Dos o más interfaces de sensor de presión SDP610 con Arduino uno usando I2C

He conectado un sensor de presión SDP610 usando I2C con Arduino Uno R3. Ahora quiero conectar más de un sensor con el mismo controlador (una placa). No encuentro ninguna dirección superior o inferior en la hoja de datos de mi sensor. En mi código, la dirección del sensor es

typedef enum { eSDP6xAddress = 0x40, //(64) } PRES_SENSOR_P;

La dirección I2C consta de un valor binario de 7 dígitos. De forma predeterminada, la dirección I2C se establece en 64 (binario: 1000 000). La dirección siempre va seguida de un bit de escritura (0) o un bit de lectura (1). Por lo tanto, el encabezado I2C hexadecimal predeterminado para el acceso de lectura al sensor es h81.

de la sección 3.2 en la hoja de datos SDP610

¿Hay alguna posibilidad de cambiar la dirección del sensor SDP610 y es posible interactuar con el mismo bus I2C?

Respuestas (2)

No puede cambiar la dirección del esclavo I 2 C en este sensor. Está cableado por dentro.

Si quieres tener varios de estos sensores, tienes estas opciones:

  1. Cree buses I 2 C separados . Uno de ellos puede ser un poco golpeado.
    [Habiendo dicho eso, no sé qué tan bien las bibliotecas Arduino pueden soportar esto.]
  2. Multiplexar el bus I 2 C. Si conecta un SDP610 a la vez, no habrá colisión de direcciones.
  3. Utilice un traductor de direcciones I 2 C.

Temas relacionados
Multiplexor i2C para usar varios sensores del mismo tipo ¿
Cómo conectar varios del mismo dispositivo a un Arduino usando I2C?

Gracias a Nick y batidor. Seguiré adelante con el multiplexor I2C.

De acuerdo con esta pregunta en Raspberry Pi Stack Exchange, el SDP610 puede tener su dirección I²C reprogramada, pero el fabricante no hace públicos esos detalles, debido a la posibilidad de destruir el dispositivo si esto se hace incorrectamente:

¿Múltiples sensores de presión de aire diferencial usando el bus I²C?

Si no quiere (o no puede) seguir ese proceso, aquí hay varias preguntas anteriores que explican el uso de multiplexores, interruptores y traductores de direcciones I²C, todo lo cual puede permitirle usar múltiples sensores con el mismo I²C. dirección, con diversos grados de esfuerzo y costo, por ejemplo:

¿Cómo resolver los conflictos de direcciones I2C?

¿Cómo conectar varios del mismo dispositivo a un Arduino usando I2C?