PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Byte abzählen



!*sascha*!
10.03.2009, 20:24
Hallo,


ich habe an meinen Atmega644 mehrere PCF8574 angeschlossen und benutze diese als schaltEingänge! Jetzt habe ich das Problem, dass ich jeden Port einzelnt erkennen muss..

also z.b. alle ports offen bis auf der letzte // Byte = '11111110'

Die 0 ist der geschlossene Port.

Kann ich in Basom das 8. Bit in einen Byte abfragen? 1 oder 0

Es kann auch vorkommen das mehrere Port geschlossen werden.

Mfg
Sascha

Yossarian
10.03.2009, 20:30
Hallo
Einfach die uninteressanten Bits mit einer UND Verküpfung ausblenden.

Mit freundlichen Grüßen
Benno

for_ro
10.03.2009, 20:42
Oder direkt PINX.Y abfragen, wobei X der Buchstabe und Y ein Pin von 0-7 ist.

Gruß

Rolf

!*sascha*!
10.03.2009, 22:01
Danke...



Aa = &B01000000 And &B01000000

Wenn Aa = 0 Offen != 0 geschlossen danke so geht es...

Ach und so weit ich weiß, kann man beim PCF8574 nur alle Port auf einmal auslesen!

Mfg
Sascha

Tido
10.03.2009, 22:13
Hi,

ja, du kannst den PCF8574 nur komplett auslesen. Du kannst dann aber das Byte bitweise überprüfen mit

if PCF.1=0 then ...

wobei PCF das ausgelesene Byte ist.