SPI: SCK auf MISO sichtbar
Moin.
Wo fängt man am Besten das Suchen an, wenn man per Oszi auf MISO auch SCK sieht?
Hardwareaufbau:ATMega2560; daran per SPI:
- MCP2515 (CAN), fest verdrahtet (SMD onboard)
- Wiz812 (LAN), über kurze Kabelverbindung
- SD-Card (Über Pegelwandler von Display3000, ebenso mit kurzer Kabelverbindung). Die Version ist die aktuell erhältliche mit 3x 2x6 Pinheader.
Problem: CAN und LAN alleine funktionieren. Hängt man den Pegelwandler der SD-Karte hin, geht nichts mehr: Die Karte selbst kann nicht initialisiert werden, die LAN-Verbindung geht auch nicht mehr (d.h. Anfragen vom Browser enden mit "Keine Antwort").
Die erste Vermutung eines Softwarefehlers (in einem anderen Thread) hat sich nicht bestätigt; da funktioniert alles.
Auch die korrekte Beschaltung der verschiedenen CS klappt; es wird nur die CS-Leitung runtergezogen, deren Teilnehmer angesprochen wird.
Das Wiz812 läuft mit 3V, Eingänge (SCK, MOSI, CS) sind 5V-kompatibel, MISO wird über ne einfache Schaltung von 3,3V auf 5V gelegt (mit einem FET BSS138, wie man ihn auch für I2C-Pegelwandler verwendet). Klappt soweit auch. (Ok, ganz 5V kriegt man nicht, aber zumindest mehr als die mindestens nötigen 0,7Vcc = 3,5V für sichere High-Erkennung)
Schaut man sich mal SCK (gelb) und MISO (cyan) im Oszi an, schaut das ja eigentlich ganz zufriedenstellend aus:
Bild hier
Das ist eine zyklische Abfrage des Status des Wiz812.
Schaltet man jetzt von dem SD-Modul die Enable-Leitung auf High, d.h. die Pins sind nicht mehr Tristate, schaut die ganze Sache schon anders aus:
Bild hier
Steckt man jetzt noch die Karte rein:
Bild hier
Klar, dass eine Kommunikation per SPI damit kaum noch möglich ist.
Kann jemand aus diesen Oszibildern was rauslesen?
mfG