Fork of encoder2 by
encoder2.cpp@2:82a12d9f0bca, 2018-03-27 (annotated)
- Committer:
- frute8
- Date:
- Tue Mar 27 03:45:26 2018 +0000
- Revision:
- 2:82a12d9f0bca
- Child:
- 3:03bca13f0bf6
a
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
frute8 | 2:82a12d9f0bca | 1 | #include "encoder2.h" |
frute8 | 2:82a12d9f0bca | 2 | #include "mbed.h" |
frute8 | 2:82a12d9f0bca | 3 | |
frute8 | 2:82a12d9f0bca | 4 | Encoder2::Encoder2(PinName APin, PinName BPin, PinName ZPin) : A(APin) , B(BPin) , Z(ZPin){ |
frute8 | 2:82a12d9f0bca | 5 | A.rise(this,&Encoder2::flag); |
frute8 | 2:82a12d9f0bca | 6 | init(); |
frute8 | 2:82a12d9f0bca | 7 | } |
frute8 | 2:82a12d9f0bca | 8 | |
frute8 | 2:82a12d9f0bca | 9 | void Encoder2::init(void){ |
frute8 | 2:82a12d9f0bca | 10 | count = 0; |
frute8 | 2:82a12d9f0bca | 11 | zcount = 0; |
frute8 | 2:82a12d9f0bca | 12 | } |
frute8 | 2:82a12d9f0bca | 13 | |
frute8 | 2:82a12d9f0bca | 14 | void Encoder2::flag(void){ |
frute8 | 2:82a12d9f0bca | 15 | if(B == true){ |
frute8 | 2:82a12d9f0bca | 16 | count++; |
frute8 | 2:82a12d9f0bca | 17 | if(Z == true){ |
frute8 | 2:82a12d9f0bca | 18 | zcount++; |
frute8 | 2:82a12d9f0bca | 19 | count=0; |
frute8 | 2:82a12d9f0bca | 20 | } |
frute8 | 2:82a12d9f0bca | 21 | }else{ |
frute8 | 2:82a12d9f0bca | 22 | count--; |
frute8 | 2:82a12d9f0bca | 23 | if(Z == true){ |
frute8 | 2:82a12d9f0bca | 24 | zcount--; |
frute8 | 2:82a12d9f0bca | 25 | count=0; |
frute8 | 2:82a12d9f0bca | 26 | } |
frute8 | 2:82a12d9f0bca | 27 | } |
frute8 | 2:82a12d9f0bca | 28 | } |
frute8 | 2:82a12d9f0bca | 29 | |
frute8 | 2:82a12d9f0bca | 30 | int Encoder2::read_rotate(){ |
frute8 | 2:82a12d9f0bca | 31 | return count; |
frute8 | 2:82a12d9f0bca | 32 | } |
frute8 | 2:82a12d9f0bca | 33 | |
frute8 | 2:82a12d9f0bca | 34 | int Encoder2::read_z(){ |
frute8 | 2:82a12d9f0bca | 35 | return zcount; |
frute8 | 2:82a12d9f0bca | 36 | } |
frute8 | 2:82a12d9f0bca | 37 | |
frute8 | 2:82a12d9f0bca | 38 |