Passione per l'elettronica
 

Distinguere tra vari slaves I2C con stesso indirizzo

blisca 7 Set 2017 11:20
Ciao

scrivo qui perche il ng it.h.e.digitale =C3=A8 tristemente inattivo
e perch=C3=A8 il problema =C3=A8 secondo me piuttosto elettrico

ho 4 dispositivi I2C,dei sensori di colore,indirizzo slave fisso e
predefinito,nessun pin per variarlo.
voglio interrogarne solo uno alla volta da un unico bus


mi viene in mente
1)switch *****ogici a stato solido per dirottare almeno uno dei 2 segnali
sul disp da usare..l'altro non sente l'indirizzo corretto e sta inattivo
2)non alimentare il dispositivo,sar=C3=A0 alimentato da pin o da BJT messo =
tra
VDD 3.3V e device pilotato da pin GPIO del uC.
Non sono certo che NON alimentando i dispositivi che non voglio usare
questi non interferiscano,ma mi viene da pensare che i loro stadi open
collector o opend drain su SDA e SCL risultino ad alta impedenza

grazie

---
Questa email =C3=83=C2=A8 stata esaminata alla ricerca di virus da AVG.
http://www.avg.com
mmm 7 Set 2017 14:55
Il 07/09/2017 11:20, blisca ha scritto:
> Ciao
>
> scrivo qui perche il ng it.h.e.digitale è tristemente inattivo
> e perchè il problema è secondo me piuttosto elettrico
>
> ho 4 dispositivi I2C,dei sensori di colore,indirizzo slave fisso e
> predefinito,nessun pin per variarlo.
> voglio interrogarne solo uno alla volta da un unico bus
>
>
> mi viene in mente
> 1)switch *****ogici a stato solido per dirottare almeno uno dei 2 segnali
> sul disp da usare..l'altro non sente l'indirizzo corretto e sta inattivo

buona

> 2)non alimentare il dispositivo,sarà alimentato da pin o da BJT messo
> tra VDD 3.3V e device pilotato da pin GPIO del uC.
> Non sono certo che NON alimentando i dispositivi che non voglio usare
> questi non interferiscano,ma mi viene da pensare che i loro stadi open
> collector o opend drain su SDA e SCL risultino ad alta impedenza

non mi piace troppo prioprio perche' non hai certezza del funzionamento

3) ci sono dei mux appositi ( controllati via i2c )
probabilmente TI NXP o Maxim

>
> grazie
>
> ---
> Questa email è stata esaminata alla ricerca di virus da AVG.
> http://www.avg.com
>
emilio 7 Set 2017 17:38
blisca ha scritto:
> Ciao
>
> scrivo qui perche il ng it.h.e.digitale è tristemente inattivo
> e perchè il problema è secondo me piuttosto elettrico
>
> ho 4 dispositivi I2C,dei sensori di colore,indirizzo slave fisso e
> predefinito,nessun pin per variarlo.
> voglio interrogarne solo uno alla volta da un unico bus
>
>
> mi viene in mente
> 1)switch *****ogici a stato solido per dirottare almeno uno dei 2 segnali
> sul disp da usare..l'altro non sente l'indirizzo corretto e sta inattivo
> 2)non alimentare il dispositivo,sarà alimentato da pin o da BJT messo
> tra VDD 3.3V e device pilotato da pin GPIO del uC.
> Non sono certo che NON alimentando i dispositivi che non voglio usare
> questi non interferiscano,ma mi viene da pensare che i loro stadi open
> collector o opend drain su SDA e SCL risultino ad alta impedenza
>
> grazie

usare un multiplexer I2C : TCA9544
qui un esempio gia fatto:
https://learn.adafruit.com/adafruit-tca9548a-1-to-8-i2c-multiplexer-breakout/overview
blisca 7 Set 2017 20:48
In data settembre 2017 alle ore 17:38:53, emilio <emilio@libero.it> ha
scritto:

