# debouncing an interrupt trigger

**URL:** <https://forum.arduino.cc/t/debouncing-an-interrupt-trigger/45110>\
**Category:** Syntax & Programs\
**Created:** [October 9, 2008, 9:15am UTC](https://forum.arduino.cc/t/debouncing-an-interrupt-trigger/45110 "2008-10-09T09:15:16Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![mikalhart](https://avatars.discourse-cdn.com/v4/letter/m/a6a055/32.png) [@mikalhart](https://forum.arduino.cc/u/mikalhart)\
**Post date:** [October 9, 2008, 12:00pm UTC](https://forum.arduino.cc/t/debouncing-an-interrupt-trigger/45110/3 "2008-10-09T12:00:58Z")

</div>

BigMike's idea is a good one. Perhaps some variant like this would work?

```cpp
void my_interrupt_handler()
{
  static unsigned long last_interrupt_time = 0;
  unsigned long interrupt_time = millis();
  // If interrupts come faster than 200ms, assume it's a bounce and ignore
  if (interrupt_time - last_interrupt_time > 200) 
  {
    ... do your thing
  }
  last_interrupt_time = interrupt_time;
}

```

Mikal

---

_[View the full topic](https://forum.arduino.cc/t/debouncing-an-interrupt-trigger/45110)._
