Control de luces entre arduinos por protocolo I2C


¡Hola! Comunicar dos Arduinos a través del protocolo I2C es una tarea bastante común y relativamente sencilla de lograr.

Muchos proyectos de electrónica y robótica requieren la comunicación entre dispositivos electrónicos. El Inter-Integrated Circuit (I2C) es uno de los protocolos de comunicación más utilizados, y permite la transferencia de datos entre múltiples dispositivos con solo dos cables de comunicación. En este tutorial aprenderemos cómo utilizar el protocolo I2C de Arduino para conectar varios dispositivos y realizar una comunicación bidireccional fiable y eficiente, y de esta manera controlar luces.


Tal vez pueda interesarte proyectos en arduino, pic, robótica, telecomunicaciones, suscribete en http://www.youtube.com/user/carlosvolt?sub_confirmation=1 mucho videos con código fuentes completos y diagramas

SUSCRIBETE A NUESTRO CANAL DE YOUTUBE, TUTORIALES GRATIS


Introducción:

El protocolo I2C, que significa Inter-Integrated Circuit, es un estándar de comunicación serial de dos hilos utilizado ampliamente en sistemas embebidos y dispositivos electrónicos. Desarrollado por Philips Semiconductor (ahora NXP Semiconductors) en la década de 1980, el protocolo I2C ofrece una forma eficiente y versátil de interconectar múltiples dispositivos en un solo bus.

Funcionamiento del Protocolo I2C:

El protocolo I2C utiliza dos líneas de comunicación: SDA (Serial Data) y SCL (Serial Clock). Estas líneas son bidireccionales y se conectan a todos los dispositivos en el bus. El protocolo I2C utiliza un esquema de comunicación maestro/esclavo, donde un dispositivo maestro controla la comunicación y uno o más dispositivos esclavos responden a las solicitudes del maestro.

La comunicación en el protocolo I2C se realiza en forma de transmisiones de datos secuenciales. El maestro inicia la comunicación enviando una señal de inicio seguida de la dirección del dispositivo esclavo al que desea comunicarse y una señal de lectura/escritura. Los dispositivos esclavos que coinciden con la dirección responden al maestro, y luego la transferencia de datos puede tener lugar.

Características Principales del Protocolo I2C:

  1. Simplicidad: El protocolo I2C utiliza solo dos cables para la comunicación, lo que simplifica la conexión entre dispositivos y reduce el número de pines necesarios en los microcontroladores.
  2. Versatilidad: El protocolo I2C es adecuado para una amplia gama de aplicaciones, desde la comunicación entre chips en una placa de circuito hasta la interconexión de dispositivos en sistemas embebidos complejos.
  3. Soporte para Múltiples Dispositivos: El protocolo I2C permite la conexión de múltiples dispositivos en el mismo bus, lo que facilita la expansión y escalabilidad de los sistemas.

Aplicaciones del Protocolo I2C:

El protocolo I2C se utiliza en una variedad de aplicaciones, incluyendo:

  • Sensores y actuadores en sistemas embebidos.
  • Memorias EEPROM para almacenamiento de datos.
  • Conversores analógico-digitales (ADC) y digitales-analógicos (DAC).
  • Pantallas LCD y OLED.
  • Circuitos integrados de temperatura, presión y otros sensores.
  • Controladores de dispositivos periféricos como el audio y el motor.

Consideraciones Finales:

El protocolo I2C es una herramienta poderosa y versátil para la comunicación entre dispositivos electrónicos. Su simplicidad, versatilidad y soporte para múltiples dispositivos lo hacen ideal para una amplia gama de aplicaciones en la electrónica y la programación de microcontroladores. Con una comprensión básica del protocolo I2C, los ingenieros y diseñadores pueden crear sistemas más complejos y eficientes en una variedad de campos.

Referencias:

Este informe proporciona una visión general del protocolo I2C, su funcionamiento, características y aplicaciones. Para obtener información más detallada sobre aspectos específicos del protocolo I2C, se recomienda consultar las especificaciones técnicas y recursos adicionales proporcionados por los fabricantes y la comunidad de desarrollo.


Circuito


Captura del dato set1on, vista en un analizador lógico

Podemos ver en el canal 0 el pin scl que es la linea de clock, en el canal 1 el pin sda que es al linea de datos


Código fuente Maestro

Código Fuente esclavo



PROYECTO RECOMENDADO

Deja una respuesta