Debounce InterruptIn

Dependents:   led_sigfox Allumag_lampe_sigfox Case_study_02_Turnstile B18_MP3_PLAYER ... more

Files at this revision

API Documentation at this revision

Comitter:
kandangath
Date:
Tue Feb 18 16:51:44 2014 +0000
Parent:
12:7022ffaa74f5
Child:
14:da09706b92f5
Commit message:
Change member function

Changed in this revision

DebouncedInterrupt.cpp Show annotated file Show diff for this revision Revisions of this file
DebouncedInterrupt.h Show annotated file Show diff for this revision Revisions of this file
--- a/DebouncedInterrupt.cpp	Tue Feb 18 16:47:32 2014 +0000
+++ b/DebouncedInterrupt.cpp	Tue Feb 18 16:51:44 2014 +0000
@@ -20,7 +20,7 @@
 {
     if(fptr) {
         fCallback = fptr;
-        _last_debounce_count = _debounce_count = 0;
+        _last_bounce_count = _bounce_count = 0;
         
         switch(trigger) {
          case INT_RISE:
@@ -42,21 +42,21 @@
     timeout.detach();
 }
 
-unsigned int DebouncedInterrupt::get_debounce()
+unsigned int DebouncedInterrupt::get_bounce()
 {
-    return _last_debounce_count;
+    return _last_bounce_count;
 }
 
 void DebouncedInterrupt::_callback()
 {
-    _last_debounce_count = _debounce_count;
-    _debounce_count = 0;
+    _last_bounce_count = _bounce_count;
+    _bounce_count = 0;
     fCallback();
 }
 
 void DebouncedInterrupt::_onInterrupt()
 {
-    _debounce_count++;
+    _bounce_count++;
     timeout.attach_us(this, &DebouncedInterrupt::_callback, _debounce_us);
 }
 
--- a/DebouncedInterrupt.h	Tue Feb 18 16:47:32 2014 +0000
+++ b/DebouncedInterrupt.h	Tue Feb 18 16:51:44 2014 +0000
@@ -35,10 +35,12 @@
 class DebouncedInterrupt {
 private:
     unsigned int _debounce_us;
-    volatile unsigned int _debounce_count;
-    volatile unsigned int _last_debounce_count;
     InterruptIn *_in;
     
+    // Diagnostics
+    volatile unsigned int _bounce_count;
+    volatile unsigned int _last_bounce_count;
+    
     void (*fCallback)(void);
     void _onInterrupt(void);
     void _callback(void);
@@ -54,9 +56,9 @@
     
     
     /*
-    * Get number of de-bounced interrupts
-    * @return: debounced count
+    * Get number of bounces 
+    * @return: bounce count
     */
-    unsigned int get_debounce();
+    unsigned int get_bounce();
 };
 #endif
\ No newline at end of file