![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
test
main.cpp@1:e9c99931de4f, 2015-01-08 (annotated)
- Committer:
- NT32
- Date:
- Thu Jan 08 04:30:38 2015 +0000
- Revision:
- 1:e9c99931de4f
- Parent:
- 0:035867391bd5
???????????
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
NT32 | 0:035867391bd5 | 1 | #include "mbed.h" |
NT32 | 0:035867391bd5 | 2 | |
NT32 | 1:e9c99931de4f | 3 | #define STOP 0 |
NT32 | 1:e9c99931de4f | 4 | #define CW 1 |
NT32 | 1:e9c99931de4f | 5 | #define CCW 2 |
NT32 | 1:e9c99931de4f | 6 | |
NT32 | 1:e9c99931de4f | 7 | Serial pc(dp16, dp15); // tx, rx |
NT32 | 1:e9c99931de4f | 8 | |
NT32 | 1:e9c99931de4f | 9 | PwmOut pincw(dp1), pinccw(dp2); |
NT32 | 0:035867391bd5 | 10 | |
NT32 | 1:e9c99931de4f | 11 | int main() { |
NT32 | 1:e9c99931de4f | 12 | char cmd[64]; |
NT32 | 1:e9c99931de4f | 13 | int rpm, pulsewidth, waittime, rounddirection = STOP; |
NT32 | 1:e9c99931de4f | 14 | pc.baud(115200); |
NT32 | 1:e9c99931de4f | 15 | pincw.write(0); |
NT32 | 1:e9c99931de4f | 16 | pinccw.write(0); |
NT32 | 1:e9c99931de4f | 17 | pincw.period_us(1500); |
NT32 | 1:e9c99931de4f | 18 | while(1) { |
NT32 | 1:e9c99931de4f | 19 | pc.scanf("%s", cmd); |
NT32 | 1:e9c99931de4f | 20 | pc.scanf("%d", &rpm); |
NT32 | 1:e9c99931de4f | 21 | pulsewidth = 1000000 / (rpm * 720 / 60); |
NT32 | 1:e9c99931de4f | 22 | if(strncmp(cmd,"CW", 2) == 0){ |
NT32 | 1:e9c99931de4f | 23 | pinccw.write(1); |
NT32 | 1:e9c99931de4f | 24 | wait_us(200); |
NT32 | 1:e9c99931de4f | 25 | pincw.period_us(pulsewidth); |
NT32 | 1:e9c99931de4f | 26 | pincw.write(0.5); |
NT32 | 1:e9c99931de4f | 27 | rounddirection = CW; |
NT32 | 1:e9c99931de4f | 28 | pc.printf("OK\n"); |
NT32 | 1:e9c99931de4f | 29 | }else if(strncmp(cmd,"CCW", 3) == 0){ |
NT32 | 1:e9c99931de4f | 30 | pincw.write(1); |
NT32 | 1:e9c99931de4f | 31 | wait_us(200); |
NT32 | 1:e9c99931de4f | 32 | pinccw.period_us(pulsewidth); |
NT32 | 1:e9c99931de4f | 33 | pinccw.write(0.5); |
NT32 | 1:e9c99931de4f | 34 | rounddirection = CCW; |
NT32 | 1:e9c99931de4f | 35 | pc.printf("OK\n"); |
NT32 | 1:e9c99931de4f | 36 | }else if(strncmp(cmd,"STOP", 4) == 0){ |
NT32 | 1:e9c99931de4f | 37 | pinccw.write(1); |
NT32 | 1:e9c99931de4f | 38 | pincw.write(1); |
NT32 | 1:e9c99931de4f | 39 | rounddirection = STOP; |
NT32 | 1:e9c99931de4f | 40 | pc.printf("OK\n"); |
NT32 | 1:e9c99931de4f | 41 | }else{ |
NT32 | 1:e9c99931de4f | 42 | pinccw.write(1); |
NT32 | 1:e9c99931de4f | 43 | pincw.write(1); |
NT32 | 1:e9c99931de4f | 44 | rounddirection = STOP; |
NT32 | 1:e9c99931de4f | 45 | pc.printf("NG\n"); |
NT32 | 0:035867391bd5 | 46 | } |
NT32 | 0:035867391bd5 | 47 | } |
NT32 | 0:035867391bd5 | 48 | } |