arduino引脚的默认状态是什么



我有两个输入引脚,希望根据引脚的状态打印一个特定的数字(HIGH/LOW(。

我为此编写了以下程序,但它只在串行端口中打印错误。

以下是代码

int L1 = 2;
int L2 = 3;
void setup() {
// put your setup code here, to run once:
pinMode(L1, INPUT);
pinMode(L2, INPUT);
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
if (L1 == HIGH && L2 == HIGH){
Serial.println(10);
}
else if (L1 == HIGH && L2 == LOW) {
Serial.println(20);
}
else if (L1 == LOW && L2 == LOW) {
Serial.println(30);
}
else if (L1 == LOW && L2 == HIGH) {
Serial.println(40);
}
else {
Serial.println("error");
}
delay(2000);
}

您不应该使用L2==LOW/HIGH,L2总是等于3,正如您在开头定义的那样。

相反,您应该使用digitalRead(L2(

例如:

void loop() {

if (digitalRead(L1)==HIGH && digitalRead(L2)==HIGH) {
Serial.println(10);
}

else if (digitalRead(L1)==HIGH && digitalRead(L2)==LOW) {
Serial.println(20);
}

else if (digitalRead(L1)==LOW && digitalRead(L2)==LOW) {
Serial.println(30);
}

else if (digitalRead(L1)==LOW && digitalRead(L2)==HIGH) {
Serial.println(40);
}

else {
Serial.println("error");
}

delay(2000);
}

相关内容

  • 没有找到相关文章

最新更新