Forum: Mikrocontroller und Digitale Elektronik SAM7, Lesen beim SPI um 1 Bit verzogen!?


von Florian (Gast)


Lesenswert?

Hallo

Ich nutze einen AT91SAM7256 und dessen SPI-Interface mit den Settings:

CPOL:  0 (Clock Low = Logisch 0)
NCPHA: 1 (Daten zur fallenden Flanke rausschieben, zur steigenden 
empfangen)

Am SPI-Interface hängt ein ADC dran.
Die Konfiguration des ADCs klappt ohne Probleme.
Beim Auslesen des ADCs sende ich diesem eine Folge von 24 Bit Nullen, 
während er dabei seine Daten rausschiebt.

Das klappt soweit super.
Nur nimmt mein ARM alle Daten vom ADC um 1 Bit (!) versetzt auf. Das 
erste Bit wird scheinbar unter den Tisch geworfen und das zweite Bit 
dann als erstes interpretiert. Wesshalb dann alle 24 Byte = 192 Bit um 
eines verschoben sind und nichts mehr passt.

Ich weis, Kristallkugel und so, aber an was kann das liegen?
Einen Byte-Dreher zu erreichen erscheint mir ja noch recht plausibel, 
aber nur 1 Bit?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> Nur nimmt mein ARM alle Daten vom ADC um 1 Bit (!) versetzt auf.
Falscher SPI-Modus. CPOL und CPHA nochmal kontrollieren.

EDIT:
Probier doch einfach mal die drei anderen Modi auch aus ;-)

von ali (Gast)


Lesenswert?

Hallo Zusammen,

ich habe das gleiche Problem. Hast du zu dem Problem eine Lösung 
gefunden??

Danke schonmal,
Ali

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.