Битовы операции с pins

Yarockiisergei
Offline
Зарегистрирован: 17.01.2015

Доброго дня. Ребята подскажите.

Как с двух контактов pins например 1 и 2 получить число учитывая что два контакта это битовая маска?

Т.е. если на Pin1 высокий уровень это 1 и  на Pin2 высокий уровень это 1 и того битовая маска 11 что равняется числу 4.

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

вы же сами и ответили :)

N = digitalRead(Pin2) * 2 + digitalRead(Pin1) - это самое простое, через регистры МК будет проще, но сложнее :)

....вот только "11" = B11 = 0x03 = 3              "100" = B100 = 0x04 = 4

....здесь "битовая маска" - не при чём, будете считывать пины посредством 

http://arduino.ru/Tutorial/Upravlenie_portami_cherez_registry

- маска будет нужна ( и сдвиги )