Gast
#2281995
Hallo zusammen, ich versuche seit einigen Tagen einen ITG 3200 (3 Achsen Gyro) mit einem AVR ATMega 48 auszulesen, der ITG sitzt (neben einem ADXL345) auf einem Sparkfun-Board (http://www.sparkfun.com/products/10121). der ADXL lässt sich problemlos auslesen, beim ITG kann ich sämtliche Steuerregister beschreiben und auch wieder auslesen. I2C und die Datenausgabe funktionieren also einwandfrei. Wenn ich allerdings versuche die Register 0x1b bis 0x22 (Drehraten und Temperatur) auszulesen, bekomme ich immer 0x00 zurück. Die Symptome sprechen dafür, dass der Gyro im Sleep-Modus ist, aber das ist habe ich durch setzen bzw löschen der "sleep" und "stby" Bits im Power-Management-Register bereits ausgeschlossen. der ITG wird folgendermaßen Initialisiert: Register : Registerbedeutung : Wert : Bedeutung 0x3e : Power Management : 0x80 : Reset 0x3e : Power Management : 0x03 : Clocksource Z-Achse 0x15 : Samplerate Divider : 0x07 : 125 Samples / s 0x16 : DLPF, Full Scale : 0x19 : 2 kDeg / s; TP: 188Hz; ISR: 1kHz 0x17 : Interrupt Control : 0x00 : Interrupts Ausgeschaltet Danach beginnt eine Endlosschleife, die den Inhalt eines Registers ausliest und ausgibt. Bleibt die Frage: Wie überrede ich den ITG dazu, mir die Daten zu liefern? Oder sollte ich eher Watterott dazu überreden, mir nen neuen Sensor zu liefern? ;-) MfG, Robert Sche*