Servo Motor Example for electric skateboard
Fork of Servo_HelloWorld by
main.cpp@2:265f6c40ef23, 2015-10-29 (annotated)
- Committer:
- kaizen
- Date:
- Thu Oct 29 05:36:03 2015 +0000
- Revision:
- 2:265f6c40ef23
- Parent:
- 1:40d2fd0b99e6
First application using servo motor for me
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
simon | 1:40d2fd0b99e6 | 1 | #include "mbed.h" |
simon | 1:40d2fd0b99e6 | 2 | #include "Servo.h" |
simon | 1:40d2fd0b99e6 | 3 | |
kaizen | 2:265f6c40ef23 | 4 | int main() { |
kaizen | 2:265f6c40ef23 | 5 | uint8_t ch; |
kaizen | 2:265f6c40ef23 | 6 | volatile float speed_value = 0.5; |
kaizen | 2:265f6c40ef23 | 7 | |
kaizen | 2:265f6c40ef23 | 8 | Servo myservo(PC_8); |
kaizen | 2:265f6c40ef23 | 9 | Serial pc(USBTX,USBRX); |
kaizen | 2:265f6c40ef23 | 10 | |
kaizen | 2:265f6c40ef23 | 11 | pc.baud(115200); |
kaizen | 2:265f6c40ef23 | 12 | wait(1); |
kaizen | 2:265f6c40ef23 | 13 | pc.printf("TEST Start\r\n"); |
kaizen | 2:265f6c40ef23 | 14 | |
kaizen | 2:265f6c40ef23 | 15 | while(1) |
kaizen | 2:265f6c40ef23 | 16 | { |
kaizen | 2:265f6c40ef23 | 17 | pc.printf("speed : %f\r\n",speed_value); |
kaizen | 2:265f6c40ef23 | 18 | myservo = speed_value; |
simon | 1:40d2fd0b99e6 | 19 | |
kaizen | 2:265f6c40ef23 | 20 | ch = pc.getc(); |
kaizen | 2:265f6c40ef23 | 21 | |
kaizen | 2:265f6c40ef23 | 22 | if(ch == 'u') |
kaizen | 2:265f6c40ef23 | 23 | { |
kaizen | 2:265f6c40ef23 | 24 | speed_value += 0.001; |
kaizen | 2:265f6c40ef23 | 25 | } |
kaizen | 2:265f6c40ef23 | 26 | else if(ch == 'd') |
kaizen | 2:265f6c40ef23 | 27 | { |
kaizen | 2:265f6c40ef23 | 28 | speed_value -= 0.001; |
kaizen | 2:265f6c40ef23 | 29 | } |
kaizen | 2:265f6c40ef23 | 30 | |
kaizen | 2:265f6c40ef23 | 31 | else if(ch == 's') |
kaizen | 2:265f6c40ef23 | 32 | { |
kaizen | 2:265f6c40ef23 | 33 | myservo = 0.5; |
kaizen | 2:265f6c40ef23 | 34 | wait(0.5); |
kaizen | 2:265f6c40ef23 | 35 | |
kaizen | 2:265f6c40ef23 | 36 | speed_value = 0.41; |
kaizen | 2:265f6c40ef23 | 37 | myservo = speed_value; |
kaizen | 2:265f6c40ef23 | 38 | wait(5); |
kaizen | 2:265f6c40ef23 | 39 | |
kaizen | 2:265f6c40ef23 | 40 | speed_value = 0.5; |
kaizen | 2:265f6c40ef23 | 41 | myservo = speed_value; |
kaizen | 2:265f6c40ef23 | 42 | |
kaizen | 2:265f6c40ef23 | 43 | } |
simon | 1:40d2fd0b99e6 | 44 | } |
simon | 1:40d2fd0b99e6 | 45 | } |