Sie sind auf Seite 1von 10

Andreas Knapic  I²C BUS  Hrd ‐ Lab 

1. AUFGABENSTELLUNG ............................................................................................ 2

2. SCHALTUNGSAUFBAU: PCF8574 ALS 8BIT AUSGANG................................................ 2

2.1 Schaltungsaufbau und Adressierung ....................................................................................................... 2

2.2 Oszillogramm des I²C Bus......................................................................................................................... 2

3. SCHALTUNGSAUFBAU: PCF8574 ALS 8BIT EINGANG................................................. 5

3.1 Schaltungsaufbau und Adressierung ....................................................................................................... 5

3.2 Oszillogramm des I²C Bus......................................................................................................................... 5

3.3 Interruptfunktion ..................................................................................................................................... 6

4. KOMMENTAR........................................................................................................ 9

-1-
Andreas Knapic  I²C BUS  Hrd ‐ Lab 

1.  Aufgabenstellung 
 Der I/O Expander PCF8574 soll mittels I²C Bus an ein Mikrocontroller Testboard angekoppelt und 
adressiert werden. 
 
 Die Kommunikation auf dem BUS soll oszillographiert und ausgewertet/beschrieben werden 
 
 Die Interruptfunktion des Ausgangs soll untersucht werden 

2.  Schaltungsaufbau: PCF8574 als 8Bit Ausgang 
2.1  Schaltungsaufbau und Adressierung 

Adressierung: 
Erfolgt durch Beschaltung mit A0‐A2. 
A...Vcc = H, 1 
A...GND = L, 0 
 
Durch das 8.Bit in der Adresse kann 
entschieden werden, ob man liest  
(Eingang) oder schreibt (Ausgang). 
 
Adresse des PCF8574: 0x4E 
 
Möchte man nun Daten an den 
PCF8574 senden, so muss im 
Adressierungsschalter die Adresse des 
I/O Expanders einstellen. Nach dem 
ausführen einer Startbedingung wird 
das Adressbyte ausgesendet, reagiert 
der PCF8574 mit einem Acknowledge 
(die Adresse passt), so wird das Byte 
ausgesendet, welches im 
Datenschalter eingestellt wurde. Eine 
Stoppbedingung folgt. 

  Schaltung PFC8574 als Ausgang 

2.2  Oszillogramm des I²C Bus 

Auszug aus Datenblatt zeigt, wie der PCF8574 angesteuert wird. 
 
 
 
 

-2-
Andreas Knapic  I²C BUS  Hrd ‐ Lab 

 
 
 
 
 
 
Buskommunikation: 
 

 
Oszillogramm des I²C Bus während einer erfolgreichen Datenübertragung 
 
 
 
 
 
 
 
 
 
 
 
 
 

-3-
Andreas Knapic  I²C BUS  Hrd ‐ Lab 

 
Start und Stoppbedingung im Detail 
 
 
 
 

Der Master sendet ein Adressbyte, 
keines der Busgeräte sendet ein 
erfolgreiches ACK (erfolgreich = ACK 
Low). Der Master sendet keine Daten 
und gibt den Bus wieder frei 
(Stoppbedingung). 

 
 
    Ohne ACK wird der Bus wieder frei gegeben 

-4-
Andreas Knapic  I²C BUS  Hrd ‐ Lab 

3.  Schaltungsaufbau: PCF8574 als 8Bit Eingang 
3.1  Schaltungsaufbau und Adressierung 

Der bereits vorhandene 
I/O Expander kann 
weiterhin verwendet 
werden 

Den 2. Expander einfach an den 
Bus ankoppeln, adressieren und 
mit Schaltern versehen, um die 
Pegel der Ports zu ändern. 
 
Adresse des PFC8574: 0x41 
 
Um den Port auszulesen, bedarf 
es nur einer Startbedingung + 
Adressbyte (0x41). Der Slave wird 
nun seine Daten and den Master 
senden. 

3.2  Oszillogramm des I²C Bus 

Wie üblich Sendet der Slave ein ACK bei erfolgreicher Adressierung durch den Master. Er sendet nun seine 
Daten, nach dem 8. Datenbit sendet der Slave ACK = 1. 
 
 
 
 
 

-5-
Andreas Knapic  I²C BUS  Hrd ‐ Lab 

Buskommunikation: 
 

Oszillogramm des I²C Bus während einer erfolgreichen Datenübertragung 
 

3.3  Interruptfunktion 

Noch muss der Master selbstständig den I/O Expander auslesen. Ob das gerade nötig ist (besser gesagt, ob sich 
die Pegel an den Ports verändert haben), weis der Master nicht. 
Abhilfe schafft der Interrupt, durch den der Slave eine art Masterfunktion bekommt. Der Slave kann mittels 
Interrupt, ausgelöst durch Pegeländerung, dem Master den Befehl geben, ihn auszulesen.  
 
 
 

I²C Bus mit mehreren Teilnehmern und zusätzlicher Interrupt Leitung (Aktiv Low ‐ Wired AND) 
 

-6-
Andreas Knapic  I²C BUS  Hrd ‐ Lab 

 
 
 
I/O Expander als Ausgänge müssen natürlich nicht an die Interrupt Leitung gekoppelt werden! 
Der Rest der Schaltung bleibt unbeeinflusst. 

-7-
Andreas Knapic  I²C BUS  Hrd ‐ Lab 

 
Auszug aus Datenblatt, Impulsdiagramm bei Interrupt 
 
Buskommunikation: 
 

-8-
Andreas Knapic  I²C BUS  Hrd ‐ Lab 

4.  Kommentar 
 
Die Laborübung zeigt, wie einfach I²C in Wirklichkeit ist. Auch wer vorher theoretisch gut über I²C bescheid 
wusste, tat sich anfangs nicht gerade leicht. 
 
Nachdem jedoch die ersten Bytes erfolgreich gesendet wurden und dies am Oszilloskop beobachtet werden 
konnte, waren die nachfolgenden Übungen recht einfach zu bewältigen. Mir persönlich hat die praktische 
Anwendung des I²C Bus jedenfalls sehr geholfen und würde mir derartige Laborübungen auch  für andere 
Bussysteme wünschen. 
 
 
 
 
 
 
 
 
 
Unterschrift:            Datum: 
 
 
 
 
___________________________________     ___________________________________ 
 
 
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

-9-
Andreas Knapic  I²C BUS  Hrd ‐ Lab 

 
 
 
 

- 10 -