I2C
Der I2C-Bus (Inter Integrated Circuit) ist ein einfacher Zweidraht-Bus, der für die Kommunikation zwischen ICs innerhalb eines größeren Systems verwendet wird. Insbesondere bietet er sich an zur Kommunikation zwischen Microcontrollern und Peripheriegeräten.
Das Ethersex-System kann sowohl als Master als auch als Slave in einem I2C-Bus arbeiten.
In der Atmel-Dokumentation wird I2C als TWI (Two Wire Interface) geführt.
Inhaltsverzeichnis
Master Mode
Im Master-Mode kann das Ethersex-System auf angeschlossene I2C-Slaves zugreifen. Unterstützt werden im Moment:
- 24cXX EEPROMs (Als Storage Backend für das Virtuelle Dateisystem)
- LM75 Temperatursensoren
- PCA9531 8 bit LED Dimmer
- PCF8574x Port Extension
Slave Mode
- Kann per I2C auf die ECMD Schnittstelle zugegriffen werden.
Anschluss
Die Leitungen SCL (Clock) und SDA (Data) liegen als "Alternate Function" auf I/O Leitungen der Controller. Beim ATmega32 sind dies PC0 (SCL) und PC1 (SDA).
Etherrape
Beim Etherrape ist der I2C-Bus auf einem separaten Steckverbinder herausgeführt.
Pollin AVR-NET-IO
Beim Pollin AVR-NET-IO liegen die Leitungen des Ports C auf J3, dem 25poligen SUB-D Steckverbinder. Dort lassen sich auch Versorgungsspannung und Masse für die angeschlossenen Slaves abgreifen:
Pin | Funktion |
---|---|
2 | PC0 (SCL) |
3 | PC1 (SDA) |
15 | 5V |
18 | GND |
Konfiguration
Die Leitungen sind fest vorgegeben, daher muss keine Konfiguration des Pinnings erfolgen.
Die Einstellungen für den Master-Mode finden sich unter "I/O support", "I2C Master Support".