Forum: Mikrocontroller und Digitale Elektronik PCF8574/5 push pull


von menke (Gast)


Lesenswert?

Liebe Gemeinde,

ich möchte an einem PCF8575 sowohl Taster als auch LEDs betreiben. Da 
gibt es jetzt Varianten die Push-pull-Ausgänge haben und ergo LEDs 
direkt ansteuern können. Das ist schön, spart es mir doch die 
Widerstände. Hänge ich aber einen Taster gegen GND an einen solchen Pin 
macht das doch einen Kurzschluss wenn ich eine 1 schreibe? Wie teile ich 
denn dem PCF mit, dass es sich bei einem Pin um einen Eingang oder 
Ausgang handelt? Ich möchte halt mit so wenig wie möglich Bauelementen 
auskommen...

MfG

von Frank K. (fchk)


Lesenswert?

Du suchst also einen MCP23017. Der hat 22 Register, davon für jeden Port 
ein Datenrichtungsregister, kann Interrupts bei Pegelwechsel an Pins 
auslösen und noch einiges mehr. Vorwiderstände für die LEDs brauchst Du 
aber trotzdem.

Es gibt auch spezielle LED-Treiberbausteine mit Konstantstromquellen, 
bei denen Du den Strom über einen einzigen Widerstand einstellen kannst. 
Das sind aber nur Ausgänge, keine Eingänge. Beispiel: TLC594x.

fchk

von Oliver R. (orb)


Lesenswert?

menke schrieb:

> Da gibt es jetzt Varianten die Push-pull-Ausgänge haben und ergo
> LEDs direkt ansteuern können. Das ist schön, spart es mir doch die
> Widerstände.

Und was hält den Strom unter 25mA wenn Du die LEDs ohne Vorwiderstand 
betreibst?

Die Verwendung als Input ist übrigens unter Punkt 7.3 im Datenblatt 
beschrieben.

: Bearbeitet durch User
von menke (Gast)


Lesenswert?

Hallo Frank,

den 23017 hatte ich schon im Auge aber nach Studium des Datenblattes 
habe ich aufgegeben, einfach viel zu kompliziert zu programmieren, 
ehrlich, und ich code viel. Aber den pcf8575 gubt es mit push-pull oder 
open drain. Anscheinend muss ich halt entweder Widerstände vor die 
Taster oder die LEDs machen. Aber was ist die einfachste Beschaltung?

menke

von Falk B. (falk)


Lesenswert?

http://www.mikrocontroller.net/articles/Port-Expander_PCF8574

@ menke (Gast)

>ehrlich, und ich code viel. Aber den pcf8575 gubt es mit push-pull oder
>open drain.

Zeig mal das Datenblatt.

> Anscheinend muss ich halt entweder Widerstände vor die
>Taster oder die LEDs machen.

Dann tu das.

von Frank K. (fchk)


Lesenswert?

menke schrieb:
> Hallo Frank,
>
> den 23017 hatte ich schon im Auge aber nach Studium des Datenblattes
> habe ich aufgegeben, einfach viel zu kompliziert zu programmieren,
> ehrlich, und ich code viel.

Anscheinend nicht genug, dass Dich das schon überfordert. Das ist doch 
noch eher einfach.

> Aber den pcf8575 gubt es mit push-pull oder
> open drain.
nein, dieser Typ ist nur open drain. Vielleicht meinst Du ja auch den 
PCA9555. Der hat aber auch mehr als nur zwei Register, wenn auch nicht 
so viele Möglichkeiten wie der MCP23017. Vielleicht ist das eher was für 
Dein Niveau.

 Anscheinend muss ich halt entweder Widerstände vor die
> Taster oder die LEDs machen. Aber was ist die einfachste Beschaltung?

Solange Du keinen Chip mit Konstantstromquelle nimmst, brauchst Du immer 
Strombegrenzungswiderstände für die LEDs. Und die eingebauten Pullups 
sind sehr schwach, extra Widerstände für die Taster wären auch nicht 
schlecht, um das ganze unempfindlicher gegenüber Störungen zu machen. So 
4k7 oder 10k sind angebracht.

fchk

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.