主要按钮文章:在 Arduino 中使用按钮
让我们谈谈按钮、接线以及如何在 Arduino 中实现此电路元件的代码。当您按下按钮时,按钮会连接电路中的两个点。这意味着当您按下并按住按钮时,电路的逻辑状态会发生变化。切换按钮改为保持状态,而无需按住按钮。这意味着每次按下按钮时电路的逻辑状态都会发生变化。
接线图此示例演示了如何使用带有内部上拉电阻的Arduino Nano按钮。这意味着当按钮打开时,我们将有一个默认的HIGH值和LOW值。
带按钮的 Arduino Nano 接线注意:按钮引脚可以连接到 Arduino Nano D4 或任何其他数字输入引脚。
按钮的 Arduino 代码我们定义了一个结构体(称为button )来表示按钮的状态。串行监视器将实时输出该状态。
#define BUTTON_PIN 4 struct button { byte pressed = 0;}; button button; void setup(){ pinMode(BUTTON_PIN, INPUT_PULLUP); Serial.begin(115200);} void loop(){ button.pressed = isButtonPressed(BUTTON_PIN); if (button.pressed) { Serial.println("Button pressed"); } else { Serial.println("Button not pressed"); }} bool isButtonPressed(int pin){ return digitalRead(pin) == 0;}开关按钮的Arduino代码我们定义了一个结构体(称为toggle )来表示开关的状态。串行监视器将实时输出该状态。
#define TOGGLE_PIN 4struct toggle { byte on = 0;};toggle toggle;void setup(){ pinMode(TOGGLE_PIN, INPUT_PULLUP); Serial.begin(115200);}void loop(){ toggle.on = isToggleOn(TOGGLE_PIN); if (toggle.on) { Serial.println("Toggle ON"); } else { Serial.println("Toggle OFF"); }}bool isToggleOn(int pin){ return digitalRead(pin) == 0;}注意:我们使用toggle来定义按钮,因为switch是保留字,可能会导致冲突。