#define LED 20 #define BUTTON 8 //variable to keep track of how manny button presses int buttonPresses = 0; void setup() { Serial.begin(115200); delay(10); pinMode(LED, OUTPUT); pinMode(BUTTON, INPUT_PULLUP); } //loop function void loop() { //if button is pressed if (digitalRead(BUTTON) == HIGH) { //increment buttonPresses buttonPresses++; //if buttonPresses is greater than 4 if (buttonPresses > 4) { //reset buttonPresses to 0 buttonPresses = 0; } //if buttonPresses is 1 if (buttonPresses == 1) { //blink LED once digitalWrite(LED, HIGH); delay(200); digitalWrite(LED, LOW); } //if buttonPresses is 2 if (buttonPresses == 2) { //blink LED twice for (int i = 0; i < 2; i++) { digitalWrite(LED, HIGH); delay(200); digitalWrite(LED, LOW); delay(200); } } //if buttonPresses is 3 if (buttonPresses == 3) { //blink LED three times for (int i = 0; i < 3; i++) { digitalWrite(LED, HIGH); delay(200); digitalWrite(LED, LOW); delay(200); } } //if buttonPresses is 4 if (buttonPresses == 4) { //blink LED four times for (int i = 0; i < 4; i++) { digitalWrite(LED, HIGH); delay(200); digitalWrite(LED, LOW); delay(200); } //set buttonPresses variable back to 0 buttonPresses = 0; } //wait for button to be released while (digitalRead(BUTTON) == HIGH) { } } }