> blisca ha scritto:
>> Ciao
>>
>> scrivo qui perche il ng it.h.e.digitale =C3=A8 tristemente inattivo
>> e perch=C3=A8 il problema =C3=A8 secondo me piuttosto elettrico
>>
>> ho 4 dispositivi I2C,dei sensori di colore,indirizzo slave fisso e
>> predefinito,nessun pin per variarlo.
>> voglio interrogarne solo uno alla volta da un unico bus
>>
>>
>> mi viene in mente
>> 1)switch *****ogici a stato solido per dirottare almeno uno dei 2 segnali=

>> sul disp da usare..l'altro non sente l'indirizzo corretto e sta inattivo=

>> 2)non alimentare il dispositivo,sar=C3=A0 alimentato da pin o da BJT mes=
so
>> tra VDD 3.3V e device pilotato da pin GPIO del uC.
>> Non sono certo che NON alimentando i dispositivi che non voglio usare
>> questi non interferiscano,ma mi viene da pensare che i loro stadi open
>> collector o opend drain su SDA e SCL risultino ad alta impedenza
>>
>> grazie
>
> usare un multiplexer I2C : TCA9544
> qui un esempio gia fatto:
> https://learn.adafruit.com/adafruit-tca9548a-1-to-8-i2c-multiplexer-break=
out/overview
>
grazie dei consigli

ero orientato allo switch *****ogico,interrompendo SDA che necessitava di
una pull up per ogni dispositivo,giusto per evitare cha la interruzione
sembrasse un bit di stop,ma non vedo il motivo ,nemmeno il consumo se ho
visto bene ,per non usare il TCA9544

---
Questa email =C3=83=C2=A8 stata esaminata alla ricerca di virus da AVG.
http://www.avg.com
Fabio 7 Set 2017 23:45
Il 07/09/2017 11:20, blisca ha scritto:
> Ciao
>
> scrivo qui perche il ng it.h.e.digitale è tristemente inattivo
> e perchè il problema è secondo me piuttosto elettrico
>
> ho 4 dispositivi I2C,dei sensori di colore,indirizzo slave fisso e
> predefinito,nessun pin per variarlo.
> voglio interrogarne solo uno alla volta da un unico bus
>
>
> mi viene in mente
> 1)switch *****ogici a stato solido per dirottare almeno uno dei 2 segnali
> sul disp da usare..l'altro non sente l'indirizzo corretto e sta inattivo
> 2)non alimentare il dispositivo,sarà alimentato da pin o da BJT messo
> tra VDD 3.3V e device pilotato da pin GPIO del uC.
> Non sono certo che NON alimentando i dispositivi che non voglio usare
> questi non interferiscano,ma mi viene da pensare che i loro stadi open
> collector o opend drain su SDA e SCL risultino ad alta impedenza
Isolare i vari dispositivi con dei buoni vecchi buffer tri-state magari
in versione CMOS, tipi i vari 74LS245 e simili ( lo so è roba vecchia,
ma è l'unica sigla che mi è venuta in mente!)?
Fabio

---
Questa e-mail è stata controllata per individuare virus con Avast antivirus.
https://www.avast.com/antivirus
blisca 8 Set 2017 00:55
In data settembre 2017 alle ore 23:45:47, Fabio <alpenjager@email.com> ha =

scritto:

> Il 07/09/2017 11:20, blisca ha scritto:
>> Ciao
>> scrivo qui perche il ng it.h.e.digitale =C3=A8 tristemente inattivo
>> e perch=C3=A8 il problema =C3=A8 secondo me piuttosto elettrico
>> ho 4 dispositivi I2C,dei sensori di colore,indirizzo slave fisso e
>> predefinito,nessun pin per variarlo.
>> voglio interrogarne solo uno alla volta da un unico bus
>> mi viene in mente
>> 1)switch *****ogici a stato solido per dirottare almeno uno dei 2
>> segnali sul disp da usare..l'altro non sente l'indirizzo corretto e sta =

