Официальный сайт компании Arduino по адресу arduino.cc
PINx и digitalRead возвращает разный результат
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Пнд, 01/04/2019 - 00:29
Serial.println("HIGH: "); PORTC |= _BV(PC7); Serial.println(digitalRead(13)); //return 1 Serial.println(String(PINC & _BV(PC7))); //return 128
выполняя чтения порта PC7 (aka Pin 13) у которого статус HIGH я ожидаю увидеть 1 а возвращает почемуто 128. почему?
так и должно быть. 128 это единица в 7 разряде.
выполняя чтения порта PC7 (aka Pin 13) у которого статус HIGH я ожидаю увидеть 1 а возвращает почемуто 128. почему?
Вы просто чтение выполняете неправильно. Нужный бит Вы выделили, а вправо сдвинуть забыли.
Попробуйте вот так, если ничего не напутал:
ну а зачем вы результат еще и в Стринг засунули - этому уже вообще обьясненья нет.
для подстраховки, а то принт тут каприщзный.. спасибо