203k views
3 votes
Create an Arduino Script and Arduino Board/Circuit setup that counts unique Button Presses and turns on an LED after 5 Unique Presses. After an addition 5 Unique Presses the LED should be turned off, toggling from on to off after every 5 seconds. Use a delay of 100 Mili-Seconds. Here Unique Presses means each time the Button is Pressed Down, so if a button is pressed down and held for 100 Seconds, it will count as only 1 Press.

PLEASE WRITE THE CODE

1 Answer

3 votes

Final answer:

The script provided allows an Arduino to count unique button presses, turning an LED on or off every 5 presses. A debouncing delay is included to ensure presses are only counted once. The digital pins are configured appropriately for the button and the LED.

Step-by-step explanation:

Arduino Script for Counting Unique Button Presses

To create an Arduino script that counts unique button presses and toggles an LED after every 5 presses, you can utilize the digital input to detect button presses and a simple counter to manage the number of presses. The circuit setup will require a button connected to a digital pin for input and an LED connected to another digital pin for output. The script will use a debouncing technique to ensure each press is counted only once, even if the button is held down.

Here is a simple Arduino script to achieve the task:

// Define pin numbers
const int buttonPin = 2;
const int ledPin = 13;

// Variables to keep track of button state and press count
int buttonState = 0;
int lastButtonState = 0;
int pressCount = 0;
bool ledState = false;

void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT_PULLUP);
digitalWrite(ledPin, ledState);
}

void loop() {
int reading = digitalRead(buttonPin);

if(reading != lastButtonState) {
// If the button state has changed:
if(reading == LOW) {
// If the current state is pressed (assuming active low):
pressCount++;
if(pressCount % 5 == 0) {
ledState = !ledState;
digitalWrite(ledPin, ledState);
}
}
// Delay a little bit to avoid bouncing
delay(100);
}
// Save the reading
lastButtonState = reading;
}

This code will toggle the LED on or off every 5 unique button presses. Note that the 'INPUT_PULLUP' configuration is used for the button to simplify the circuit. It eliminates the need for an external pull-up resistor.

User Aruna Tebel
by
7.2k points