RTC DS3231 indirizzo I2C

Ciao a tutti,
pochi giorni fa ho montato su un arduino mega un RTC DS3231 sull'interfaccia I2C.
L'indirizzo I2C del DS3231 è 0x68, però dovrei montare un'altra periferica che ha lo stesso indirizzo (0x68).
C'è un modo per non avere conflitto tra le due periferiche? O meglio si può cambiare indirizzo del DS3231?

PS: Escludo il cambio di indirizzo sull'altra periferica perchè il datasheet lo dice chiaramente (cambio di indirizzo solo su richiesta direttamente alla casa madre e per un certo quantitativo).

Grazie mille a tutti.

non puoi usare 2 dispositivi I2C con lo stesso indirizzo sullo stesso bus.
Ci sono modi molto complicati per usare 2 dispositivi con lo stesso indizizzo su un bus I2C. Devi creare 2 subbus con gli integrati adatti a questo.

Cambia l' indirizzo del DS3231.
Ciao Uwe

Che io sappia, non vi è modo di cambiare l'indirizzo del DS3231.

Non resta che cambiare l'indirizzo dell'altro dispositivo.

Vi ringrazio per le risposte...sono in un bel casino!

Potresti provare a commutare il solo segnale SDA, lasciando in comune il solo SCK.

Con un paio di porte AND ed una porta invertente dovresti farcela.

In entrambi i casi devi però usare una uscita digitale di Arduino per la commutazione.

Grazie, questa sarebbe una valida alternativa. Però mi tocca ridisegnare il tutto.
Faccio un pò di discovery in rete e magari sostiuisco l'altra periferica che già in realtà vorrei sostitutire.
È un sensore SHT11 e non mi fido tanto delle sue letture...quindi se proprio devo sostituire una delle due preferisco l'SHT11
Grazie mille.

Scusa ma non hai i jumperini a saldare A0, A1 e A2 sul modulo RTC?

Ma guarda che il sensore SHT11 non è I2C, pur potendo convivere sullo stesso bus.

The sensor cannot be addressed by I2C protocol; however, the sensor can be connected to an I2C bus without interference with other devices connected to the bus. The controller must switch between the protocols.

Ma guarda che il sensore SHT11 non è I2C, pur potendo convivere sullo stesso bus.

Tra le specifiche del prodotto trovo:

Key Specifications:

Power requirements: 2.4 to 5.5 VDC
Communication: Two-Wire Serial
Dimensions: 0.43 x 0.49 in (11 x 12.5 mm)
Operating temp range: -40 to +254.9°F (-40 to +123.8°C)

Fonte Adafruit.
Domanda: Two-Wire Serial non è la I2C (nome Philips)???
La libreria che uso è la SHTX e funziona.
Poi se connetto entrambi i devices, con lo skect per lo scanner I2C trovo o uno o l'altro a seconda se importo prima una o l'altra libreria!
Come potrei allora connettere l'SHT11? A qualsiasi pin digitale arduino ignorando il clock?
O a due pin digitali a prescidere da SDA E SCL?
Per intenderci sull'arduino MEGA uso i pin 20 e 21!
Grazie.

ardurico:
Tra le specifiche del prodotto trovo:Fonte Adafruit.
Domanda: Two-Wire Serial non è la I2C (nome Philips)???
La libreria che uso è la SHTX e funziona.
...
Per intenderci sull'arduino MEGA uso i pin 20 e 21!

Perché non usi altri pin per la libreria SHTX

Ciao Uwe

ardurico:
Tra le specifiche del prodotto trovo:Fonte Adafruit.
Domanda: Two-Wire Serial non è la I2C (nome Philips)???

Two wire è un nome generico per indicare una seriale sincrona, non è la I2C anche se può diventarlo.
Il sensore SHT11 non ha un address I2C e non è un device I2C, è un device con bus seriale sincrono.
Il data sheet del SHT dice molto chiaramente:

The sensor cannot be addressed by I2C protocol; however, the sensor
can be connected to an I2C bus without interference with other devices connected to the bus.
The controller must switch between the protocols.

Ovvero puoi collegare l'SHT11 sulla I2C però per dialogare con lui devi "spegnere" la I2C, che ha delle caratteristiche hardware particolari, e passare al protocollo specifico del SHT.
Puoi benissimo collegare l'SHT11 su due gpio generici di Arduino, basta che informi la libreria della cosa, come farlo dipende dalla libreria, ce ne sono diverse per l'SHT11.

Siete stati gentilissimi.Grazie a tutti.A breve vi faro' sapere!

Salve,
ho provato a connettere il sensore su pin differenti da 20 e 21, ho provato sia su pin diigitali che analogici, cambiati pin alla libreria SHTx.cpp.
La cosa strana è che effettivamente nella libreria non si fa nessun riferimento a indirizzo i2C, ma paradossalmente funziona solo su quei pin!
Se non connesso ai 20 e 21 non funziona!
Se entrambi i devices sono sul bus il sensore non va.....Indagherò

Salve,
ho provato a connettere il sensore su pin differenti da 20 e 21, ho provato sia su pin diigitali che analogici, cambiati pin alla libreria SHTx.cpp.
La cosa strana è che effettivamente nella libreria non si fa nessun riferimento a indirizzo i2C, ma paradossalmente funziona solo su quei pin!
Se non connesso ai 20 e 21 non funziona!
Se entrambi i devices sono sul bus il sensore non va.....Indagherò

Funziona! In pratica ho connesso ll cavo clock al pin analogico 7 e il cavo data al pin analogico 6, messa la resistenza di pull-up , cambiati i pin alla libreria e funziona!
Dimendicavo la resistenza!!!
Siete stati gentilissimi!
Buona serata...