Arduino 使用两个按钮运行两个LED
我不熟悉Arduino编程。我试着用两个按钮来点亮两个LED,就像这样。按下按钮1打开灯1关闭灯2,按钮2打开灯1和2。类似于速度选择的指示器 这是我目前掌握的代码Arduino 使用两个按钮运行两个LED,arduino,led,Arduino,Led,我不熟悉Arduino编程。我试着用两个按钮来点亮两个LED,就像这样。按下按钮1打开灯1关闭灯2,按钮2打开灯1和2。类似于速度选择的指示器 这是我目前掌握的代码 const int BUTTON1 = 2; const int BUTTON2 = 3; const int LED1 = 9; const int LED2 = 10; int BUTTONstate1 = 0; int BUTTONstate2 = 0; void setup() { pinMode(BUTTON1, IN
const int BUTTON1 = 2;
const int BUTTON2 = 3;
const int LED1 = 9;
const int LED2 = 10;
int BUTTONstate1 = 0;
int BUTTONstate2 = 0;
void setup()
{
pinMode(BUTTON1, INPUT);
pinMode(BUTTON2, INPUT);
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
}
void loop(1)
{
BUTTONstate1 = digitalRead(BUTTON1);
if (BUTTONstate1 == HIGH);
digitalWrite(LED1, HIGH);
digitalwrite(LED2, low);
}
void loop(2)
{
BUTTONstate2 = digitalRead(BUTTON2);
if (BUTTONstate2 == HIGH)
digitalWrite(LED1, HIGH);
digitalwrite(led2, HIGH);
}
当我运行代码时,我得到错误19:10错误:变量或字段“loop”声明为void。它是无效循环(1)和无效循环(2)之后的行。无效循环(1)和无效循环(2)
没有意义
您只能实现void loop()
,并在该函数中处理两个按钮
Arduino将在无限循环中反复调用loop()
。拥有两个循环函数没有意义,会导致编译器错误
如果您想在两个不同的函数中使用该功能,请使用不同的名称实现它们,并在loop()
void loop(1)
和void loop(2)
中调用这两个函数
您只能实现void loop()
,并在该函数中处理两个按钮
Arduino将在无限循环中反复调用loop()
。拥有两个循环函数没有意义,会导致编译器错误
如果您想在两个不同的函数中使用该功能,请使用不同的名称实现它们,并在
loop()
中调用这两个函数。我从未见过有人同时使用两个空循环。您只需使用一个void loop()
。以下是一个例子:
void loop() {
BUTTONstate1 = digitalRead(BUTTON1);
BUTTONstate2 = digitalRead(BUTTON2);
if (BUTTONstate1 == HIGH) {
digitalWrite(LED1, HIGH);
digitalwrite(LED2, LOW);
}
if (BUTTONstate2 == HIGH) {
digitalWrite(LED1, HIGH);
digitalwrite(LED2, HIGH);
}
}
您在这里还犯了另一个错误。永远不要打印
代码>在if()
之后我从未见过有人同时使用两个空循环。您只需使用一个void loop()
。以下是一个例子:
void loop() {
BUTTONstate1 = digitalRead(BUTTON1);
BUTTONstate2 = digitalRead(BUTTON2);
if (BUTTONstate1 == HIGH) {
digitalWrite(LED1, HIGH);
digitalwrite(LED2, LOW);
}
if (BUTTONstate2 == HIGH) {
digitalWrite(LED1, HIGH);
digitalwrite(LED2, HIGH);
}
}
您在这里还犯了另一个错误。永远不要打印代码>在if()之后
请正确标记您的问题!我不知道这是什么意思,你是如何添加标记“python”的,这会导致混乱。请将其移除并添加标签“arduino”、“led”等。点击“编辑”按钮。我想我修正了它。欢迎来到StackOverflow。如果它是固定的,您可以提供关于它是如何固定的答案。了解这不是一个解决方案库,而是。。。不断研究和交流准确信息。含糊不清的陈述很难再现。。。这个解决方案必须已经在我们的数据库中。。。谷歌也是一个解决方案。现在认为这是一个编程错误。请报告详细错误。请正确标记您的问题!我不知道这是什么意思,你是如何添加标记“python”的,这会导致混乱。请将其移除并添加标签“arduino”、“led”等。点击“编辑”按钮。我想我修正了它。欢迎来到StackOverflow。如果它是固定的,您可以提供关于它是如何固定的答案。了解这不是一个解决方案库,而是。。。不断研究和交流准确信息。含糊不清的陈述很难再现。。。这个解决方案必须已经在我们的数据库中。。。谷歌也是一个解决方案。现在认为这是一个编程错误。请报告详细的错误。我知道我让它变得比我需要的更复杂。谢谢,我知道我把事情弄得比我需要的更复杂了。谢谢,谢谢。这就成功了,解释了很多。这个概念可以扩展到三个或四个led/按钮吗?是的,您可以扩展更多。但是使用switch-case而不是if-else可以使您的代码更容易理解。谢谢。这就成功了,解释了很多。这个概念可以扩展到三个或四个led/按钮吗?是的,您可以扩展更多。但是使用switch-case而不是if-else可以使代码更容易理解。