I²C Übungsaufgaben

URL: ../..dic/bussysteme/uebung_i2c.html

I²C Übungsaufgaben

Aufgabe ADXL345 link symbol

In dieser Übung wird der Beschleunigungssensor ADXL345 von Analog Devices angesteuert. Die Angaben stammen aus dem entsprechenden Datenblatt .

Die 7-Bit-Adresse des Bausteins ist für diese Übung mit 001 1101 (0x1D) gegeben.

Register link symbol

Der Baustein verfügt über mehrere Register mit einer Breite von jeweils einem Byte.

Registerübersicht
Registerübersicht (Quelle: Datenblatt ADXL345, Lizenz © Analog Devices)

Die folgende Abbildung zeigt vier typische Übertragungsarten:

  • Schreiben eines Bytes in ein Register
  • Schreiben mehrerer Bytes in aufeinanderfolgende Register
  • Lesen eines Bytes aus einem Register
  • Lesen mehrerer Bytes aus mehreren Registern
Lesen und Schreiben einzelner sowie mehrerer Bytes
Lesen und Schreiben einzelner sowie mehrerer Bytes (Quelle: Datenblatt ADXL345, Lizenz © Analog Devices)

Hinweise zur Abbildung:

  1. Das dargestellte START ist entweder ein Repeated START oder ein STOP mit anschließendem START
  2. Der grau schattierte Bereich markiert die Phasen, in denen die jeweilige Komponente den Buszustand überwacht

Beispiele link symbol

Schreiben des Wertes 0x02 in das Register OFSX (0x1E):

Schreibe 0x02 auf das Register 0x1E

Lesen der Register THRES_ACT und THRES_INACT (0x24 und 0x25):

Lesen der Register 0x24 und 0x25

Aufgabenstellung link symbol

Skizziere die folgenden Übertragungen am I²C-Bus:

  1. Schreiben des Registers DUR mit dem Wert 0x05
  2. Schreiben der Register OFSX, OFSY, OFSZ mit den Werten [0x17, 0x2A, 0x04] (mit nur einem Zugriff)
  3. Lesen des Registers ACT_TAP_STATUS, bei angenommenem Inhalt 0x10
  4. Lesen der Register DATAX0 bis DATAY1, bei angenommenem Inhalt [0x08, 0xE3, 0x01, 0xA7] (mit nur einem Zugriff)