Salve, sto progettando un sistema formato in questo modo:
board A -> VME backplane -> board B
Quindi tra la board A e la board B ci sono 2 connettori VME.
Sulla board A c'è un micro deve comunicare con dei sensori sulla board B, la domanda è: posso usare il bus I2C del micro e andare direttamente alla board B o dato che la distanza non è poca e che ci sono due connettori in mezzo è meglio usare dei convertitori I2C-LVDS?
Grazie
I2C bus multi scheda
Moderatore: Paolino
5 messaggi
• Pagina 1 di 1
0
voti
Ciao @federicomassimi.
Se progetti una cosa del genere devi conoscere le specifiche e le caratteristiche elettriche che vincolano l'impiego del bus I2C, soprattutto a livello hardware.
In generale, a parte le regole del protocollo stesso, a livello elettrico mi pare che la distanza sia condizionata dalla capacità totale della linea con un massimo fissato intorno ai 400 pF; è una caratteristica influenzata principalmente da due fattori: numero dei device collegati al bus e la lunghezza dello stesso.
In modo approssimativo puoi considerare una capacità parassita di circa 80 pF per metro, quindi potresti arrivare a 5 metri: la larghezza del tuo rack presumo sia di qualche decina di centimetri.
La lunghezza può essere limitata anche dalla massima velocità di trasmissione dei dati che si vuole garantire; infatti, maggiore è la velocità, più critica risulta la variazione(transizione) dallo stato basso ad alto e viceversa di ogni linea(SDA e SCL).
Il bus I2C, ideato, se non erro, per mettere in comunicazione componenti sulla stessa scheda, è stato poi utilizzato superando i confini della singola board, come faresti tu.
Per quanto scritto, nel tuo caso probabilmente non ci sono problemi ma non ci si può affidare ad una ipotesi e ad una semplice(la mia) opinione ricevuta sul forum: dovresti verificare sui datasheet le specifiche dei componenti che andresti ad impiegare, analizzare il retro di quel rack e le eventuali schede esistenti(quindi l'hardware nel suo insieme).
Le informazioni che fornisci penso siano insufficienti per esprimere un parere più che attendibile, anche per chi ha competenze specifiche nel settore, però, chi è più preparato, sulla base d'una esposizione meglio circostanziata, penso potrebbe portare contributi più interessanti.
Saluti
Se progetti una cosa del genere devi conoscere le specifiche e le caratteristiche elettriche che vincolano l'impiego del bus I2C, soprattutto a livello hardware.
In generale, a parte le regole del protocollo stesso, a livello elettrico mi pare che la distanza sia condizionata dalla capacità totale della linea con un massimo fissato intorno ai 400 pF; è una caratteristica influenzata principalmente da due fattori: numero dei device collegati al bus e la lunghezza dello stesso.
In modo approssimativo puoi considerare una capacità parassita di circa 80 pF per metro, quindi potresti arrivare a 5 metri: la larghezza del tuo rack presumo sia di qualche decina di centimetri.
La lunghezza può essere limitata anche dalla massima velocità di trasmissione dei dati che si vuole garantire; infatti, maggiore è la velocità, più critica risulta la variazione(transizione) dallo stato basso ad alto e viceversa di ogni linea(SDA e SCL).
Il bus I2C, ideato, se non erro, per mettere in comunicazione componenti sulla stessa scheda, è stato poi utilizzato superando i confini della singola board, come faresti tu.
Per quanto scritto, nel tuo caso probabilmente non ci sono problemi ma non ci si può affidare ad una ipotesi e ad una semplice(la mia) opinione ricevuta sul forum: dovresti verificare sui datasheet le specifiche dei componenti che andresti ad impiegare, analizzare il retro di quel rack e le eventuali schede esistenti(quindi l'hardware nel suo insieme).
Le informazioni che fornisci penso siano insufficienti per esprimere un parere più che attendibile, anche per chi ha competenze specifiche nel settore, però, chi è più preparato, sulla base d'una esposizione meglio circostanziata, penso potrebbe portare contributi più interessanti.
Saluti
W - U.H.F.
-
WALTERmwp
28,1k 4 8 13 - G.Master EY
- Messaggi: 8450
- Iscritto il: 17 lug 2010, 18:42
- Località: le 4 del mattino
0
voti
Condivido le osservazioni di chi mi ha preceduto
Io farei meno strada possibile con l'I2C
Esistono degli extender I2c
https://www.futurashop.it/breakout-boar ... 100-ft1481
A naso visto le poche informazioni se vai con I2C sui sensori non hai bisogno di velocità perciò senza usare linee LVDS potresti usare un alinea RS485 o RS422 differrenziale
Certo da entrambi i lati ci dev'essere qualcosa che poi riporta il segale da/a I2C
Io farei meno strada possibile con l'I2C
Esistono degli extender I2c
https://www.futurashop.it/breakout-boar ... 100-ft1481
A naso visto le poche informazioni se vai con I2C sui sensori non hai bisogno di velocità perciò senza usare linee LVDS potresti usare un alinea RS485 o RS422 differrenziale
Certo da entrambi i lati ci dev'essere qualcosa che poi riporta il segale da/a I2C
-
luxinterior
3.549 3 4 8 - Master
- Messaggi: 2239
- Iscritto il: 6 gen 2016, 17:48
0
voti
sarebbe un caso interessante da affrontare, sarei curioso di provare a bufferare la linea, ed utilizzare un pullup a bassa impedenza, magari non va.
P-S. (capisco che sia una tribolata per nulla, giusto da hobbista, ma visto che mi sono fatto una I2C su un micro con uscite push-pull, che non la supportava via hardware....ci starebbe anche togliersi questo sfizio.)
saluti.
P-S. (capisco che sia una tribolata per nulla, giusto da hobbista, ma visto che mi sono fatto una I2C su un micro con uscite push-pull, che non la supportava via hardware....ci starebbe anche togliersi questo sfizio.)
saluti.
-
lelerelele
3.612 3 7 9 - Master
- Messaggi: 4245
- Iscritto il: 8 giu 2011, 8:57
- Località: Reggio Emilia
5 messaggi
• Pagina 1 di 1
Torna a Realizzazioni, interfacciamento e nozioni generali.
Chi c’è in linea
Visitano il forum: Nessuno e 9 ospiti