PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Atmega644: ADIS16265 (Gyro) via SPI auslesen



Ritchie
08.03.2013, 08:15
Hallo Zusammen,

hast jemand von Euch schon mal den Gyro ADIS16265 via SPI ausgelesen.

Laut Datenblatt wollen die einen 16Bit Zugriff haben, was für mich komplett gegen
den Standard verläuft. Dieser besagt doch klar 8Bit Schieberegister, egal welcher Prozessor.

Ich würde hierbei zwei einzelne 8Bit Zugriffe durchführen, wo bei denen 16 Bit steht.
Da meine Hardware noch nicht steht und ich aber schon an der Software am arbeiten bin, wäre ein Tip hier hilfreich.
Zudem ist dies mein erstes Projekt mit SPI.

Gruss R.

ePyx
08.03.2013, 08:21
Du kannst aber auch zweimal 8 Bit hintereinander schieben. Wichtig ist nur, dass du CS vor dem ersten nach Masse ziehst und nach dem zweiten wieder setzen musst. Wenn du es bei jedem Byte machst, wird der Controller sich weiger mit dir zu reden.

Ritchie
08.03.2013, 15:16
Hallo Daniel,
danke für den Tip.

Eigentlich dachte ich es in der folgenden Art durchzuführen.

- Buffer mit zu schreibenden Byte laden (Commando)
- Anzahl zu sendende Zeichen merken
- Anzahl der zu erwartenden Antwort vorbelegen
- CS Setzen
Erstes Byte in das Senderegister schieben

In der Interruptroutine:
- Noch Bytes zu Senden
- Sende weiteres Byte (Anzahl -- )

- Sind weitere Zeichen zu empfangen
Antwort Byte einlesen (Anzahl --)
Letztes Byte -> CS Löschen

Wäre das ein korrekter Ansatz ?

Gruss Richard