Bat Ear Code
/
multiServoBat
Fork of multiServoBat by
main.cpp
- Committer:
- aluthe3099
- Date:
- 2019-07-31
- Revision:
- 0:afc37ce56e1f
- Child:
- 1:829cbbaeaf32
File content as of revision 0:afc37ce56e1f:
#include "mbed.h" #include "Servo.h" DigitalOut myled(LED2), myled2(LED1), led3(LED3); Servo servo1(p24), servo2(p23), servo3(p22), servo4(p21); int numServos = 4; float range = 0.0005; float degrees = 45.0; void together(Servo * servoPtr) { int i,j; for(i = 0.0; i<1.00; i+=0.01) { for(j = 0; j<numServos; j++) { servoPtr[j] = i; } wait(0.01); } wait(5); for(i = 1.0; i>0.00; i-=0.01) { for(j = 0; j<numServos; j++) { servoPtr[j] = i; } wait(0.01); } printf("finished one of together\n"); } void apart1 (Servo * servoPtr) { int i,j; for(i = 0.0; i<1.00; i+=0.01) { for(j = 0; j<numServos; j++) { if(j%1 == 0) { servoPtr[j] = i; } } wait(0.01); } wait(5); for(i = 1.0; i>0.00; i-=0.01) { if(j%1 == 0) { servoPtr[j] = i; } wait(0.01); } printf("finished one of together\n"); } int main() { myled = 1; wait(2); myled = 0; myled2 = 1; wait(2); myled2 = 0; led3 = 1; wait(2); led3 = 0; Servo servoArr [] = {servo1, servo2, servo3, servo4}; Servo *servoPtr; int x; //for(x = 0; x<numServos; x++) // { // myled = 1; // servoArr[x].calibrate(range, degrees); // } myled = 0; myled2 = 0; servoPtr = servoArr; //while(1) { for(x = 0; x<10; x++){ myled = 0; myled2 = 1; wait(2); int i,j; for(i = 0.0; i<1.00; i+=0.01) { for(j = 0; j<numServos; j++) { servoPtr[j] = i; } wait(0.01); } myled = 1; myled2 = 0; wait(5); for(i = 1.0; i>0.00; i-=0.01) { for(j = 0; j<numServos; j++) { servoPtr[j] = i; } wait(0.01); } wait(5); myled = 0; myled2 = 1; wait(2); for(i = 0.0; i<1.0; i+=0.01) { servoPtr[1] = i; wait(0.01); } wait(2); for(i = 1.0; i>0.0; i-=0.01) { servoPtr[1] = i; wait(0.01); } wait(4); //together(servoPtr); //wait(10); //apart1(servoPtr); } }