v0.1 : Servo Lib

Dependencies:   MeArm Servo mbed

Fork of wizArm_WIZwiki-W7500ECO by Ricky Kwon

Committer:
Ricky_Kwon
Date:
Mon Feb 22 07:33:41 2016 +0000
Revision:
1:ab8c34738e00
Parent:
0:7a4088ccf3bc
Robot Arm Test

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Ricky_Kwon 0:7a4088ccf3bc 1 // Hello World to sweep a servo through its full range
Ricky_Kwon 0:7a4088ccf3bc 2
Ricky_Kwon 0:7a4088ccf3bc 3 #include "mbed.h"
Ricky_Kwon 0:7a4088ccf3bc 4 #include "Servo.h"
Ricky_Kwon 0:7a4088ccf3bc 5
Ricky_Kwon 0:7a4088ccf3bc 6 Servo myservo1(PC_9);
Ricky_Kwon 0:7a4088ccf3bc 7 Servo myservo2(PC_8);
Ricky_Kwon 1:ab8c34738e00 8 Servo myservo3(PC_4);
Ricky_Kwon 0:7a4088ccf3bc 9 Serial pc(USBTX, USBRX);
Ricky_Kwon 0:7a4088ccf3bc 10 int main() {
Ricky_Kwon 0:7a4088ccf3bc 11 char Msg_c;
Ricky_Kwon 0:7a4088ccf3bc 12 pc.baud(115200);
Ricky_Kwon 0:7a4088ccf3bc 13 pc.printf("Hello Servo motor World!\r\n");
Ricky_Kwon 1:ab8c34738e00 14 float degree1, degree2, degree3 = 0;
Ricky_Kwon 0:7a4088ccf3bc 15 float degree = 0;
Ricky_Kwon 0:7a4088ccf3bc 16
Ricky_Kwon 0:7a4088ccf3bc 17 while(1)
Ricky_Kwon 0:7a4088ccf3bc 18 {
Ricky_Kwon 0:7a4088ccf3bc 19 Msg_c = pc.getc();
Ricky_Kwon 0:7a4088ccf3bc 20
Ricky_Kwon 0:7a4088ccf3bc 21 if(Msg_c==0x31)
Ricky_Kwon 0:7a4088ccf3bc 22 {
Ricky_Kwon 1:ab8c34738e00 23 degree = 0;
Ricky_Kwon 0:7a4088ccf3bc 24 pc.printf("1 : %f\r\n", degree);
Ricky_Kwon 0:7a4088ccf3bc 25 myservo1.position(degree);
Ricky_Kwon 0:7a4088ccf3bc 26 myservo2.position(degree);
Ricky_Kwon 1:ab8c34738e00 27 myservo3.position(degree);
Ricky_Kwon 0:7a4088ccf3bc 28 }
Ricky_Kwon 0:7a4088ccf3bc 29 else if(Msg_c=='a')
Ricky_Kwon 0:7a4088ccf3bc 30 {
Ricky_Kwon 1:ab8c34738e00 31 degree1+=2;
Ricky_Kwon 0:7a4088ccf3bc 32 pc.printf("a degree1 : %f\r\n", degree1);
Ricky_Kwon 0:7a4088ccf3bc 33 myservo1.position(degree1);
Ricky_Kwon 0:7a4088ccf3bc 34 }
Ricky_Kwon 0:7a4088ccf3bc 35 else if(Msg_c=='s')
Ricky_Kwon 0:7a4088ccf3bc 36 {
Ricky_Kwon 1:ab8c34738e00 37 degree1-=2;
Ricky_Kwon 0:7a4088ccf3bc 38 pc.printf("s degree1 : %f\r\n", degree1);
Ricky_Kwon 0:7a4088ccf3bc 39 myservo1.position(degree1);
Ricky_Kwon 0:7a4088ccf3bc 40 }
Ricky_Kwon 0:7a4088ccf3bc 41 else if(Msg_c=='z')
Ricky_Kwon 0:7a4088ccf3bc 42 {
Ricky_Kwon 1:ab8c34738e00 43 degree2+=2;
Ricky_Kwon 0:7a4088ccf3bc 44 pc.printf("z degree2 : %f\r\n", degree2);
Ricky_Kwon 0:7a4088ccf3bc 45 myservo2.position(degree2);
Ricky_Kwon 0:7a4088ccf3bc 46 }
Ricky_Kwon 0:7a4088ccf3bc 47 else if(Msg_c=='x')
Ricky_Kwon 0:7a4088ccf3bc 48 {
Ricky_Kwon 1:ab8c34738e00 49 degree2-=2;
Ricky_Kwon 0:7a4088ccf3bc 50 pc.printf("x degree2 : %f\r\n", degree2);
Ricky_Kwon 0:7a4088ccf3bc 51 myservo2.position(degree2);
Ricky_Kwon 0:7a4088ccf3bc 52 }
Ricky_Kwon 1:ab8c34738e00 53 else if(Msg_c=='c')
Ricky_Kwon 1:ab8c34738e00 54 {
Ricky_Kwon 1:ab8c34738e00 55 degree3+=2;
Ricky_Kwon 1:ab8c34738e00 56 pc.printf("c degree3 : %f\r\n", degree3);
Ricky_Kwon 1:ab8c34738e00 57 myservo3.position(degree3);
Ricky_Kwon 1:ab8c34738e00 58 }
Ricky_Kwon 1:ab8c34738e00 59 else if(Msg_c=='v')
Ricky_Kwon 1:ab8c34738e00 60 {
Ricky_Kwon 1:ab8c34738e00 61 degree3-=2;
Ricky_Kwon 1:ab8c34738e00 62 pc.printf("v degree3 : %f\r\n", degree3);
Ricky_Kwon 1:ab8c34738e00 63 myservo3.position(degree3);
Ricky_Kwon 1:ab8c34738e00 64 }
Ricky_Kwon 0:7a4088ccf3bc 65 }
Ricky_Kwon 0:7a4088ccf3bc 66
Ricky_Kwon 0:7a4088ccf3bc 67 }
Ricky_Kwon 0:7a4088ccf3bc 68
Ricky_Kwon 0:7a4088ccf3bc 69