我有一个打开 LED 的按钮,但只有当我为按钮分配端口 0 和 1 时,它才有效。如果我尝试端口 2,它不起作用。因此,我只能使用两个按钮。在板上,与其他棋盘相比,0 和 1 似乎很特别。如何解决这个问题才能使用其他端口?
这是一个简单的程序,可以模拟我认为您所描述的内容。
在您的代码中,如果要在按下按钮时打开 LED:
- 您需要确保 LED 引脚设置为输出。
- 按钮引脚需要设置为输入。
示例程序:
#define LED 13
#define BUTTON 5
void setup()
{
pinMode(LED, OUTPUT);
pinMode(BUTTON, INPUT);
}
void loop()
{
if ( digitalRead(BUTTON) )
{
digitalWrite(LED, HIGH);
}
else
{
digitalWrite(LED, LOW);
}
}
关于电路,
- 您需要有一个与 LED 串联的限流电阻。
- 确保 LED 朝向正确的方向。
- 按钮需要从+5V连接到按钮引脚。
- 您需要在按钮引脚和接地之间有一个下拉电阻。