Merkwürdiges SPI?

Gast #490660
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 :-)

Gast #490798
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

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.