Bonjour à tous!
Je développe une interface pour récupérer les signaux de 4 capteurs dans pure data avec une arduino.
J'ai une erreur un peu étrange:
Au démarrage de l'ordi et du patch pd, l'arduino envoie des messages illisibles, mais lorsque j'utilise le serial monitor du logiciel arduino, tout rentre dans l'ordre pour pure data.
Quelqu'un sait-il si je dois envoyer un message à l'arduino pour initialiser la communication série?
Voici le code arduino:
void setup() { Serial.begin(115200); } void loop() { Serial.print("A "); Serial.println(analogRead(A0), DEC); Serial.print("B "); Serial.println(analogRead(A1), DEC); Serial.print("C "); Serial.println(analogRead(A2), DEC); Serial.print("D "); Serial.println(analogRead(A3), DEC); Serial.print("E "); Serial.println(analogRead(A4), DEC); Serial.print("F "); Serial.println(analogRead(A5), DEC); delay(20); }
Hors ligne
Il vaut mieux travailler sur un protocole. Un truc qui encode en byte les informations.
Sinon pour du tout prêt, sans traitement interne à l'arduino, il y a Firmata : http://firmata.org/wiki/Main_Page
Hors ligne
Le problème est résolu!
Bizarrement, serial.Println n'écrit pas de retour chariot (ASCII 13) comme il devrait le faire, mais uniquement des changements de ligne (ASCII 10). Dans le patch pd, il suffit de se servir des changements de ligne pour séparer les différents messages.
Hors ligne