t6est

Dependencies:   Pulse

Revision:
0:3dc012104243
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/rori.cpp	Tue Sep 24 13:35:31 2019 +0000
@@ -0,0 +1,44 @@
+#include "rori.h"
+#include "mbed.h"
+
+RORI::RORI(PinName a,PinName b): pinA(a),pinB(b),DigA(a),DigB(b){
+    flag = true;
+    }
+
+void RORI::loli(){
+    volatile short hear = DigA.read()<<1 | DigB.read();
+    if(!dir){
+        if(hear == 1){
+            dir = hear;
+        }else if(hear == 2){
+            dir = hear;
+        }else if(!hear){
+            dir = 0;
+        }
+    }else if(!hear){
+        if(old != dir){
+            if(dir == 2){
+                enc_count++;
+            }else if(dir == 1){
+                enc_count--;
+            }
+        }
+        dir = 0;
+    }
+    old = hear;
+    }
+    
+//long RORI::read(){
+
+   // return(enc_count);
+ //   }
+ void RORI::read(long *a){
+    pinA.rise(this,&RORI::loli);
+    pinA.fall(this,&RORI::loli);
+    pinB.rise(this,&RORI::loli);
+    pinB.fall(this,&RORI::loli);
+     *a = enc_count;
+     }
+bool RORI::getflag(){
+    return(flag);
+    }
\ No newline at end of file