Bom dia ! Mais uma vez conto com a ajuda do grupo. Pretendo fazer um projeto com 3 componentes que usam I2C, mas as portas do Arduino são sempre A5 e A4. Posso ligar os 3 componentes nas mesmas portas ou eu preciso alterar a biblioteca para informar portas analógicas diferentes, já que eles não são parametrizáveis no código. Obrigado.

Exibições: 285

Responder esta

Respostas a este tópico

Bom dia CV,

O I2C é um bus de múltiplos I/Os.

Você pode sim, ligar vários dispositivos no mesmo bus (Ports A4 e A5 no UNO).

O uprocessador seleciona o modulo a ser usado pelo endereço dele.

Portanto eles tem que ter endereços diferentes.

Quais modulos pretende usar neste bus?
RV

No tópico 2-dispositivos-i2c-com-arduino tem umas notas e links interessantes.

Bom dia 

Informe quais dispositivos vai usar.

Cada dispositivo deverá ter um endereço diferente ! Senão ocorrerá conflito.

Use i I2C scanner para identificar os endereços dos dispositivos.

Teste-os separadamente se ocorrer algum problema.

https://playground.arduino.cc/Main/I2cScanner

Você deverá usar somente um conjunto de resistores de Pull Up nas linhas SCL e SDA (4,7K para 5v).

Ola pessoal! Obrigado pelas respostas. Pretendo usar uma tela oled, um acelerometro mpu6050, e um barometro bmp180. Abracos

Boa tarde CV.

Endereços dos módulos:

BM180   I2C 7-bit address 0x77;

mpu6050  I2C ADDRESS AD0 = 0   110 1000      0x68;
                 I2C ADDRESS AD0 = 1   110 1001      0x69;

Se seu oled display usar o chip SSD1306

“SA0” bit provides an extension bit for the slave address.

Either “011 1100” or “011 1101”, can be selected as the slave address of SSD1306.

Acredito que sejam os endereços:

I2C ADDRESS SA0 = 0  011 1100      0x3C;

I2C ADDRESS SA0 = 1  011 1101      0x3D;

Portanto não deverá haver conflito de endereços no I2C  bus.

RV

(Resolvido) Pessoal, muito obrigado pela ajuda de vocês. Consegui ligar os três componentes sem problemas.

RSS

Destaques

Registre-se no
Lab de Garagem
Clicando aqui

Convide um
amigo para fazer
parte

curso gratis de arduino

© 2019   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço