Forum: Mikrocontroller und Digitale Elektronik WIZ810MJ (W5100) über SPI: Modul antwortet falsch


von martin (Gast)


Lesenswert?

Hallo.
Ich versuche den W5100  mit einem MSP430 über SPI anzusprechen.
SPI Mode ist korrekt eingestellt, Spi-Takt 1MHz. (beides mit Oszi 
kontrolliert)

Eine Lese- / Schreiboperation umfasst ja 4 Zyklen, bei denen, laut 
Datenblatt, nacheinander folgend Bytes vom W5100 zurückkommen sollten 
(wenn ich die Zeichnung richtig interpretiere...):
0x00 - 0x01 - 0x02 - 0x03 (beim Schreiben)
bzw.
0x00 - 0x01 - 0x02 - 0x?? (als letztes das Ergebnis vom Lesezugriff..)

Allerdings kommen bei mir bei jedem Lese-/Schreibzugriff immer nur 
folgende Antworten:
0x00 - 0x02 - 0x04 - 0x00

Einen anderen IC auf der Platine kann ich korrekt auslesen, die SPI 
Routine passt also.

Hatte jemand schonmal dasselbe Problem? Oder irgendeine Idee wo das 
Problem liegen könnte?

Danke schonmal.
Gruß,
Martin

von Martin Weber (Gast)


Lesenswert?

Hallo Martin,

ich hoffe das Du das Problem schon behoben hast, falls es aber doch noch 
aktuell sein sollte:

Ich hatte ein sehr ähnliches Problem.

Die Antwort 0x00 - 0x02 - 0x04 - 0x00 liegt am falschen SPI mode. Laut 
Datenblatt soll der W5100 Mode 0 und 3 unterstützen. Laut WizNet 
Homepage unterstützt er aber nur SPI Mode 0. Beim falschen Modus (also 
3) verschieben sich die Bits um genau eine Position, d.h. 0x02 
(0b00000010) statt 0x01 (0b00000001) und 0x04 (0b00000100) statt 0x02 
(0b00000010).

Bei mir trat dann ein weiteres Problem auf:
Es wechselte die Antwort (3. Byte) zwischen 0x03 und 0x00 ohne 
erkennbare Regelmäßigkeit. Nach langem hin und her Probieren mit den 
Parametern, hab ich mich entschlossen einfach mal ein einfaches 
Software-SPI zu programmieren, das genau auf das Timing-Diagramm des 
W5100 abgestimmt war. Funktionierte auf Anhieb.

Es schein als gäbe es ein Timing-Problem mit dem Hardware SPI Modul des 
msp430.

Gruß

ein anderer Martin ;-)

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.