Pages: 1 [2]   Go Down
Author Topic: funzione micros() con processing -- comunicazione seriale  (Read 1779 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Shannon Member
****
Karma: 117
Posts: 10112
:(){:|:&};: TOX id: fcb8e918bef08581e23f6ddf9d4dba77697c25b217bf372736ed959a95fde36df5b8c5b90fbb
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

int num = Integer.parseInt(stringa);
(però è java, on ricordo se va anche in processing)
Logged

my Arduino code: https://github.com/lestofante/arduinoSketch
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Offline Offline
Full Member
***
Karma: 1
Posts: 160
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

niente, ho provato ma genera un'eccezione causata dall aver letto come valore '0'

edit: ho provato anche ad usare la funzione int(string) ma mi restituisce il valore zero
« Last Edit: December 10, 2012, 08:23:18 am by aureliusss » Logged

0
Offline Offline
Shannon Member
****
Karma: 117
Posts: 10112
:(){:|:&};: TOX id: fcb8e918bef08581e23f6ddf9d4dba77697c25b217bf372736ed959a95fde36df5b8c5b90fbb
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

mostra il codeice si errore, probabilmen quello non è no zero ma uno spazio+zero o simili (\n, \r, \t etc..), e quindi va in errore. fai così:
int num = Integer.parseInt( stringa.trim() );
dovrebbe funzionare nella maggior parte dei casi sopracitati.
Logged

my Arduino code: https://github.com/lestofante/arduinoSketch
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Offline Offline
Full Member
***
Karma: 1
Posts: 160
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

sono riuscito ad impostare la comunicazione, ma adesso ho un problema lato processing:
invio i dati da arduino a processing con successo, ma non riesco a salvarli negli appositi array per poi analizzarli e plottarli
questo il serialEvent di processing
Code:
void serialEvent(Serial port) {
  measure = commPort.readStringUntil('\n'); //leggo l'intera stringa con i dati, divisi da virgole

  int i=0; //contatore per scorrere gli array
  if (measure != null) {

    String[] valori_misura = new String[5];
    valori_misura = split(measure, ","); //divido la stringa in cinque parti(sono  i cinque i dati che ricevo)

    ps_voltage = parseFloat(valori_misura[0].trim()); //trasformo il valore da stringa a float
    PS_VOLTAGE[i]=ps_voltage; //metto il valore così letto nell'array

    c_voltage = parseFloat(valori_misura[1].trim());
    C_VOLTAGE[i] = c_voltage;
   
    current = parseFloat(valori_misura[2].trim());
    CURRENT[i] = current;
 
    ps_time = parseInt(valori_misura[3].trim());
    PS_TIME[i] = ps_time;
 
    c_time = parseInt(valori_misura[4].trim());
    C_TIME[i]=c_time;

    i++; //aggiorno l'indice dell'array
  }
}


con questo codice pensavo di poter fare riuscire  a salvare i dati negli array, ma se faccio una semplice prova di stampa vedo che salva un'unico valore per tutto l'array.

Logged

Pages: 1 [2]   Go Up
Jump to: