Salve, ho scritto un semplice programma (OS Windows 10) con processing per affacciarmi a questo linguaggio. Il codice in teoria avrebbe dovuto mandare quando premo un tasto del mouse o '1' o '0' in base a dove viene premuto.
ecco qui il codice:
import processing.serial.*;
Serial myPort;
void setup() {
size(200,200);
String portName = Serial.list()[3];
myPort = new Serial(this, portName, 9600);
}
void draw(){
background(0);
quad(0, 0, 100, 0, 100, 200, 0, 200);
if(mousePressed){
if(mouseX >= 0 && mouseX < 100){
myPort.write('1');
}
else{
myPort.write('0');
}
}
}
Il problema pero è che a processing non va a genio il "3" in questa istruzione String portName = Serial.list()[3];
A quanto ho capito il valore fra le quadre dovrebbe indicare la porta seriale alla quale è connesso arduino, nel mio caso la COM 3; Fattostà che quando eseguo il programma su processing non viene visualizzato cio che dovrebbe, e per di più se cerco di chiudere la nuova finestra essa non risponde, ma provandoci ripetutamente appare una nuova finestra con scritto "Java(TM) Platform SE bynary non risponde", successivamente, dopo aver chiuso quest'ultima finestra mi compare in basso nell'IDEE il seguente errore
Could not run the sketch (Target VM failed to initialize).
Cio invece non si verifica ne al posto del tre inserisco "0" o "1", ma da lo stesso risultato dal 2 in poi.
Spero di aver descritto al meglio i problemi riscontrati.Confido nel vostro aiuto.