Search
Close this search box.

Descobrindo o endereço I2C dos módulos

Descobrindo o endereço I2C dos módulos

A comunicação I2C facilita demais o desenvolvimento de projetos com Arduino ou Raspberry PI pois utilizando apenas 2 pinos  (SDA e SCL) podemos comunicar (ler/escrever) com diversos módulos (Displays, Sensores de pressão, Sensores de PH, etc.).

A ideia principal da comunicação I2C é que cada item tenha o seu endereço Hexadecimal e no momento da comunicação somente o item/endereço solicitado responderá. E quando não temos o manual do equipamento, como fazemos para saber o endereço I2C?

A solução está no código abaixo, ele faz uma varredura e exibe uma lista dos endereços encontrados, caso seu equipamento esteja conectado e não seja encontrado verifique se você não inverteu os pinos de comunicação.

#include <Wire.h>
void setup()
{
  Serial.begin(9600);
  Wire.begin();
  
  byte Return;
  
  Serial.println("Scanning I2C bus...");
  for(byte I2CAddress = 1; I2CAddress <= 127; I2CAddress++)
  {
    Serial.print("0x");
    if (I2CAddress<16)
      Serial.print("0");
    Serial.print(I2CAddress, HEX);
    Serial.print(" (");
    if (I2CAddress<10)
      Serial.print("  ");
    else if (I2CAddress<100)
      Serial.print(" ");
    Serial.print(I2CAddress);
    Serial.print("): ");
    
    Wire.beginTransmission(I2CAddress);
    Return = Wire.endTransmission();
    
    if (Return == 0)
      Serial.print("OK!");
    else
      Serial.print("   ");
      
    if (I2CAddress % 5)
      Serial.print("    ");
    else
      Serial.println();
  }
}
void loop() { }

Para ver a lista basta abrir o “Serial Monitor”, ao lado de cada endereço que respondeu a varredura, teremos um “OK”.

 Confira: Nosso display foi encontrado no endereço Hexadecimal “0X27”.

E se você gostou do nosso tutorial, mas ainda não segue a Circuito Maker no Youtube e Instagram, se inscreva.

Ajude a impulsionar o nosso trabalho.

Share this post

Recent Posts
About

Pellentesque id velit ut ligula maximus gravida venenatis in turpis. In eu lacinia libero. Aenean nec aliquet dui. Sed tristique convallis sapien, semper porttitor mauris scelerisque et. 

Newsletter
Subscribe for our monthly newsletter to stay updated

Related Posts