Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp@0:0bf74edfca0a, 2018-10-26 (annotated)
- Committer:
- Rhein
- Date:
- Fri Oct 26 09:48:39 2018 +0000
- Revision:
- 0:0bf74edfca0a
Displaying encoders values with pc.printf function
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| Rhein | 0:0bf74edfca0a | 1 | #include "mbed.h" |
| Rhein | 0:0bf74edfca0a | 2 | #include "QEI.h" |
| Rhein | 0:0bf74edfca0a | 3 | #include "MODSERIAL.h" |
| Rhein | 0:0bf74edfca0a | 4 | |
| Rhein | 0:0bf74edfca0a | 5 | |
| Rhein | 0:0bf74edfca0a | 6 | DigitalOut motor2_direction(D7); |
| Rhein | 0:0bf74edfca0a | 7 | PwmOut motor2_speed_control(D6); |
| Rhein | 0:0bf74edfca0a | 8 | PwmOut motor1_speed_control(D5); |
| Rhein | 0:0bf74edfca0a | 9 | DigitalOut motor1_direction(D4); |
| Rhein | 0:0bf74edfca0a | 10 | |
| Rhein | 0:0bf74edfca0a | 11 | DigitalOut led3(LED_BLUE); |
| Rhein | 0:0bf74edfca0a | 12 | |
| Rhein | 0:0bf74edfca0a | 13 | Serial pc(USBTX,USBRX); |
| Rhein | 0:0bf74edfca0a | 14 | |
| Rhein | 0:0bf74edfca0a | 15 | QEI Encoder1(D12,D13,NC,32); |
| Rhein | 0:0bf74edfca0a | 16 | QEI Encoder2(D10,D11,NC,32); |
| Rhein | 0:0bf74edfca0a | 17 | |
| Rhein | 0:0bf74edfca0a | 18 | |
| Rhein | 0:0bf74edfca0a | 19 | int main() |
| Rhein | 0:0bf74edfca0a | 20 | { |
| Rhein | 0:0bf74edfca0a | 21 | pc.baud(115200); |
| Rhein | 0:0bf74edfca0a | 22 | |
| Rhein | 0:0bf74edfca0a | 23 | double counts_m1 = 0; |
| Rhein | 0:0bf74edfca0a | 24 | double counts_m2 = 0; |
| Rhein | 0:0bf74edfca0a | 25 | double counts_m1_prev = 0; |
| Rhein | 0:0bf74edfca0a | 26 | double counts_m2_prev = 0; |
| Rhein | 0:0bf74edfca0a | 27 | |
| Rhein | 0:0bf74edfca0a | 28 | counts_m1 = Encoder1.getPulses() - counts_m1_prev; |
| Rhein | 0:0bf74edfca0a | 29 | counts_m2 = Encoder1.getPulses() - counts_m2_prev; |
| Rhein | 0:0bf74edfca0a | 30 | deg_m1 = deg_m1 + counts_m1*(360/(full_ratio)); |
| Rhein | 0:0bf74edfca0a | 31 | deg_m2 = deg_m2 + counts_m2*(360/(full_ratio)); |
| Rhein | 0:0bf74edfca0a | 32 | counts_m1_prev = Encoder1.getPulses(); |
| Rhein | 0:0bf74edfca0a | 33 | counts_m2_prev = Encoder2.getPulses(); |
| Rhein | 0:0bf74edfca0a | 34 | |
| Rhein | 0:0bf74edfca0a | 35 | while(true) |
| Rhein | 0:0bf74edfca0a | 36 | { |
| Rhein | 0:0bf74edfca0a | 37 | pc.printf("counts_m1 = %f, count_m2 = %f, deg_m1 = %f, deg_m2 = %f \r\n",counts_m1,counts_m2,deg_m1,deg_m2); |
| Rhein | 0:0bf74edfca0a | 38 | if(deg_m1=90 && deg_m2=90) |
| Rhein | 0:0bf74edfca0a | 39 | { |
| Rhein | 0:0bf74edfca0a | 40 | led3=0; |
| Rhein | 0:0bf74edfca0a | 41 | } |
| Rhein | 0:0bf74edfca0a | 42 | } |
| Rhein | 0:0bf74edfca0a | 43 | } |