test not done
Dependencies: mbed QEI QEI_hw SDFileSystem
main.cpp@0:0205108c2c99, 2019-08-08 (annotated)
- Committer:
- chanaka_madhusanka
- Date:
- Thu Aug 08 08:12:52 2019 +0000
- Revision:
- 0:0205108c2c99
- Child:
- 1:a7c5a3920ba8
encoder test 2019
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
chanaka_madhusanka | 0:0205108c2c99 | 1 | #include "mbed.h" |
chanaka_madhusanka | 0:0205108c2c99 | 2 | |
chanaka_madhusanka | 0:0205108c2c99 | 3 | #include "qeihw.h" |
chanaka_madhusanka | 0:0205108c2c99 | 4 | |
chanaka_madhusanka | 0:0205108c2c99 | 5 | DigitalOut led1 (LED1); |
chanaka_madhusanka | 0:0205108c2c99 | 6 | DigitalOut led3 (LED3); |
chanaka_madhusanka | 0:0205108c2c99 | 7 | |
chanaka_madhusanka | 0:0205108c2c99 | 8 | int pulses = 0; |
chanaka_madhusanka | 0:0205108c2c99 | 9 | int32_t temp=0; |
chanaka_madhusanka | 0:0205108c2c99 | 10 | Serial pc(USBTX, USBRX); |
chanaka_madhusanka | 0:0205108c2c99 | 11 | //Use X4 encoding. |
chanaka_madhusanka | 0:0205108c2c99 | 12 | //QEI wheel(p29, p30, NC, 624, QEI::X4_ENCODING); |
chanaka_madhusanka | 0:0205108c2c99 | 13 | //Use X2 encoding by default. |
chanaka_madhusanka | 0:0205108c2c99 | 14 | //QEI wheel (p13, p14, NC, 2000); |
chanaka_madhusanka | 0:0205108c2c99 | 15 | QEIHW wheel(QEI_DIRINV_NONE, QEI_SIGNALMODE_QUAD, QEI_CAPMODE_4X, QEI_INVINX_NONE ); |
chanaka_madhusanka | 0:0205108c2c99 | 16 | |
chanaka_madhusanka | 0:0205108c2c99 | 17 | Ticker tick; |
chanaka_madhusanka | 0:0205108c2c99 | 18 | |
chanaka_madhusanka | 0:0205108c2c99 | 19 | void display() |
chanaka_madhusanka | 0:0205108c2c99 | 20 | { |
chanaka_madhusanka | 0:0205108c2c99 | 21 | pc.printf("Pulses is: %i\n", temp ); |
chanaka_madhusanka | 0:0205108c2c99 | 22 | //pc.printf(" State : %i\n", wheel.GetPosition()); |
chanaka_madhusanka | 0:0205108c2c99 | 23 | } |
chanaka_madhusanka | 0:0205108c2c99 | 24 | |
chanaka_madhusanka | 0:0205108c2c99 | 25 | int main() { |
chanaka_madhusanka | 0:0205108c2c99 | 26 | |
chanaka_madhusanka | 0:0205108c2c99 | 27 | while(1){ |
chanaka_madhusanka | 0:0205108c2c99 | 28 | wait(0.1); |
chanaka_madhusanka | 0:0205108c2c99 | 29 | wheel.SetDigiFilter(480UL); |
chanaka_madhusanka | 0:0205108c2c99 | 30 | wheel.SetMaxPosition(0xFFFFFFFF); |
chanaka_madhusanka | 0:0205108c2c99 | 31 | temp = wheel.GetPosition(); |
chanaka_madhusanka | 0:0205108c2c99 | 32 | // pulses = wheel.(); |
chanaka_madhusanka | 0:0205108c2c99 | 33 | //tick.attach (&display , 1); |
chanaka_madhusanka | 0:0205108c2c99 | 34 | |
chanaka_madhusanka | 0:0205108c2c99 | 35 | display(); |
chanaka_madhusanka | 0:0205108c2c99 | 36 | if (temp >20000){ |
chanaka_madhusanka | 0:0205108c2c99 | 37 | led1 = 1; |
chanaka_madhusanka | 0:0205108c2c99 | 38 | led3 = 1; |
chanaka_madhusanka | 0:0205108c2c99 | 39 | } |
chanaka_madhusanka | 0:0205108c2c99 | 40 | else if (temp >10000){ |
chanaka_madhusanka | 0:0205108c2c99 | 41 | led1 = 1; |
chanaka_madhusanka | 0:0205108c2c99 | 42 | led3 = 0; |
chanaka_madhusanka | 0:0205108c2c99 | 43 | } |
chanaka_madhusanka | 0:0205108c2c99 | 44 | else if (temp >5000){ |
chanaka_madhusanka | 0:0205108c2c99 | 45 | led1 = 0; |
chanaka_madhusanka | 0:0205108c2c99 | 46 | led3 = 1; |
chanaka_madhusanka | 0:0205108c2c99 | 47 | } |
chanaka_madhusanka | 0:0205108c2c99 | 48 | else{ |
chanaka_madhusanka | 0:0205108c2c99 | 49 | led1 = 0; |
chanaka_madhusanka | 0:0205108c2c99 | 50 | led3 = 0; |
chanaka_madhusanka | 0:0205108c2c99 | 51 | } |
chanaka_madhusanka | 0:0205108c2c99 | 52 | } |
chanaka_madhusanka | 0:0205108c2c99 | 53 | } |