SPI zwischen Mikrocontroller+SD-Card+ENC28J60=Pegelwandlung

Gast #647927
Lesenswert?

So mein Problem ist das ich den Atmega32 mit 5V benutze. Um nun eine 
SD-Card und den ENJ28J60 über SPI zu benutzen benötige ich ja einen 
Pegelwandler.
Als erstes dachte ich einfach an einen Spannungsteiler, bin dann aber 
hier im Board auf den MAX3378E gestoßen. Der Baustein wurde je extra für 
diesen Fall entwickelt. Allerdings habe ich 2 Slaves. Meine Idee hierzu 
wäre einfach die zweite CS Leitung über einen Spannungsteiler zu 
realisiern. Mir stellt sich nur insgesammt die Frage ob das ausreichend 
ist oder ob ich gleich zu dem 74LVX245 greifen sollte. Der hat 8 
Eingänge was ja mehr als ausreichend wäre.

So das war meine erste Frage jetzt dann auch gleich die zweite. Um den 
µC in der Schaltung zu prgrammieren nutzt man ja die selben Pins. Kann 
ich nun einfach vor dem Pegelwandler den Anschluss für den Programmer 
setzen? Oder sollte man das Programmieren ganz anders durchführen.

Ich hoffe die Infos reichen aus um mir etwas weiter helfen zu können. 
Auf jeden Fall schon mal vielen Dank im vorraus!

Mfg
Stephan
Gast #647955
Lesenswert?

Der ENC28J60 hat 5V verträgliche Eingänge.
Die CS Leitung für den ENC28J60 kannst du also
direkt anschliessen. Finger weg vom 74LVX245.
Ich hab mal einen von Fairchild benutzt. Der
taugt nicht die Bohne für 5V-3V Konverter.
Nach lesen des Datenblattes war auch klar wieso.

Im Anhang meine ISP taugliche Schaltung für
MMC/SD und ENC28J60.
Angehängte Dateien:
Gast #647977
Lesenswert?

Vielen Dank für die schnelle Antwort. Hab grad auch das Handbuch genauer 
angeschaut und das mit den 5V Verträglich gefunden. Bleibt also nur noch 
die Frage mit den programmieren offen. Ich denke du programmierst deinen 
seperat und schließt dann erst das Board an richtig ??
Gast #648771
Lesenswert?

Mmmmh den Tristate vom MAX3378E habe ich nun an RST gehängt aber ich 
verstehe nicht genau wieso ich den daran hängen soll. Der TS-Eingang ist 
doch dazu um die Internen Pullups zu trennen. Wieso habe ich denn sonst 
damit Probleme? Oder verstehe ich da was falsch.

mfg
Stephan
Angehängte Dateien:
#648916
Lesenswert?

Nö, sorry, war ein Schnellschuss (allerdings meinte ich den 
Controller-Reset). Geht bei dem Ding ohne, und der Pullup am CS vom SDCA 
könnte direkt nützlich sein, jedenfalls wenn der SDCA keinen eigenen 
mitbringen sollte.

Aber offen lassen kannst du TS jedenfalls nicht.
Gast #649111
Lesenswert?

SDCA ist ein SD-Kartenslot. Ist es hierfür wirklich notwendig einen 
Pullup zu verwenden? Ist es grundlegend sinnvoll bei SPI den CS mit 
einem Pullup zu versehen?
Das mit dem TS habe ich jetzt geändert, ist mir nach erneuten lesen auch 
aufgefallen das ich den auf keinen Fall frei lassen kann. Also erst mal 
danke!

Mfg
Stephan Plaschke
#649116
Lesenswert?

Pullup ist nötig weil während Controller-Reset (ISP) die CS-Leitungen 
seitens Controller offen sind. Ohne Pullup können sich SPI-Slaves 
aktiviert fühlen und untereinander oder mit ISP kollidieren. Deshalb 
sind Pullups an des CS-Leitungen immer sinnvoll, wenn mehrere Slaves an 
einem Bus hängen, ISP mitgezählt. Der ENC hat den Pullup netterweise 
schon intern.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren