Arduino digitalRead () всегда возвращает LOW - PullRequest
1 голос
/ 07 ноября 2011

Я использую Arduino, на который садятся на хлеб.Внутри моих функций прерывания я хочу прочитать значение одного из моих выводов GPIO, а затем увеличить счетчик, если он низкий.Я делаю это, используя следующее.

displayValues[4]++;
hasButtonPushed = true;

if(digitalRead(BUTTON_A) == LOW) {
    displayValues[5]++;
}
if(digitalRead(BUTTON_B) == LOW) {
    displayValues[6]++;
}
if(digitalRead(BUTTON_C) == LOW) {
    displayValues[7]++;
}

Однако, даже если строка ввода напрямую связана с высоким, код возвращается низким.Я не верю, что мой Атмел поврежден.Есть идеи?

1 Ответ

0 голосов
/ 25 февраля 2012

Проблема была связана с библиотекой arduino, из-за которой цифровое чтение не работало. Более новые версии Arduino исправили эту проблему, но я обошел ее, переписав все в родной AVR.

...