I²C Bus

I²C Bus – Que es y cómo funciona

Este componente configura el bus I²C para su placa de desarrollo ESP32 o ESP8266. Para que estos componentes funcionen correctamente, debe definir el bus en su configuración. Tenga en cuenta que el ESP habilitará sus resistencias pull-up internas de 10 kΩ para estos pines, por lo que generalmente no necesita colocar los externos. Puede usar varios dispositivos en un bus I²C, ya que a cada dispositivo se le asigna una dirección única para comunicarse entre él y el ESP. Puede hacer esto saltando cables de las dos líneas (SDA y SCL) de cada placa de dispositivo a la siguiente placa de dispositivo o conectando los cables de cada dispositivo a los dos pines I²C en el ESP.

La configuración I²C será necesaria en sensores como el htu21d, el BMP280, el BME280 y el BME680

# Ejemplo de entrada de configuración para ESP32
i2c:
  sda: 21
  scl: 22
  scan: true
  id: bus_a

Variables de configuración I²C Bus

  • sda (Opcional, Pin): El pin para la línea de datos del bus I²C. Los valores predeterminados son los predeterminados de su placa (generalmente son GPIO21 para ESP32 y GPIO4 para ESP8266).
  • scl (Opcional, Pin): El pin para la línea de reloj del bus I²C. Los valores predeterminados son los predeterminados de su placa (generalmente GPIO22 para ESP32 y GPIO5 para ESP8266).
  • escanear (opcional, booleano): si ESPHome debe realizar una búsqueda del espacio de direcciones I²C al inicio. El valor predeterminado es true.
  • frecuencia (opcional, flotante): Establezca la frecuencia en la que debe operar el bus. El valor predeterminado es 50kHz. Los valores son 10kHz, 50kHz, 100kHz, 200kHz, …800kHz
  • id (opcional, ID): especifique manualmente la ID para este bus I²C si necesita varios buses.

Si el dispositivo puede admitir múltiples buses I²C (ESP32 tiene 2, ESP8266 no admite más de uno). Estos buses deben definirse como se indica a continuación y los sensores deben configurarse especificando el bus correcto:

# Ejemplo de entrada de configuración
 i2c:
   - id: bus_a
     sda: 13
     scl: 16
     scan: true
   - id: bus_b
     sda: 14
     scl: 15
     scan: true
# Los sensores deben especificarse de la siguiente manera
- platform: bme680
  i2c_id: bus_b
  address: 0x76
  # ...

# Si se utiliza un multiplexor I²C, todos los dispositivos I²C se pueden configurar adicionalmente como:
- platform: bmp280
  multiplexer:
    id: multiplex0
    channel: 0
  # ...

Sígueme a Youtube

Sígueme en Youtube - I²C Bus
(Visited 179 times, 1 visits today)
EnglishDeutschEspañol