Instantly share code, notes, and snippets.

Embed
What would you like to do?
[Arduino] buttonWait - wait for button press before further execution.
buttonWait v0.1 by rahuldottech
---------------------------------
(pause a script till a button is, y'know, *pressed*...)
This code is in the public domain.
Proper schematic at https://arduino.stackexchange.com/a/56805/50258
--
Circuit Diagram:
[pin]----|--------------[button]
| |
[10k resistor] |
| |
[ground] [vcc]
--
Usage:
buttonWait(<pin_number>);
/* the function */
void buttonWait(int buttonPin){
int buttonState = 0;
while(1){
buttonState = digitalRead(buttonPin);
if (buttonState == HIGH) {
return;
}
}
}
void loop() {
// put your main code here, to run repeatedly:
buttonWait(2); // wait for button press on pin 2
// do something
// ...
}
/* the function */
void buttonWait(int buttonPin){
int buttonState = 0;
while(1){
buttonState = digitalRead(buttonPin);
if (buttonState == HIGH) {
return;
}
}
}
void setup() {
// put your setup code here, to run once:
pinMode(LED_BUILTIN, OUTPUT); // initialize digital pin LED_BUILTIN as an output.
}
void loop() {
// put your main code here, to run repeatedly:
buttonWait(2); // wait for button press on pin 2
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on
delay(1000); //wait for a second
buttonWait(2); // wait for another button press on pin 2
digitalWrite(LED_BUILTIN, LOW); // turn the LED off
delay(1000); //wait for a second
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment