ezButton Library - Single Button Debounce Example
Hardware Required
Disclosure: Some links in this section are Amazon affiliate links. If you make a purchase through these links, we may earn a commission at no extra cost to you.
Additionally, some links direct to products from our own brand, DIYables .
Additionally, some links direct to products from our own brand, DIYables .
Wiring Diagram

This image is created using Fritzing. Click to enlarge image
Arduino Code
Quick Steps
- Install ezButton library. See How To
- Connect Arduino to PC via USB cable
- Open Arduino IDE, select the right board and port
- On Arduino IDE, Go to File Examples ezButton 03.SingleButtonDebounce example
/*
 * Created by ArduinoGetStarted.com
 *
 * This example code is in the public domain
 *
 * Tutorial page: https://arduinogetstarted.com/tutorials/arduino-button-library
 *
 * This example reads the state of a button with debounce and print it to Serial Monitor.
 */
#include <ezButton.h>
ezButton button(7);  // create ezButton object that attach to pin 7;
void setup() {
  Serial.begin(9600);
  button.setDebounceTime(50); // set debounce time to 50 milliseconds
}
void loop() {
  button.loop(); // MUST call the loop() function first
  if(button.isPressed())
    Serial.println("The button is pressed");
  if(button.isReleased())
    Serial.println("The button is released");
}
- Click Upload button on Arduino IDE to upload code to Arduino

- Press the button and then release
- See the result on Serial Monitor
COM6
The button is pressed
The button is released
Autoscroll
Clear output
9600 baud  
Newline  
Code Explanation
Read the line-by-line explanation in comment lines of source code!