Fork of mRotaryEncoder for mdeb-os. uses newer version of PinDetect. Testprogram: https://os.mbed.com/users/charly/code/mRotaryEncoder_HelloWorld-os/

Dependencies:   PinDetect

Dependents:   mRotaryEncoder_HelloWorld-os TMC2209-Test2

Revision:
11:24b34deae975
Parent:
10:2502b829d452
Child:
12:1925aac090b7
diff -r 2502b829d452 -r 24b34deae975 mRotaryEncoder.cpp
--- a/mRotaryEncoder.cpp	Fri Feb 26 20:18:57 2016 +0000
+++ b/mRotaryEncoder.cpp	Tue Mar 03 12:20:55 2020 +0000
@@ -2,7 +2,7 @@
 #include "mRotaryEncoder.h"
 
 
-mRotaryEncoder::mRotaryEncoder(PinName pinA, PinName pinB, PinName pinSW, PinMode pullMode, int debounceTime_us) {
+mRotaryEncoder::mRotaryEncoder(PinName pinA, PinName pinB, PinName pinSW, PinMode pullMode, int debounceTime_us, int detectRise, int detectFall) {
     m_pinA = new PinDetect(pinA);                      // interrrupts on pinA
     m_pinB = new DigitalIn(pinB);                      // only digitalIn for pinB
 
@@ -11,8 +11,12 @@
     m_pinB->mode(pullMode);
 
     // attach interrrupts on pinA
-    m_pinA->attach_asserted(this, &mRotaryEncoder::rise);
-    m_pinA->attach_deasserted(this, &mRotaryEncoder::fall);
+    if (detectRise != 0){
+        m_pinA->attach_asserted(this, &mRotaryEncoder::rise);
+    }
+    if (detectFall != 0){
+        m_pinA->attach_deasserted(this, &mRotaryEncoder::fall);
+    }
     
     //start sampling pinA
     m_pinA->setSampleFrequency(debounceTime_us);                  // Start timers an Defaults debounce time.