>> inattivo
>> 2)non alimentare il dispositivo,sar=C3=A0 alimentato da pin o da BJT mes=
so
>> tra VDD 3.3V e device pilotato da pin GPIO del uC.
>> Non sono certo che NON alimentando i dispositivi che non voglio usare
>> questi non interferiscano,ma mi viene da pensare che i loro stadi open =

>> collector o opend drain su SDA e SCL risultino ad alta impedenza
> Isolare i vari dispositivi con dei buoni vecchi buffer tri-state magari =

> in versione CMOS, tipi i vari 74LS245 e simili ( lo so =C3=A8 roba vecchi=
a,
> ma =C3=A8 l'unica sigla che mi =C3=A8 venuta in mente!)?
> Fabio
>
Non mi sembra la soluzione corretta:
Il micro non potrebbe sempre sapere quando =C3=A8 il mometo di commutare la=

direzione:
durante la trasmissione I2C quando il master trasmette =C3=A8 lui che muove=

SDA,ma quando lo slave risponde ,il controllo passa allo slave,sia per il =

bit ACK che per i bytes successivi.
Se io affido la comunicazione I2C al modulo I2C *****ware del
microcontrollore lancio la comunicazione e se la vede lui,quindi io non
posso dire quando sia il momento buono per cambiare.
Se lo facessi via software,potrebbe quasi funzionare ma anche qui ci
sarebbe un problema:lo slave
deve poter fare il clock stretching bloccando gli impulsi di clock,e lo
pu=C3=B2 fare solo con la logica "dominante-recessivo" o come si chiama,in =
cui
quello dei due dispositivi che porta il clock basso deve poterlo fare.
Se il master =C3=A8 bufferato lo slave non si trova a combattere con una pu=
ll
up,ma con un buffer,sarebeb un conflitto logico ed elettrico,non solo,lo
slave non potrebbe fare sapere al master che sta cercando di bloccare il
clock

---
Questa email =C3=83=C2=A8 stata esaminata alla ricerca di virus da AVG.
http://www.avg.com
Fabio 10 Set 2017 00:10
Mi sa che mi devo rivedere le mie conoscenze sul bus I2C! Credo che tu
abbia ragione! L'ora tarda a volte fa scrivere sciocchezze.
Fabio

---
Questa e-mail è stata controllata per individuare virus con Avast antivirus.
https://www.avast.com/antivirus
blisca 10 Set 2017 17:38
In data settembre 2017 alle ore 00:10:43, Fabio <alpenjager@email.com> ha =

scritto:

> Mi sa che mi devo rivedere le mie conoscenze sul bus I2C! Credo che tu
> abbia ragione! L'ora tarda a volte fa scrivere sciocchezze.
> Fabio
>
pu=F2 darsi ,ma non prendere le mie osservazioni come oro colato e verifica=

su qualche sito sicuramente pi=F9 autorevole

Saluti

---
Questa email =E8 stata esaminata alla ricerca di virus da AVG.
http://www.avg.com
asdf 10 Set 2017 20:08
On Thu, 07 Sep 2017 11:20:00 +0200, blisca wrote:

> scrivo qui perche il ng it.h.e.digitale è tristemente inattivo e perchè
> il problema è secondo me piuttosto elettrico

Si, ma siamo tutti in ascolto anche lì.

> ho 4 dispositivi I2C,dei sensori di colore,indirizzo slave fisso e
> predefinito,nessun pin per variarlo.
> voglio interrogarne solo uno alla volta da un unico bus

Visto il PCA9518? https://www.ti.com/product/pca9518
Non è un semplice multiplexer ma un autentico hub i2c.
blisca 11 Set 2017 11:04
In data settembre 2017 alle ore 20:08:19, asdf <asdf@nospam.com> ha
scritto:

> On Thu, 07 Sep 2017 11:20:00 +0200, blisca wrote:
>
>> scrivo qui perche il ng it.h.e.digitale =E8 tristemente inattivo e perch=
=E8
>> il problema =E8 secondo me piuttosto elettrico
>
> Si, ma siamo tutti in ascolto anche l=EC.
>
>> ho 4 dispositivi I2C,dei sensori di colore,indirizzo slave fisso e
>> predefinito,nessun pin per variarlo.
>> voglio interrogarne solo uno alla volta da un unico bus
>
> Visto il PCA9518? https://www.ti.com/product/pca9518
> Non =E8 un semplice multiplexer ma un autentico hub i2c.
>
Mi sto rendendo conto che per semplicit=E0 di sbroglio del PCB avrei dovut=
o
scegliere uno dei due IC suggeritimi invece dello switch *****ogico

---
Questa email =E8 stata esaminata alla ricerca di virus da AVG.
http://www.avg.com
blisca 11 Set 2017 16:07
In data settembre 2017 alle ore 15:49:41, Roberto
<powerlifting@libero.it> ha scritto:

> "blisca" <blisca@tiscali.it> ha scritto nel messaggio
> news:op.y6d8txz18wgptj@lella-hp.station...
> In data settembre 2017 alle ore 20:08:19, asdf <asdf@nospam.com> ha
> scritto:
>
>> Mi sto rendendo conto che per semplicit=E0 di sbroglio del PCB avrei
>> dovuto
>> scegliere uno dei due IC suggeritimi invece dello switch *****ogico
>
> Uff per 2 linee di i/o in pi=F9, avessi avuto 'sti problemi io all'epoca!=

> https://s26.postimg.org/l59gk2leh/4052.jpg
> Qua un 74HC4052 su una mainboard di 15 anni fa, il problema non era
> tanto la
> mancanza di indirizzo ma isolare ad esempio il clockgen programmabile o =

> il
> regolatore di tensione programmabile per evitare che comandi i2c
> impartiti a
> ******* bloccassero la macchina.
>
>
ti assicuro che 2 linee fisiche in pi=F9 sono un problema devi sviluppare i=
n
fretta un prototipo su PCB,con tecnologia domestica e integrati SMD
LGA-24(quindi quelli sopracitati sono grandi e comodi in confronto)

---
Questa email =E8 stata esaminata alla ricerca di virus da AVG.
http://www.avg.com
Roberto 11 Set 2017 16:11
"blisca" <blisca@tiscali.it> ha scritto nel messaggio
news:op.y6emt1mn8wgptj@lella-hp.station...
>,con tecnologia domestica

ma vai a cagare!
blisca 11 Set 2017 16:38
In data settembre 2017 alle ore 16:11:20, Roberto
<powerlifting@libero.it> ha scritto:

>
> "blisca" <blisca@tiscali.it> ha scritto nel messaggio
> news:op.y6emt1mn8wgptj@lella-hp.station...
>> ,con tecnologia domestica
>
> ma vai a cagare!

che intervento utile

---
Questa email è stata esaminata alla ricerca di virus da AVG.
http://www.avg.com
Roberto 11 Set 2017 16:54
"blisca" <blisca@tiscali.it> ha scritto nel messaggio
news:op.y6eoadgv8wgptj@lella-hp.station...
In data settembre 2017 alle ore 16:11:20, Roberto
<powerlifting@libero.it> ha scritto:

>
> "blisca" <blisca@tiscali.it> ha scritto nel messaggio
> news:op.y6emt1mn8wgptj@lella-hp.station...
>>> ,con tecnologia domestica
>
>> ma vai a cagare!

> che intervento utile

EN1, EN2, EN3, EN4 = 4

S1, S2= 2

Ok, preferisci sentirti dare del *******

Links
Giochi online
Dizionario sinonimi
Leggi e codici
Ricette
Testi
Webmatica
Hosting gratis
   
 

Passione per l'elettronica | Tutti i gruppi | it.hobby.elettronica | Notizie e discussioni elettronica | Elettronica Mobile | Servizio di consultazione news.