Bits wackeln mit PCF8574A

Gast #993311
Lesenswert?

Ich möchte bei einem PCF8574A jeweils nur ein bit am Ausgang (P0-7) 
ändern.

Muss man dann erst einmal den Zustand des Ports einlesen, dann das bit 
ändern und dann den neuen Portwert zurückschreiben ?

Ich habe kein Masking gefunden, wo man nur ein einzelnes Bit verändern 
kann.
Gast #993313
Lesenswert?

>Muss man dann erst einmal den Zustand des Ports einlesen, dann das bit
>ändern und dann den neuen Portwert zurückschreiben ?

Nö, musst du nicht. Du kannst dir in einem Byte im uC merken
was dort steht. Dann änderst du dieses Byte und schickst das
zum PCF8574A.
#993314
Lesenswert?

@ Gast (Gast)

>Ich möchte bei einem PCF8574A jeweils nur ein bit am Ausgang (P0-7)
>ändern.

Wie schön.

>Muss man dann erst einmal den Zustand des Ports einlesen, dann das bit
>ändern und dann den neuen Portwert zurückschreiben ?

Nur dann, wenn du keine Kopie im uC hast.

>Ich habe kein Masking gefunden, wo man nur ein einzelnes Bit verändern
>kann.

Gibt es auch nicht. Macht man per Bitmanipulation.

MFG
Falk
Gast #993320
Lesenswert?

Du must einen eigenen Buffer machen.
Darin steht deine Bitmaske für die Ausgabe und Eingänge. Soll ein Bit 
geändert werden, wird der Buffer geändert und ausgegeben.
Zurücklesen geht nicht!!
Wenn du einen Pin als Eingang hast kann es sein, daß du eine 1
liest und dann einen Ausgang mit High machst. Wenn im Buffer
0 steht pasiert nichts.

Gruß hans

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren