Vai al contenuto
PLC Forum


Pic A 5v Con Dispositivi Spi A 3,3v


Messaggi consigliati

Inserito:

Il pic che sto utilizzando è alimentato a 5V, ma sto usando una memoria FRAM e un giroscopio con interfaccia SPI alimentati a 3,3V.

Le linee SPI clock, SPI out e le linee chip select possono essere agevolmente convertite da 5 a 3,3V con dei semplici partitori. Il problema è la linea SPI IN che arriva al pic a 3,3V invece dei 5.

La comunicazione funziona comunque, ma non mi sembra una cosa fatta per come si deve. Secondo voi è una buona idea se su questa linea prevedo un transistor in modo che il segnale a 3,3V ne piloti la base?

Grazie ancora!


Inserita:

Usare un segnale 3.3V come ingresso per un PIC alimentato a 5V riduce l'immunità ai disturbi. Se i dispositivi SPI sono montati sulla medesima scheda la riduzione può essere accettabile.

Usare un transistore come traslatore di livello comporta non poche problematiche.

Per prima cosa si ha l'inversione del segnale (gli "1" diventano "0" e viceversa), poi se non è ben pilotato si corre il rischio di avere fronti "sdraiati" e/o oscillazioni.

Se proprio vuoi adattare i livelli con transistors devi usare 2 transistors, un NPN ed un PNP in cascata, curando bene la polarizzazione e dosando opportunamente i condensatori di speed up, specie se usi lo SPI bus a velocità di qualche centinaio di khz.

Al trimenti accontentati dei 3V e della ridotta immunità.

Inserita:

Ok, mi accontento della ridotta immunità tongue.gif

In fondo la distanza tra processore e dispositivi è al più di tre centimetri.

Inserita:

se ti interessa puoi inserire in mezzo una logica HCT (Ad es. due porte HCT14 in serie ) che ha soglie di commutazione molto basse anche se alimentata a 5V

Inserita:

Novità: dalle prove fatte mi sono accorto che la scrittura da PIC a dispositivi (quindi da 5V a 3,3V con interposti partitori) funziona benissimo, invece la lettura dà problemi perchè ogni tanto, diciamo una volta ogni 50 letture, il valore letto è 0.

Il problema si presenta a tutte e due le frequenze utilizzabili per il modulo SPI (3 MHz e 750KHz)

Dopo varie esclusioni sono convinto che il problema è proprio questa mancata conversione da 3,3V a 5V.

Vi viene in mente qualche altra possibile causa?

Grazie dell'aiuto e della pazienza.

  • 3 weeks later...
Inserita:

Oggi ho messo un convertitore di livello, l'integrato della maxim MAX3392. Ora la comunicazione è perfetta.

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...