Sample for Servomoter (used by LPC1768)
Dependencies: mbed
main.cpp@0:6c4856d10c9f, 2016-10-24 (annotated)
- Committer:
- mikawataru
- Date:
- Mon Oct 24 17:00:55 2016 +0000
- Revision:
- 0:6c4856d10c9f
Sample for Servomoter
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mikawataru | 0:6c4856d10c9f | 1 | //Servo test01 |
mikawataru | 0:6c4856d10c9f | 2 | // Servo basic test |
mikawataru | 0:6c4856d10c9f | 3 | |
mikawataru | 0:6c4856d10c9f | 4 | #include "mbed.h" |
mikawataru | 0:6c4856d10c9f | 5 | |
mikawataru | 0:6c4856d10c9f | 6 | |
mikawataru | 0:6c4856d10c9f | 7 | #define ON |
mikawataru | 0:6c4856d10c9f | 8 | #define OFF 0 |
mikawataru | 0:6c4856d10c9f | 9 | |
mikawataru | 0:6c4856d10c9f | 10 | PwmOut servo1(p23); |
mikawataru | 0:6c4856d10c9f | 11 | |
mikawataru | 0:6c4856d10c9f | 12 | int main() { |
mikawataru | 0:6c4856d10c9f | 13 | float pwidth; |
mikawataru | 0:6c4856d10c9f | 14 | servo1.period_ms(20);// pulse cycle = 20ms |
mikawataru | 0:6c4856d10c9f | 15 | |
mikawataru | 0:6c4856d10c9f | 16 | while(1){ |
mikawataru | 0:6c4856d10c9f | 17 | for(pwidth=0.001; pwidth<=0.003; pwidth+=0.000001) { // 1ms ~ 2ms |
mikawataru | 0:6c4856d10c9f | 18 | servo1.pulsewidth(pwidth); // pulse servo out |
mikawataru | 0:6c4856d10c9f | 19 | wait(0.001);} |
mikawataru | 0:6c4856d10c9f | 20 | |
mikawataru | 0:6c4856d10c9f | 21 | for(pwidth=0.003; pwidth>=0.001; pwidth-=0.000001) { // 1ms ~ 2ms |
mikawataru | 0:6c4856d10c9f | 22 | servo1.pulsewidth(pwidth); // pulse servo out |
mikawataru | 0:6c4856d10c9f | 23 | wait(0.001); |
mikawataru | 0:6c4856d10c9f | 24 | |
mikawataru | 0:6c4856d10c9f | 25 | } |
mikawataru | 0:6c4856d10c9f | 26 | }//while |
mikawataru | 0:6c4856d10c9f | 27 | }//main4 |