Definitionen und Funktionen zum I2C Bus.
- I2C Einfuehrung
- I2C ist ein 2 Draht Bus-System das von Philips entwickelt wurde. Dazu wird lediglich eine Datenleitung und eine Taktleitung benötigt (und natuerlich eine gemeinsame Masseleitung). Es gibt eine Reihe von ICs mit I2C Bus Schnittstelle (Digital Port Erweiterungen, A/D Wandler, EEPROMs etc.) Damit ergibt sich eine Vielzahl von Moeglichkeiten um die begrenzten IO Ressourcen des ASUROs zu erweitern. Bis zu 127 Teilnehmer sind an einem I2C Bus anschliessbar. Dazu werden lediglich 2 Port Pis des ASUROs benötigt. Bie meissten ATmel AVR Prozessoren unterstuetzen die I2C Schnittstelle per Hardware, TWI (Two Wire Interface) genannt.
- I2C am ASURO
- Die Hardware TWI (I2C) Ports sind beim ASURO leider durch den Batterie Abfrage A/D Port und dem Tastsensor A/D Port belegt. Um die I2C Schnittstelle ohne Umbau des ASUROs zu realisieren, wird der I2C BUs mit Software emuliert. Dabei werden füer den I2C Bus die Ports der ASURO Erweiterungsplatine verwendet. Dies sind ADC2 fuer die I2C Taktleitung (SCL) und ADC3 fuer die I2C Datenleitung (SDA). Leider geht dadurch die Funktion des Liniensensors verloren. Da die beiden Fototransistoren ebenfalls die Ports ADC2 und ADC3 belegen. Ausloeten braucht man die Fototransistoren zum Glueck nicht.
- I2C Anwendungen
- Ueber den I2C Bus lassen sich z.B. folgende Erweiterungen realisieren.
- Eine Digitalport Erweiterung, z.B. 8 IO Ports mit dem PCF8574
- Eine Analogport Erweiterung, z.B. 4 A/D Ports und 1 D/A Port mit dem PCF8594
- Ein LCD Modul mithilfe der Digitalporterweiterung
- Ein weiterer AVR Prozessor als I2C Slave, als universelle Porterweiterung.
- Autor
- raid_ox
- Version
- V001 - 17.02.2007 - raid_ox
Erste Implementierung
-
V002 - 10.02.2007 - m.a.r.v.i.n
Absplittung von asuro.h in eigene Header-Datei,
Doxygen Kommentare (KEINE Funktionsänderung)
Definiert in Datei i2c.h.