Pages: [1]   Go Down
Author Topic: Firmata + Java  (Read 379 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 6
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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:
#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:
/**
* 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.
« Last Edit: January 29, 2013, 05:33:50 pm by guigs63 » Logged

Ales
Offline Offline
Faraday Member
**
Karma: 39
Posts: 3839
Do or DIY
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Rapport avec "Tutoriels et cours" ?
Logged


Pages: [1]   Go Up
Jump to: