malin
Dependencies: Servo mbed mbed-rtos
main.cpp@2:68dbcd5277e4, 2018-04-01 (annotated)
- Committer:
- Khanchana
- Date:
- Sun Apr 01 14:12:15 2018 +0000
- Revision:
- 2:68dbcd5277e4
- Parent:
- 1:da79761252bc
- Child:
- 3:64bfd330beb4
Servo without thread
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Khanchana | 0:596de9a5c573 | 1 | #include "mbed.h" |
Khanchana | 0:596de9a5c573 | 2 | #include "Servo.h" |
Khanchana | 1:da79761252bc | 3 | #include "rtos.h" |
Khanchana | 2:68dbcd5277e4 | 4 | |
Khanchana | 2:68dbcd5277e4 | 5 | Serial pc(USBTX, USBRX); |
Khanchana | 0:596de9a5c573 | 6 | |
Khanchana | 2:68dbcd5277e4 | 7 | Servo Servo1(D6); |
Khanchana | 2:68dbcd5277e4 | 8 | Servo Servo2(D8); |
Khanchana | 1:da79761252bc | 9 | Servo Servo3(D9); |
Khanchana | 2:68dbcd5277e4 | 10 | Servo Servo4(D10); |
Khanchana | 2:68dbcd5277e4 | 11 | |
Khanchana | 2:68dbcd5277e4 | 12 | void myservoLeft(); |
Khanchana | 1:da79761252bc | 13 | |
Khanchana | 2:68dbcd5277e4 | 14 | int pos_down = 1400; |
Khanchana | 2:68dbcd5277e4 | 15 | int pos_up = 1000; |
Khanchana | 2:68dbcd5277e4 | 16 | int pos_down_end = 1700; |
Khanchana | 2:68dbcd5277e4 | 17 | int pos_up_end = 1700; |
Khanchana | 2:68dbcd5277e4 | 18 | |
Khanchana | 2:68dbcd5277e4 | 19 | int main() { |
Khanchana | 2:68dbcd5277e4 | 20 | pc.baud(9600); |
Khanchana | 2:68dbcd5277e4 | 21 | wait(5); |
Khanchana | 2:68dbcd5277e4 | 22 | Servo1.Enable(1000,2000); |
Khanchana | 2:68dbcd5277e4 | 23 | Servo2.Enable(1000,2000); |
Khanchana | 2:68dbcd5277e4 | 24 | Servo3.Enable(1000,2000); |
Khanchana | 2:68dbcd5277e4 | 25 | Servo4.Enable(1000,2000); |
Khanchana | 1:da79761252bc | 26 | while(1){ |
Khanchana | 2:68dbcd5277e4 | 27 | myservoLeft(); |
Khanchana | 2:68dbcd5277e4 | 28 | if(pos_down <= pos_down_end and pos_up == 1000){ |
Khanchana | 2:68dbcd5277e4 | 29 | Servo1.SetPosition(pos_down); |
Khanchana | 2:68dbcd5277e4 | 30 | pos_down = pos_down+2; |
Khanchana | 1:da79761252bc | 31 | } |
Khanchana | 2:68dbcd5277e4 | 32 | else if(pos_down == pos_down_end+2 and pos_up <= 1700){ |
Khanchana | 2:68dbcd5277e4 | 33 | Servo2.SetPosition(pos_up); |
Khanchana | 2:68dbcd5277e4 | 34 | pos_up = pos_up+2; |
Khanchana | 1:da79761252bc | 35 | } |
Khanchana | 2:68dbcd5277e4 | 36 | else if(pos_down >= 1400 and pos_up == pos_up_end+2){ |
Khanchana | 2:68dbcd5277e4 | 37 | Servo1.SetPosition(pos_down); |
Khanchana | 2:68dbcd5277e4 | 38 | pos_down = pos_down-2; |
Khanchana | 1:da79761252bc | 39 | } |
Khanchana | 2:68dbcd5277e4 | 40 | else if(pos_down == 1398 and pos_up > 1000){ |
Khanchana | 2:68dbcd5277e4 | 41 | Servo2.SetPosition(pos_up); |
Khanchana | 2:68dbcd5277e4 | 42 | pos_up = pos_up-2; |
Khanchana | 2:68dbcd5277e4 | 43 | } |
Khanchana | 1:da79761252bc | 44 | } |
Khanchana | 1:da79761252bc | 45 | } |
Khanchana | 2:68dbcd5277e4 | 46 | |
Khanchana | 2:68dbcd5277e4 | 47 | void myservoLeft() |
Khanchana | 2:68dbcd5277e4 | 48 | { |
Khanchana | 2:68dbcd5277e4 | 49 | if(pos_down <= pos_down_end and pos_up == 1000){ |
Khanchana | 2:68dbcd5277e4 | 50 | Servo3.SetPosition(pos_down); |
Khanchana | 2:68dbcd5277e4 | 51 | pos_down = pos_down+2; |
Khanchana | 0:596de9a5c573 | 52 | } |
Khanchana | 2:68dbcd5277e4 | 53 | else if(pos_down == pos_down_end+2 and pos_up <= 1700){ |
Khanchana | 2:68dbcd5277e4 | 54 | Servo4.SetPosition(pos_up); |
Khanchana | 2:68dbcd5277e4 | 55 | pos_up = pos_up+2; |
Khanchana | 0:596de9a5c573 | 56 | } |
Khanchana | 2:68dbcd5277e4 | 57 | else if(pos_down >= 1400 and pos_up == pos_up_end+2){ |
Khanchana | 2:68dbcd5277e4 | 58 | Servo3.SetPosition(pos_down); |
Khanchana | 2:68dbcd5277e4 | 59 | pos_down = pos_down-2; |
Khanchana | 1:da79761252bc | 60 | } |
Khanchana | 2:68dbcd5277e4 | 61 | else if(pos_down == 1398 and pos_up > 1000){ |
Khanchana | 2:68dbcd5277e4 | 62 | Servo4.SetPosition(pos_up); |
Khanchana | 2:68dbcd5277e4 | 63 | pos_up = pos_up-2; |
Khanchana | 2:68dbcd5277e4 | 64 | } |
Khanchana | 2:68dbcd5277e4 | 65 | } |