A polled Quadrature encoder Class

Dependencies:   mbed

Committer:
jgnoss
Date:
Tue Aug 30 20:03:36 2011 +0000
Revision:
1:72e6e124a7e6
Parent:
0:7c16b1d2f01e
Added Phase Z and Rev Counter

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jgnoss 0:7c16b1d2f01e 1 #include "mbed.h"
jgnoss 0:7c16b1d2f01e 2 #include "PolledQEI.h"
jgnoss 0:7c16b1d2f01e 3
jgnoss 0:7c16b1d2f01e 4
jgnoss 0:7c16b1d2f01e 5
jgnoss 0:7c16b1d2f01e 6
jgnoss 0:7c16b1d2f01e 7 int main() {
jgnoss 0:7c16b1d2f01e 8 int oldEncPos = 0;
jgnoss 0:7c16b1d2f01e 9 int newEncPos = 0;
jgnoss 1:72e6e124a7e6 10 int oldEncRev = 0;
jgnoss 1:72e6e124a7e6 11 int newEncRev = 0;
jgnoss 0:7c16b1d2f01e 12
jgnoss 0:7c16b1d2f01e 13 DigitalOut led1( LED1 );
jgnoss 1:72e6e124a7e6 14 DigitalOut led2( LED2 );
jgnoss 0:7c16b1d2f01e 15
jgnoss 1:72e6e124a7e6 16 PolledQEI enc(p5, p6, p7);
jgnoss 0:7c16b1d2f01e 17 enc.setSampleFrequency(10000);
jgnoss 0:7c16b1d2f01e 18
jgnoss 0:7c16b1d2f01e 19 led1 = 1;
jgnoss 0:7c16b1d2f01e 20
jgnoss 0:7c16b1d2f01e 21
jgnoss 0:7c16b1d2f01e 22 while (1) {
jgnoss 0:7c16b1d2f01e 23 newEncPos = enc.pos();
jgnoss 0:7c16b1d2f01e 24 if (oldEncPos != newEncPos ) {
jgnoss 0:7c16b1d2f01e 25 oldEncPos = newEncPos;
jgnoss 0:7c16b1d2f01e 26 led1 = !led1;
jgnoss 0:7c16b1d2f01e 27 }
jgnoss 0:7c16b1d2f01e 28
jgnoss 1:72e6e124a7e6 29 newEncRev = enc.rev();
jgnoss 1:72e6e124a7e6 30 if (oldEncRev != newEncRev ) {
jgnoss 1:72e6e124a7e6 31 oldEncRev = newEncRev;
jgnoss 1:72e6e124a7e6 32 led2 = !led2;
jgnoss 1:72e6e124a7e6 33 }
jgnoss 0:7c16b1d2f01e 34 wait(0.01);
jgnoss 0:7c16b1d2f01e 35 }
jgnoss 0:7c16b1d2f01e 36 }
jgnoss 0:7c16b1d2f01e 37
jgnoss 0:7c16b1d2f01e 38