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.
>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.
@ 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
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
Ich benötige alle Eingänge als Output, also kein Mischbetrieb innerhalb des Ports. Es soll ein Display angesteuert werden ...
Nimm doch einen 74hc595, wsenn Du nur Ausgänge brauchst. Ist um den Faktor 10 billiger.
> Nimm doch einen 74hc595, wsenn Du nur Ausgänge brauchst. > Ist um den Faktor 10 billiger. Seit wann ist ein '595 ein I²C-Device?
@ Rufus t. Firefly (rufus) (Moderator) >> Nimm doch einen 74hc595, wsenn Du nur Ausgänge brauchst. >> Ist um den Faktor 10 billiger. >Seit wann ist ein '595 ein I²C-Device? Noch nie. Erfüllt hier aber den selben Zweck, nur billiger ;-) MFG Falk
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.