Forum: Mikrocontroller und Digitale Elektronik quasi bidirektional ??


von Cabal2002 (Gast)


Lesenswert?

Der PCF 8574 ist ein quasi bidirektionaler IO Expander mit I2C 
Schnittstelle. Mit der Begrifflichkeit hab ich ein kleines Problem. Was 
bedeutet quasi bidirektional??

Kann ich ich den kompletten Chip entweder als Input oder Output 
benutzen.

Oder einen Port entweder als I oder als O. Soll heissen z.B. die ersten 
4 Pins als Input die letzen 4 als Output?

Beim Lallus (www.lallus.de) hat man den IC nur als I oder O benutzt der 
zweite Fall wäre mir aber wesentlich lieber.

Gruss Cabal

von Markus (Gast)


Lesenswert?

Man kann I und O schon mischen. Quasi heißt in dem Fall, das es kein 
explizites Datenrichtungsregister gibt. Möchte man Ausgänge schalten 
schickt man ein komplettes Byte an den Chip, möchte man Eingänge haben 
ließt man einfach. Dabei ist nur zu beachten, das die Pins, die als 
Eingänge verwendet werden sollen vorher auf 1 gesetzt werden.
Ich hab z.B. mal eine Schaltung mit einem PCF8574 aufgebaut, bei der ich 
4 Taster und 4 LED's angeschlossen hab. Wenn ich die LED's ausgebe 
schiebe ich für die Pins, an denen die Taster sind, einfach jeweils eine 
1 ins Register, wenn ich lese ignoriere ich die LED Pins
Es gibt aber noch einen besseren IO-Expander, den PCA9555. Den gibts 
leider nur in SMD, der hat aber 16 IO und ein paar Register. Bei dem 
kann man glaub ich richtig selektiv Programmieren, welche Bits Ein- und 
welche Ausgänge sein sollen. Ich verwende 2 davon auf dem AppBoard für 
das Mega8 Mini Modul. Einen für die Taster und LED's, und einen für 
einen Displayport im 8 Bit Modus. Dann hab ich noch 12 IO frei, die auf 
einem Sockel verfügbar sind.

Gruß
Markus

von Cabal2002 (Gast)


Lesenswert?

Spitze

genau was ich vermutet habe ;-) Der PCF 8574 ist für meinen 
Anwendungsfall ausreichend, die Features des 9555 brauch ich nicht. 
Eigentlich hat der 8574 auch schon zuviele Ports.

Wie lang darf/kann ein I2C Bus eigentlich sein?

Gruss Cabal

von Markus (Gast)


Lesenswert?

Die Spec sieht ursprünglich glaub ich 2m vor. Man kommt bei geringen 
Taktraten und vernünftigen Leitungen und Treibern aber durchaus auch auf 
5-10m. Ich hab auch schonmal was von Repeatern gehört. Weiß aber nicht, 
was ich davon halten soll.
Aber Faustregel ist: je kürzer, umso besser.

Gruß
Markus

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.