Das Datenblatt für den NXP PCA8574/74A enthält folgende Zeile zur Adressierung (S.6):
Wenn AD2, AD1 und AD0 auf VDD oder VSS gehalten werden, wird dieselbe Adresse wie PCF8574 oder PCF8574A angelegt.
Ich fürchte, ich verstehe nicht, was hier gemeint ist. Kann bitte jemand aufklären?
Auch während Adressbereiche angegeben sind als (abhängig von den Eingängen AD0..AD2)
PCF8574: 0x20 - 0x27
PCF8574A: 0x38 - 0x3F
Sowohl der Text als auch Abb. 7 deuten darauf hin, dass die Geräteadresse zwischen 0x01 und 0x7F frei gewählt werden kann (obwohl ich nicht sehe, wie dies geschehen würde).
Oder lese ich das falsch?
Das Datenblatt zeigt deutlich, dass es genau dort in Abschnitt 2 Punkt 7 "8 programmierbare Slave-Adressen mit 3 Adresspins" gibt. Mit anderen Worten, es gibt eine 7-Bit-Adresse, 4 dieser Bits sind für alle Chips gleich ( intern fest codiert ), und 3 davon (insbesondere Bits 0, 1 und 2) sind programmierbar, indem die Pin-Werte entweder auf Vss (GND) oder Vdd (dh 5 V) gesetzt (dh elektrisch verbunden ) werden. Wofür die oberen 4 Bits intern fest codiert sind, hängt vom verwendeten Chip ab - Tabelle 4 zeigt an, dass diese Bits A[6:3] = 0100 für den PCA8574 sind, und Tabelle 5 zeigt an, dass diese Bits A[6:3] sind. = 0111 für PCA8574A.
Um es deutlich zu machen, für den PCA8574 ist die niedrigste mögliche Adresse 010 0000 == 0x20 und die höchstmögliche Adresse 010 0111 == 0x27. Ebenso ist für den PCA8574A die niedrigstmögliche Adresse 011 1000 == 0x38 und die höchstmögliche Adresse 011 1111 == 0x3F.
stevenvh
Vicatcu
Vicatcu
Wouter van Ooijen