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:94484bb53158, 2019-07-27 (annotated)
- Committer:
- Tomo1213
- Date:
- Sat Jul 27 09:34:10 2019 +0000
- Revision:
- 0:94484bb53158
first commit
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| Tomo1213 | 0:94484bb53158 | 1 | #include "mbed.h" |
| Tomo1213 | 0:94484bb53158 | 2 | #include "QEI.h" |
| Tomo1213 | 0:94484bb53158 | 3 | |
| Tomo1213 | 0:94484bb53158 | 4 | PwmOut MD_PWMB(PB_1); |
| Tomo1213 | 0:94484bb53158 | 5 | DigitalOut MD_BIN1(PA_10),MD_BIN2(PA_12); |
| Tomo1213 | 0:94484bb53158 | 6 | |
| Tomo1213 | 0:94484bb53158 | 7 | BusIn Encoder_PullUp(PA_8,PA_9); |
| Tomo1213 | 0:94484bb53158 | 8 | QEI Encoder(PA_9,PA_8,NC,12,QEI::X4_ENCODING); |
| Tomo1213 | 0:94484bb53158 | 9 | |
| Tomo1213 | 0:94484bb53158 | 10 | |
| Tomo1213 | 0:94484bb53158 | 11 | void motor(float speed){ |
| Tomo1213 | 0:94484bb53158 | 12 | |
| Tomo1213 | 0:94484bb53158 | 13 | float speed_f; |
| Tomo1213 | 0:94484bb53158 | 14 | MD_PWMB.period_us(50); |
| Tomo1213 | 0:94484bb53158 | 15 | speed_f = fabsf(speed); |
| Tomo1213 | 0:94484bb53158 | 16 | |
| Tomo1213 | 0:94484bb53158 | 17 | if(speed < 0){ |
| Tomo1213 | 0:94484bb53158 | 18 | MD_PWMB = speed_f; |
| Tomo1213 | 0:94484bb53158 | 19 | MD_BIN1 = 1; |
| Tomo1213 | 0:94484bb53158 | 20 | MD_BIN2 = 0; |
| Tomo1213 | 0:94484bb53158 | 21 | } |
| Tomo1213 | 0:94484bb53158 | 22 | else if(0 < speed && speed <= 1){ |
| Tomo1213 | 0:94484bb53158 | 23 | MD_PWMB = speed_f; |
| Tomo1213 | 0:94484bb53158 | 24 | MD_BIN1 = 0; |
| Tomo1213 | 0:94484bb53158 | 25 | MD_BIN2 = 1; |
| Tomo1213 | 0:94484bb53158 | 26 | } |
| Tomo1213 | 0:94484bb53158 | 27 | else{ |
| Tomo1213 | 0:94484bb53158 | 28 | MD_PWMB = 1; |
| Tomo1213 | 0:94484bb53158 | 29 | MD_BIN1 = 0; |
| Tomo1213 | 0:94484bb53158 | 30 | MD_BIN2 = 0; |
| Tomo1213 | 0:94484bb53158 | 31 | } |
| Tomo1213 | 0:94484bb53158 | 32 | |
| Tomo1213 | 0:94484bb53158 | 33 | } |
| Tomo1213 | 0:94484bb53158 | 34 | |
| Tomo1213 | 0:94484bb53158 | 35 | int main(){ |
| Tomo1213 | 0:94484bb53158 | 36 | |
| Tomo1213 | 0:94484bb53158 | 37 | Encoder_PullUp.mode(PullUp); |
| Tomo1213 | 0:94484bb53158 | 38 | |
| Tomo1213 | 0:94484bb53158 | 39 | while(1){ |
| Tomo1213 | 0:94484bb53158 | 40 | |
| Tomo1213 | 0:94484bb53158 | 41 | printf("%d\r\n",Encoder.getPulses()); |
| Tomo1213 | 0:94484bb53158 | 42 | |
| Tomo1213 | 0:94484bb53158 | 43 | } |
| Tomo1213 | 0:94484bb53158 | 44 | |
| Tomo1213 | 0:94484bb53158 | 45 | } |