MMA8451Q ansteuern

OP #3096218
Lesenswert?

Hallo,

ich sitz jetzt knapp 2 Tage davor und komme nicht weiter. Der Chip hat 
so eine erschlagend grosse menge an Funktionen, dass ich kaum 
durchblicke.

Der Chip ist wie im Datenblatt beschalten. hab auchs chon mehrere Chips 
jetzt durchgetestet um Hardwarefehler auszuschliessen. Der Chip schickt 
auch seine device ID, also ist kein hardwarefehler vorhanden (jedenfalls 
auf der digitalseite). Auch am Logicanalyser kann ich die Daten schön 
mitverfolgen und sehe dass der Chip antwortet. Ich will jetzt nur 
testweise die X-Achse auslesen. ich schildere mal wie ich es gerade 
versuche:

1) I2C einstellen, 400kHZ i2C Geschwindigkeit
2) Den MMA in STDBY (und FastMode+Low noise) versetzen durch schreiben 
des Bytes:&B00000110 ins register 0x2A.
3) Den FIFO auf circular buffer setzen indem ich das Byte &B01000000 ins 
register 0x09 schreibe (was macht eigentlich der watermark interrupt?)
4) Den MMA wieder aktiv (und LowNoise+F_mode) setzen indem ich 
&B00000111 ins register 0x2A schreibe.

-> hier beginnt die Schleife
5) Data register 0x00 nach anstehenden Daten abfragen (Lesen von ZYXDR)
6) Wenn ZYXDR 1 ist, dann lese ich das register 0x01 (also das MSB von 
x, da 8 bit modus) aus. Aber ich bekomme nur 255 oder 0
-->hier endet die schleife



Hat das Ding schonmal jemand im betrieb gehabt und könnte mir da Tipps 
geben?
Programmcode habe ich auch ( Achtung bascom ;) ):

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren