サーボモータの動作確認プログラム

Dependencies:   mbed

Committer:
usshi
Date:
Tue May 29 08:00:38 2018 +0000
Revision:
0:19d128ee3b65
Child:
1:0e1cdc344b27
???????????????

Who changed what in which revision?

UserRevisionLine numberNew contents of line
usshi 0:19d128ee3b65 1 #include "mbed.h"
usshi 0:19d128ee3b65 2
usshi 0:19d128ee3b65 3 PwmOut servo(p21);
usshi 0:19d128ee3b65 4 Serial pc(USBTX,USBRX);
usshi 0:19d128ee3b65 5
usshi 0:19d128ee3b65 6 float calc(float);
usshi 0:19d128ee3b65 7 int main()
usshi 0:19d128ee3b65 8 {
usshi 0:19d128ee3b65 9 float a,b;
usshi 0:19d128ee3b65 10 servo.period_ms(20);
usshi 0:19d128ee3b65 11 wait_ms(100);
usshi 0:19d128ee3b65 12 pc.printf("\r\n---servo test---\n\r");
usshi 0:19d128ee3b65 13 while(1) {
usshi 0:19d128ee3b65 14 pc.printf("degree(-90~90) : ");
usshi 0:19d128ee3b65 15 scanf("%f",&a);
usshi 0:19d128ee3b65 16 if(-90<=a&&a<=90) {
usshi 0:19d128ee3b65 17 b=calc(a);
usshi 0:19d128ee3b65 18 printf("%f PWM:%f\r\n",a,b);
usshi 0:19d128ee3b65 19 servo.pulsewidth(b);
usshi 0:19d128ee3b65 20 } else {
usshi 0:19d128ee3b65 21 break;
usshi 0:19d128ee3b65 22 }
usshi 0:19d128ee3b65 23 }
usshi 0:19d128ee3b65 24 return 0;
usshi 0:19d128ee3b65 25 }
usshi 0:19d128ee3b65 26
usshi 0:19d128ee3b65 27 float calc(float x)
usshi 0:19d128ee3b65 28 {
usshi 0:19d128ee3b65 29 return (1.45+(2.4-0.5)/180*x)/1000;
usshi 0:19d128ee3b65 30 }