|
|
I2CI²C ist ein synchroner serieller Zweidraht-Bus (eine Daten- und eine Taktleitung), der für die Kommunikation zwischen ICs über kleine Distanzen geeignet ist. Entwickelt wurde er Anfang der 80er Jahre von Philips. Gesprochen "I quadrat C" steht für IIC = Inter IC Bus. Aus Lizenzgründen heißt der I²C Bus bei manchen Herstellern auch TWI, two wire interface. In einem I²C-Bus gibt es mindestens einen Master und bis zu 128 Slaves. Ein I²C-Bus mit mehreren Mastern wird als "Multi-Master-Bus" bezeichnet. Der (oder die) Master sprechen die Slaves an; ein Slave kann NIE selbstständig Daten senden. Dazu übernimmt der Master, der Daten senden oder empfangen möchte, den Bus und gibt die (7-bit- bzw. 10-bit-)Adresse des Slaves aus, mit dem er kommunizieren möchte. Nach der Adresse teilt der Master dem entsprechenden Slave mit, ob er Daten senden oder empfangen möchte. Danach werden die eigentlichen Daten (entweder vom Master oder Slave) auf den Bus gelegt. Hat der Master den Lese- oder Schreibvorgang abgeschlossen, so gibt er den Bus wieder frei. Sofern mehrere Master vorhanden sind, stellt ein Protokoll sicher, dass sich diese nicht gegenseitig stören. Die Übertragungsrate beträgt beim Standard mode bis zu 100 kbit/s, beim Fast mode bis zu 400 kbit/s und beim High-speed mode bis zu 3,4 MBit/s. Falls die Taktrate für einen Slave zu hoch ist, kann er die Clock-Leitung auf Null ziehen und die Übertragung damit verlangsamen. Dies ist auf Bit- wie auf Byte-Ebene möglich; ersteres allerdings nicht im High-speed mode. Um längere Übertragungswege zu realisieren, kann man die Taktrate fast beliebig vermindern (einige Bausteine erzeugen aber irgendwann ein Time-Out). Mit einer Taktfrequenz von nur 5 kbit/s können dann durchaus mehrere Meter überbrückt werden. Im PC wird ein dem I²C-Bus sehr ähnliches System benutzt, um z.B. die Daten eines SDRAM-Modules auszulesen. Dieser nennt sich SMBus (System Management Bus).
[bearbeiten] BausteineNeben Mikrocontrollern gibt es eine Reihe von Peripheriebausteinen, die per I²C angeschlossen werden können. Eine gute Anlaufstelle bei der Suche ist die unten angegebene Seite des "Erfinders" Philips, heute als NXP bekannt.
[bearbeiten] Galvanische Trennung
[bearbeiten] Siehe auch[bearbeiten] Weblinks
[bearbeiten] I²C-Monitor
|