Analyse serieller string-Daten in ein array (VVVV zum Arduino)

Zur Zeit arbeite ich an einem arduino-Projekt an der Universität. Im Grunde, was ich versuche zu tun, ist senden Sie einen string von Daten von VVVV zu arduino, aber ich brauche, um Daten zu Parsen und in ein array und ich habe absolut keine Idee, wie dies zu tun!

Den string gesendet von VVVV ist so etwas wie das; U,c,R,|,W,H,P und I müssen jeder der Werte, die geschrieben werden, um ein bestimmtes servo jedes mal, also Wert 1 zu gehen, um zu servo 1, und so weiter.

Hier ist mein code im moment, ich merke, dass die codierte ziemlich schlecht, und habe ich vor zu machen, um es effizienter, wenn ich herausgefunden, wie man die Daten analysieren.

#include <Servo.h>
Servo servo1;
Servo servo2;
Servo servo3;
Servo servo4;

char array1[4] = { '0', '0', '0', '0'}; //array for midi variables

void setup()
{
 //begin the serial communication
 Serial.begin(9600);

 servo1.attach(2);
 servo2.attach(3);
 servo3.attach(4);
 servo4.attach(5);

}

void loop(){
  while (Serial.available() == 0)  {
    array1[0] = 0;
    array1[1] = 0;
    array1[2] = 0;
    array1[3] = 0;
  }

{


 //check if data has been sent from the computer
 if (Serial.available() >= 4) {
    for ( int i = 0; i < 4; i++)
    array1[i] = Serial.read();


  }


   Serial.print(array1[0]);
   Serial.print(array1[1]);
   Serial.print(array1[2]);
   Serial.print(array1[3]);



   servo1.write(array1[0]);
   servo2.write(array1[1]);
   servo3.write(array1[2]);
   servo4.write(array1[3]);


}
}

Edit - ich sollte wohl erwähnen, dass ich bin schließlich auf der Suche mit 7 servos, aber für den moment bin ich nur mit 4 in meiner Schaltung. Auch, wenn ich lade diesen patch und aktivieren VVVV, arduino, nur die Verbindung trennt.

InformationsquelleAutor thatseika | 2012-05-06
Schreibe einen Kommentar