Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

traslatore di livelli bidirezionale con mosfet

Elettronica lineare e digitale: didattica ed applicazioni

Moderatori: Foto Utentecarloc, Foto Utenteg.schgor, Foto UtenteBrunoValente, Foto UtenteIsidoroKZ

0
voti

[1] traslatore di livelli bidirezionale con mosfet

Messaggioda Foto UtenteAlessandro84 » 17 mar 2012, 18:13

Salve.
Stavo cercando una soluzione semplice per far comunicare via I2C un microcontrollore alimentato a 5V con dispositivi alimentati a 3.3V, ed ho trovato in rete il semplice circuito mostrato in figura, che impiega un transistor per ogni linea. Mi stavo chiedendo come comportarmi con le resistenze di pull-up previste dal bus I2C.. Che faccio? Su ogni lato metto una coppia di resistenze (una per linea) collegate alla tensione propria di quel lato? Oppure non le metto perché ci sono già quelle connesse al transistor? E se per caso il dispositivo alimentato a 3.3v che intendo connettere prevede già delle resistenze di pull-up che succede? (queste andrebbero in parallelo a quelle del transistor modificando il valore della resistenza di pull-up effettiva e quindi la costante di tempo che regola la carica/scarica delle capacità della linea...)
Grazie.
avr.png
convertitore livelli bidirezionale 3.3v 5v
avr.png (4.5 KiB) Osservato 5718 volte
Avatar utente
Foto UtenteAlessandro84
10 1 4
New entry
New entry
 
Messaggi: 66
Iscritto il: 5 apr 2010, 21:15

1
voti

[2] Re: traslatore di livelli bidirezionale con mosfet

Messaggioda Foto Utentecarloc » 18 mar 2012, 9:59

I pull-up non sono poi così critici:
La costante di tempo deve essere molto più piccola della frequenza degli impulsi per non distorcerli tanto da far "leggere" valori errati e/o violare le specifiche sul rise/fall time.
Si potrebbe anche dire che non è bene farla troppo più piccola, si espande inutilmente lo spettro del segnale verso le alte frequenze con possibili problemi di EMC e senza benefici sul funzionamento ma...

D'altra parte -c'è sempre un'altra parte :-) - diminuendo i pull-up scorre più corrente quando sei a livello basso e -apparte il consumo- si rischia di sovraccaricare i driver dell'IC che stà pilotando il BUS e/o di uscire dalle specifiche di Vil_max.

Tra questi due estremi è tutto buono :D .... i 10k del tuo adattatore sono abbastanza elevati (una volta l'I2C usava 3k3) le puoi lasciare tranquillamente, oppure se ci sono già i pull-up dei due BUS le puoi anche togliere. Basta che ci siano da qualche parte
Se ti serve il valore di beta: hai sbagliato il progetto!
Avatar utente
Foto Utentecarloc
33,8k 6 11 13
G.Master EY
G.Master EY
 
Messaggi: 2153
Iscritto il: 7 set 2010, 19:23


Torna a Elettronica generale

Chi c’è in linea

Visitano il forum: Google Adsense [Bot] e 52 ospiti