Aufgabe ADXL345
In dieser Übung wird der Beschleunigungssensor ADXL345 von Analog Devices angesteuert. Die angaben stammen aus dem entsprechenden Datenblatt .
Die 7-Bit Adresse des Bausteins wird für diese Übung mit 001 1101 (0x1D) angenommen.
Register
Der Baustein verfügt intern über mehrere Register. Jeder Register ist ein Byte groß.
Registerübersicht (Quelle: Datenblatt ADXL345, Lizenz ©Analog Devices)
In der folgenden Abbildung sieht man insgesamt vier Übertragungsarten:
- Schreiben eines Bytes in ein Register
- Schreiben mehrerer Byte in mehrere Register
- Lesen eines Bytes aus einem Register
- Lesen mehrere Bytes aus mehreren Registern
Lesen und Schreiben einzelner sowie mehrer Bytes (Quelle: Datenblatt ADXL345, Lizenz ©Analog Devices)
Hinweise zum Bild:
- Dieses START ist entweder ein repeated START oder ein STOP mit anschließendem START
- Der graue schattierte Bereich markiert die Phasen, in denen die entsprechende Komponente den Buszustand beobachtet
Beispiel
Beschreiben des Registers OFSX
(0x1E) mit dem Wert 0x02:
Lesen der Register THRES_ACT
und THRES_INACT
(0x24 und 0x25)
Aufgabenstellung
Skizziere folgende Übertragungen am I²C Bus:
- Beschreiben des Registers
DUR
mit dem Wert 0x05 - Bechreiben der Registers
OFSX
,OFSY
,OFSZ
mit den Werten [0x17, 0x2A, 0x04] (mit nur einem Zugriff) - Lesen des Registers
ACT_TAP_STATUS
(angenommener Inhalt ist 0x10) - Lesen der Register
DATAX0
bisDATAY1
(angenommener Inhalt ist [0x08, 0xE3, 0x01, 0xA7], mit nur einem Zugriff)