Bitmasken für den Eingang
Wie kann man gleichzeitig mehrere Taster auf ihren Zustand hin überprüfen?
|
Beschreibung | Umsetzung 1 | Alternative Umsetzung 2 | Alternative Umsetzung 3 |
---|---|---|---|
Bedingung wahr, wenn PB0==0 und gleichzeitig PB1==0 | akku = PINB; if( (akku & 0b00000011) == 0 ) { Befehle } |
akku = PINB; if( (akku & ( (1<<0) | (1<<1) )) == 0 ) { Befehle } |
akku = PINB; if( (akku & ( (1<<PB0) | (1<<PB1) )) == 0 ) { Befehle } |
Bedingung wahr, wenn PB0==1 und gleichzeitig PB1==0 | akku = PINB; if( (akku & 0b00000011) == 1 ){ Befehle } |
akku = PINB; if( (akku & ( (1<<0) | (1<<1) )) == (1<<0) ) { Befehle } |
akku = PINB; if( (akku & ( (1<<PB0) | (1<<PB1) )) == (1<<PB0) ) { Befehle } |
Bedingung wahr, wenn PB0==0 und gleichzeitig PB1==1 | akku = PINB; if( (akku & 0b00000011) == 2 ){ Befehle } |
akku = PINB; if( (akku & ( (1<<0) | (1<<1) )) == (1<<1) ) { Befehle } |
akku = PINB; if( (akku & ( (1<<PB0) | (1<<PB1) )) == (1<<PB1) ) { Befehle } |
Bedingung wahr, wenn PB0==1 und gleichzeitig PB1==1 | akku = PINB; if( (akku & 0b00000011) == 3 ){ Befehle } |
akku = PINB; if( (akku & ( (1<<0) | (1<<1) )) == ( (1<<1) | (1<<0) ) ) { Befehle } |
akku = PINB; if( (akku & ( (1<<PB0) | (1<<PB1) )) == ( (1<<PB1) | (1<<PB0) ) ) { Befehle } |
Tabelle 0-1: Berücksichtigung des Zustands mehrerer Taster gleichzeitig.