I2C - con più utilizzatori

Salve,
Ho girato e rigirato su internet, ma le idee non si sono schiarite!!! cioè ho compreso il funzionamento… e basta… girano sempre gli stessi esempi che non mi illuminano… in pratica ho un accelerometro I2C ed un display I2C… non ho capito come farli comunicare con arduino UNO in modo che i dati dell’acelerometro siano visualizzati sul display, gli esempi su internet spiegano solo come fare in teoria (almeno quelli che ho trovato io) ma senza uno Sketch…mi potreste dare delucidazioni?

Grazie

Deci Devi fare che Arduino legga i dati del Accelerometro e che Arduino visulizza sul display i dati.
Ciao Uwe

?? sono io...ho non si capisce cosa tu voglia dire?

Devi crearti una funzione che legga i dati dall'accelerometro e un'altra che invii i dati al display.
Avrai quindi delle variabili globali che leggi da una parte e invii dall'altra.
Per poter usare acc.. e display devi avere le librerie corrette. Soprattutto per il display I2C.

Hai già fatto 2 sketch dove leggi e dove invii i dati sul display?

Ciao a tutti,
Sono interessato anch'io all'argomento... RCT + LCD... entrambi i2c... Mi sembra di capire che si possa fare... Giusto?
Quindi, prima leggo l'ora e poi visualizzo sul display i dati di cui ho bisogno?

Sul bus I2C puoi collegare in parallelo più periferiche. Ognuna avrà un proprio indirizzo di 7bit. Tramite l'indirizzo e la libreria Wire puoi utilizzare in lettura o in scrittura una periferica alla volta.
Se quindi vuoi visualizzare dati provenienti da una periferica I2C su un display I2C dovrai fare le cose in sequenza. Prima leggi e poi scrivi.

Ma ho quindi bispgno di sapere l'indirizzo i2c del dispositivo?
Come faccio a trovarlo?
Come faccio ad inserirlo nel codice?

Scusa, ma devo ammettere che non capisco.

L’indirizzo lo trovi nel datasheet del componente oppure lo colleghi a Arduino e usi lo sketch che si chiama I2Cscanner. Lo trovi in rete.

Ciao Uwe

Apollo13:
Ma ho quindi bispgno di sapere l’indirizzo i2c del dispositivo?
Come faccio a trovarlo?
Come faccio ad inserirlo nel codice?

Scusa, ma devo ammettere che non capisco.

L’indirizzo della periferica I2C lo DEVI sapere per forza, perché quando inizializzi la libreria caricata prima con #include, gli devi dire “dove si trova” ecc. ecc.
Per il display, per esempio, scrivi

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x38,20,4);

dove gli dici che la periferica si trova a 0x38

Da questo momento in poi non è più un tuo problema ma è un problema di arduino e della libreria.
Tu interroghi l’accelerometro e scrivi sul display. Basta.

Se per esempio voglio leggere un RTC (orologio) e scrivere l’ora sul display, entrambi I2C, lo posso fare normalmente.

Comunque sul web ci sono centinaia di esempi.

Ci provo.
Vi ringrazio.