Forum: Mikrocontroller und Digitale Elektronik Merkwürdiges SPI?


von guro (Gast)


Lesenswert?

hi,
ich habe ein wlan-chip modul (mit marvell chipsatz 88w8385), das über 
spi mit einem µC verbunden werden kann.
die dokumentation ist leider sehr dürftig.
bei meinen versuchen, mit dem teil zu kommunizieren hab' ich folgendes 
festgestellt:
1. das spi des moduls arbeitet 16-bittig d.h. ich muss 16 clocks pulsen, 
um ein wort rüberzuschieben.
2. das erste bit schiebt das modul bereits mit dem setzen der 
slave-select leitung auf die MISO-leitung, nicht erst nach dem ersten 
clockimpuls!!!
3. die MISO-leitung wechselt nicht zwischen 1 und 0, sondern zwischen 1 
und hochohmig. ich muss also die 0 mit einem pull-down widerstand 
erzeugen!!!
4. die slave-select leitung darf frühestens nach 32 bit wieder 
hochgesetzt werden, sonst verwirft das modul die daten!!!

so wie ich's beschrieben habe, funktioniert die kommunikation, d.h. ich 
kann register lesen und beschreiben, ein firmware-image hinüberschicken 
und dort starten...

nun zu meiner eigentlichen frage: wieso verhält sich dieses SPI so 
ungewöhnlich? ich kann z.zt. das modul nur ansteuern, indem ich SPI über 
i/o ports simuliere. ein eingebautes SPI peripheral in einem µC wird 
wohl kaum mit dieser konfiguration fertig werden (ein freescale s12x 
z.b. kann es nicht, da bin ich mir sicher)...

vielen dank im voraus für alle tips und antworten :-)


von Michael U. (Gast)


Lesenswert?

Hallo,

klingt mir so danach, als wenn Du den falschen SPI-Mode benutzt.
Im Prinzip gibt es 4:
Im Ruhezustand Clock auf L, Übernahme mit steigender Clock-Flanke
Im Ruhezustand Clock auf L, Übernahme mit fallender Clock-Flanke
Im Ruhezustand Clock auf H, Übernahme mit steigender Clock-Flanke
Im Ruhezustand Clock auf H, Übernahme mit fallender Clock-Flanke

nicht jeder µC kann auf alle Modi eingestellt werden.

Gruß aus Berlin
Michael

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.