Buongiorno a tutti,
Dopo tante prove, mi rivolgo a voi per un suggerimento.
Ho scritto un semplicissimo programma che mi permette di interfacciami con Arduino. Invia, ogni due secondi circa la temperatura e l'umidità.
Utilizzo la libreria jserialcomm versione 2.9.2 , per comunicare.
Scrivo la classica routine di ricezione :
@Override
public void serialEvent(SerialPortEvent event) {
int size = event.getSerialPort().bytesAvailable();
byte[] buffer = new byte[size];
for(byte b:buffer){
System.out.print((char)b);
ricevuto = ricevuto + (char)b;
}//end for
Come si può vedere , oltre a stampare nella console dell'IDE(tutto bene) memorizzo la stringa ricevuta in una variabile(ricevuto), per le elaborazioni successive.
Il problema è che non riuscendo a resettare il buffer di ricezione, la variabile, ricevuto, diventa sempre più capiente e di conseguenza non riesco a fare le elaborazioni come si deve.
Mi rivolgo al forum, per un suggerimento di come affrontare il problema.
Grazie
Nicholas