Forum: Mikrocontroller und Digitale Elektronik Pegelwandlung an SPI


von Manuel S. (ela1983)


Lesenswert?

Hallo

Habe einen Atmel AT90USB1287 µC, den ich mit 5V um 16 MHz betreibe; 
leider sind meine I/O Port jetzt auch mit 0V bzw. 5V beschaltet...

Ich schließe jedoch ein ReaderIC über die SPI Schnittstelle an, welches 
nur 3,3V Pegel verträgt...

Jetzt muss ich die Pegel umschalten...

Die CLK und DATEN (Richtung ReaderIc) Leitung müssen von 5V auf 3,3V und 
die DATEN (zum µC hin) Leitung muss von 3,3V auf 5V angehoben werden.


Ich habe es mit MOSFETs versucht, aber ich glaube bei einem Takt von 8 
MHz (SPI BusTakt) klappt das so nicht mehr...


Hat kemand eine IDEE ???

Danke

von Εrnst B. (ernst)


Lesenswert?

Hier im Forum nach "Pegelwandler" und "Pegelwandlung" suchen, da kommen 
ettliche Vorschläge für ICs etc bei raus.

/Ernst

von Ray (Gast)


Lesenswert?

Verwende zum Wandeln der Signalpegel doch einfach einen 74HC4050 
(nichtinvertierender CMOS-Buffer), den du mit 3,3V betreibst. So 
verwende ich z.B. eine MMC-Karte an der i2c Schnittstelle meines 
atmega32 bei 16 MHz Takt. In der Richtung von 3,3V -> 5V dürfte keine 
Wandlung nötig sein, da 3,3V vom µC als high interpretiert werden. (Mit 
einem CD4050 konnte ich die Karte nur bei niedrigerer Taktung 
ansprechen, der 74HC... verträgt da schon höhere Taktraten)
Ich hoffe, dass dir das weiterhilft.

von Manuel S. (ela1983)


Lesenswert?

Tja das mit den 3,3V Pegeln ist das Problem:

Laut Datenblatt erkennt der Atmel  HIGH Pegel ab 0.7 * VCC

und VCC ist in meinem Fall 5V -> somit ergibt sich 3,5V...

Deswegen muss ich von 3,3V auf 5V hoch und das ganze bei einem Takt von 
8 MHz (SPI)

Das ist die schwierige Richtung...

Hat jemand ne Idee ?

von Berti (Gast)


Lesenswert?

MAX3000 oder ähnlich (siehe DB)

von Thorsten S. (cuban8)


Lesenswert?

Manuel,

bist Du mit den 0.7*Vcc sicher? Mein Atmega32 sagt im Datenblatt 0.6*Vcc 
für alle Pins ausser RESET und XTAL1. Das macht dann 3V und funktioniert 
prima.

Gruss,
Thorsten

von Manuel S. (ela1983)


Lesenswert?

Oh richtig 0,6 * VCC; das wären dann 3V,

Aber das ist ne ganz schön knappe Sache mit den 3V...

Bin mir nämlich nicht sicher, ob ich immer einen Pegel von 3,3V 
bekomme...
bei 2,9 hätte ich schon Pech gehabt...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.