Arduino Interrupts and Debouncing

Interrupts are an extremely useful, yet often feared element of microprocessors. Interrupts allow you to run a program, while still being able to react to asynchronous input from the outside world.

Arduino Interrupts and Debouncing


Thanks to Jeremy , for this articles


On many platforms they can be confusing to implement, but the arduino makes it easy! In this week’s episode, I’ll show you how to use a hardware-debounced button to activate a hardware interrupt on the arduino.

I’d suggest you go check out episode 2, where I initially introduced button debouncing, if you haven’t already. I won’t be covering timer interrupts in this episode, since I recently wrote an extensive blog post about using them. Enjoy the video!

EDIT: You can find a great run-down of debouncing techniques and problems here: (Thanks Jope)

Arduino Interrupts and Debouncing Schematic

You can download the files associated with this episode here:


Major Components in Project

1.   Arduino Uno: -board/dp/13T9285
2.   USB Cable: http://us.element-
3.   Arduino Software:
4.   Breadboard:
5.   LEDs:
6.   150 ohm Resistor: -0 -25w -150r/resistor-carbon -film -150ohm-250mw/dp/38K0339
7.   Pushbutton: -k/ksl1m411 – lf t/switch -tactile -spst -no- 50ma-thd/dp/88K5321
8.   Jumper Kit:
9.   IR Distance Sensor: http://us.element-
10.  Inverting Schmitt Trigger:  http://us.element- – hex-inverter -schmitt-trigger/dp/89K0862
11.  10k ohm Resistor: -carbon -film -10kohm-250mw/dp/58K5002
12.  10uF Capacitor: – 3×11/capacitor-alum- elect -10uf -100v/dp/70K9661

For more detail: Arduino Interrupts and Debouncing

This Post / Project can also be found using search terms:

  • arduino interrupt debounce
  • interrupts and debouncing arduino code
  • Arduino Debounce Interrupt
  • arduino debouncing assignment

Leave a Comment

= 4 + 6

(Spamcheck Enabled)

Read previous post:
Chat Server using Arduino
Chat Server using Arduino

A simple server that distributes any incoming messages to all connected clients. To use, open a terminal window, telnet to...

Scroll to top