Forum: Mikrocontroller und Digitale Elektronik I²C tolle Alternative


von Martin (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Leute!

Ich habe mir gerade den Baustein PCF8574 etwas näher angeschaut.
Es handelt sich um einen I²C Baustein, welcher 8 parallele I/Os hat.
Mein Frage dazu:
Wie schalte ich jetzt einen Output auf einen Input und umgekehrt? Es 
kann ja auch sein, dass ich 4 Bits als Input haben möchte und 4 Bits als 
Output.

Funktioniert das so wie beim 8051, nämlich, dass eine 1 bedeutet, dass 
der Port Output high ist und gleichzeitig Input?
Oder hängt das Ganze vom Lese- oder Schreibkommando ab.
Also, wenn gelesen wird vom I²C, dass die Ports Inputs sind usw.

Danke für eure Antwort.

Martin

von Bernhard T (Gast)


Lesenswert?

7.3 Ein quasi bidirektionaler I/O kann benutzt werden als Eingang oder 
Ausgang, ohne dafü ein Kontrollsignal für die Datenrichtung zu 
benötigen. ...
Das Ende vom Lied du setzt die Ausgänge auf High und die werden auf Low 
gezogen bei 0 oder auch nicht bei 1 High.
Der Rest ist I2C lesen -  schreiben.
Gruß Bernhard

von Simon Pasch (Gast)


Lesenswert?

Hallo Martin!

Ich benutze den PCF8574 zum Abfragen einer Matrix-Tastatur.
4Bit als Eingang, 4Bit als Ausgang.

Es ist fast so, wie du vermutet hast: Wenn du eine Leseanfrage an den 
Baustein sendest werden die Ports als Inputs verwendet, beim Schreiben 
als Output.
Was zwischen den Anfragen passiert ist ziemlich wurscht (bisher hat ers 
mir jedenfalls nicht übel genommen).

gruß

Simon

von Martin (Gast)


Lesenswert?

Danke!
Tolle Sache dieser Baustein. Bis jetzt habe ich nur das Schieberegister 
74HC164 gekannt, welches nur als Ausgang benutzt werden kann.
Der zweite Nachteil besteht darin, dass, wenn man ein Byte 
hineinschiebt, die einzelnen Bits während des Hineinschiebens schon 
angezeigt werden. Das heißt, Bit 7 durchläuft alle Bits, bis es endlich 
an seinem Platz ist. Also während des Hineinschiebens wird es an den 
entsprechenden Pins angezeigt.

Tschüss
Martin

von Matthias (Gast)


Lesenswert?

Hi

deswegen nimmt man für sowas auch nicht 164 sondern 595. Der hat 
zusätzliche Output-Latches.

Die Pins des PCF8574 verhalten sich ansonsten wie die eines 8051. D.h. 
sie haben keinen aktiven Hightreiber sondern nur einen Pull-Up drin. Den 
kann man extern runterziehen. Gelesen wird dann der Pegel direkt am Pin.

Matthias

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.