Arduino digitalRead()始终返回LOW

时间:2011-11-07 17:38:37

标签: c embedded arduino

我正在使用面包登上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]++;
}

但是,即使输入线直接连接到高电平,代码也会返回低电平。我不相信我的Atmel受损了。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

问题是arduino库导致数字读取不起作用的问题。较新的arduino版本解决了这个问题,但我通过将所有内容重写为原生AVR来解决这个问题。