Go Down

Topic: Firmata + Java (Read 422 times) previous topic - next topic

guigs63

Jan 29, 2013, 06:56 pm Last Edit: Jan 29, 2013, 11:33 pm by guigs63 Reason: 1
Bonjour,

Voilà un petit moment que je cherche et je tourne en rond à ce sujet. A savoir d'utiliser la bibliothèque Firmata pour communiquer avec mon Arduino.
J'ai déjà réussi à faire un programme qui fait communiquer les deux parties en utilisant RxTx, cependant je n'ai pas envie de réinventer la roue et recréer un protocole maison pour faire la communication.
Du coup je me suis dis que Firmata pouvait être une bonne solution pour faire ce que je veux.

Pour situer ce que je veux faire, j'ai un programme Java qui récupère la position de mon joystick et je les envoi à l'Arduino. Pour vérifier que l'Arduino récupère les bonnes valeurs je veux qu'ils les retournent à mon programme Java.

Voici mon code Arduino (Prog de base d'echo Firmata)

Code: [Select]

#include <Firmata.h>

byte analogPin;

void stringCallback(char *myString)
{
   Firmata.sendString(myString);
}


void sysexCallback(byte command, byte argc, byte*argv)
{
   Firmata.sendSysex(command, argc, argv);
}

void setup()
{
   Firmata.setFirmwareVersion(0, 1);
   Firmata.attach(STRING_DATA, stringCallback);
   Firmata.attach(START_SYSEX, sysexCallback);
   Firmata.begin(57600);
}

void loop()
{
   while(Firmata.available()) {
       Firmata.processInput();
   }
}


Et voici la Fonction SerialEvent de mon Prog Java

Code: [Select]

/**
* Handle an event on the serial port. Read the data and print it.
*/
public synchronized void serialEvent(SerialPortEvent oEvent) {
if (oEvent.getEventType() == SerialPortEvent.DATA_AVAILABLE) {
try {
String inputLine=input.readLine();
System.out.println(inputLine);
} catch (Exception e) {
System.err.println(e.toString());
}
}
// Ignore all the other eventTypes, but you should consider the other ones.
}


SerialEvent est bien appelé mais rien ne s'affiche dans la console.

Si quelqu'un à une idée ou une autre solution que d'utiliser Firmata.

Merci d'avance.

B@tto

Rapport avec "Tutoriels et cours" ?
Blog électronique : http://battomicro.wordpress.com/
Photographie : www.interactive-celebration.fr

Go Up