Advertisement
Fede

ServoA

Oct 24th, 2013
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.67 KB | None | 0 0
  1. #include <Servo.h>
  2. Servo SG;
  3. Servo DS;
  4.  
  5. char toDo;
  6.  
  7. // @ -> su
  8. // # -> giù
  9. // * -> destra
  10. // + -> sinistra
  11.  
  12. void setup() {
  13.  
  14.   Serial.begin(9600);                    // Start serial communication at 9600 bps
  15.   while(Serial.read()!='@'){
  16.     Serial.write("#");            // trova automaticamente la porta (snellito)
  17.   }
  18.   Serial.write("\n\n Online..");
  19.   delay(1000);
  20.  
  21.   SG.attach(10,544,2400);
  22.   DS.attach(11,544,2400);
  23.   SG.write(90);
  24.   DS.write(90);
  25.   delay(3.11*180);
  26.  
  27.   Serial.flush();
  28. }
  29.  
  30. void loop() {
  31.  
  32.   if(Serial.available()>0){  
  33.    
  34.     toDo=Serial.read();    
  35.    
  36.     if(toDo=='@'){
  37.       SG.write(SG.read()+10);  //10 è puramente indicativo, non ho arduini per testare
  38.     }                          // probabilmente andrà modificato fino a trovare quel valore
  39.     else if(toDo=='#'){        //per il quale i servo si muovono in sincronia con quello che invia
  40.       SG.write(SG.read()-10);  // il processing. Altrimenti, cosa che preferisco, conviene farsi
  41.     }                          //una funzione per calibrare gli spostamenti e anticipare al pc
  42.     else if(toDo=='*'){        //che dovrà smettere di inviare segnali perché è già arrivato.
  43.       DS.write(DS.read()+10);  //Altrimenti la lampada rimane fluttuante attorno al viso.
  44.     }
  45.     else if(toDo=='+'){
  46.       DS.write(DS.read()-10);   // in linea di massima funziona, è ciò che avevo fatto per l'allarme e funzionava bene,
  47.     }                           // ma in questo caso i dati sulla porta sono molti di più e senza testare non so se
  48.   }                             // ci sia qualcosa da modificare (ovviamente ci sarà qualcosa da modificare).
  49.  
  50.   delay(10);
  51.  
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement