Hallo, ich habe bis gestern nacht um 3 versucht es zu finden, zweckslos, daher frage ich hier mal an. Ich steuere eine MMC Karte mit einem PIC an. Die Spannungsanpassung wird über Teilerwiderstände auf 3,3V vorgenommen, versorgt wird die Karte über einen 3.3V Regler, der sich ein und ausschaltenn lässt. Taktrate wurde getestet von 100khz bis 1Mhz. Die Software ist nach der MMC Spec 3.0 selbst geschrieben, weil ich im Netz keinen befriedigenden Code fand, der alle Fehler abfängt und genügend modular aufgebaut ist. Testweise beschreibe ich einzelne Blöcke, beginnend bei Block 0 mit 512 Zufallsbytes. Dabei kommt es immer wieder vor, dass Fehler auftauchen beim Schliessen des Schreibvorgangs. Ich benutze den Multiple Block Write Mode, der mit einem "Stop Tran Token" (FD) beendet wird und zweimal den Busy Vorgang auslöst, einmal beim Schreiben des Vorgängerblocks und dann nochmal wenn FD empfangen wird. Der zweite Busy Vorgang scheint nicht immer stattzufinden. Jetzt aber das eigentliche Problem: Berühre ich mir einem Schraubenzieher den CLK Pin der Karte im Betrieb geht diese sofort in eine Fehlermeldung! Selbst das Antasten mit dem Oszi geht nicht, weil sie sofort einen Fehler meldet. Das darf nicht sein, das wäre viel zu empfindlich zudem der Pin über die 3,3k und 1,8 Widerstände an Masse liegt. Masseprobleme sind ausgeschlossen, alles geprüft, Bauteile sind alle in Ordnung. Es taucht bei allen Taktraten auf. Hat da jemand vielleicht eine idee oder kann das an seiner Schaltung mal testen? Als letzten Ausweg sehe ich nur 5V->3,3V Gatter statt der Widerstände.
Nachsatz: Der 18f PIC hat an seinem SDI Eingang einen 74HCT 2-fach Inverter vorgeschaltet, da die SPI Eingänge sonst Schmitt Charakteristik haben und für 3,3V nicht geeignet sind. Diese Fehlerquelle, die ich in meinen ersten Designs gemacht habe ist also ausgeschlossen worden. Gruss, Christian
Warum haben immer nur die Leute Probleme, die die Pegelwandlung mit Widerständen machen? Von den Bastlern, die das mit Gattern machen hört man so gut wie nie etwas. Aber man kann ja 0,2Cent sparen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.