salve , mi servirebbe aiuto riguardo processing , in particolare la libreria serial, non riesco a farla funzionare , o meglio mi da sempre un errore , ringrazio in anticipo, un saluto a tutti , grazie.
Che bello!! un altro quiz da indovinare.
Ma pensi che siamo veggenti o che abbiamo una sfera di cristallo per sapere il Tuo programma e il mesaggio di errore che ricevi?
Ciao Uwe
Ovvero:
http://arduino.cc/forum/index.php/topic,91560.0.html
Quindi:
- quale versione di Processing? (2.08 o 1.5?)
- quale Arduino?
- quale errore?
- il codice del programma che da errore
- Quale Windows usi, 32 o 64 bit? (pare che su win 7 64 bit ci siano problemi, a me funziona)
nid69ita:
Ovvero:
http://arduino.cc/forum/index.php/topic,91560.0.html
Ovvero:
http://arduino.cc/forum/index.php/topic,149082.0.html
Questo è il nuovo regolamento ufficiale di tutto il forum, non solo della sezione italiana.
L'altro è diventato, diciamo, una raccolta di linee guida, di approfondimento.
confermo che su win7 64 da problemi con la seriale, lo dice chiaramente.
per funzionare bisogna scaricare la versione 1.5.1
Io ho provato solo a lanciare su win7 a 64 bit e non mi da errori (uno sketch semplice, senza G4P).
NON ho spedito dati sulla seriale, ma solo lanciato il programma che poi non fa nulla perchè sul pc dove ho provato non ho l'arduino collegato.
Mi sembrava di capire che dava già errori in fase di run oppure quando si spediscono dati?
a me li da subito in fase di run.
mi scrive chiaramente che la seriale non funziona con sistemi a 64 bit.
Processing si appoggia al JSDK (della oracle). Quale versione hai ?
whteice:
a me li da subito in fase di run.
mi scrive chiaramente che la seriale non funziona con sistemi a 64 bit.
sì, il problema sta nella libreria RXTX. devi sostituire la RXTX.jar e la corrispondente native (non ricordo il nome) con quelli presenti nell'ide di arduino
per ora ho installato tutto su un win xp 32 bit e va.
Nel pomeriggio provo le soluzioni per il 64 proposte e vi faccio sapere.
grazie
vi ringazio molto per le risposte , scusate non siete oracoli , ed io son stato molto vago .
quindi mi spiego meglio , ho scaricato processing versione 2.0b8 uso windows xp 32 bit, arduino mega classico , poi su questa pagina :
http://scuola.arduino.cc/it/content/realizziamo-uninterfaccia-grafica-modulo-giroscopio-tinkerkit
ho trovato un programma per testare un giroscopio con la piattaforma di processing , ho copiato il programma in un nuovo progetto processing
a questo punto ho fatto run per vedere se funzionava ,senza collegare arduino .
ma a questo punto mi è uscito un messaggio di errore che metto qui sotto :
arrayindexoutofboundsexception:0
stable library
natile lib version = rxtx -2.1-7
java lib version = rxtx -2.1-7
credo che sia una questione di liberia o qualcosa di java non compatibile , questo errore me lo da tutte le volte che cerco di usare una libreria seiale
ringrazio tutti in anticipo .
nono, l'errore è
arrayindexoutofboundsexception:0
traduzione: al contrario del C, java controlla che tu non stia andando a scrivere FUORI dall'array.
A questo punto io so che oltre a quell'errore dovrebbe esserti uscito mooolto altro, ovvero lo sta-trace dell'errore, ovvero la linea di codice che a generato l'errore e tutte le funzioni che sono state chiamate per arrivare fino a quella istruzione.
PROBABILMENTE l'errore sta quì:
String portName = Serial.list()[0];
ovvero lui cerca l'elenco delle seriali ( Serial.list() ) e vuole ottenere la prima ( [0] )... ma a quantopare nella lista non c'è nulla. prova questo codice:
import processing.serial.*;
// The serial port:
Serial myPort;
void setup()
{
println("NUMERO PORTE SERIALI TROVATE: "+Serial.list().lenght);
println("Ecco l'elenco:");
println(Serial.list());
}
lesto:
whteice:
a me li da subito in fase di run.
mi scrive chiaramente che la seriale non funziona con sistemi a 64 bit.sì, il problema sta nella libreria RXTX. devi sostituire la RXTX.jar e la corrispondente native (non ricordo il nome) con quelli presenti nell'ide di arduino
ho fatto le prove,
le librerie si scaricano da qui http://www.cloudhopper.com/opensource/rxtx/
e poi tutto funziona.
Se si fa l'esportazione però bisogna comunque usare la versione nella cartella windows32, quella in windows64 non va.
grazie
marcom10:
,senza collegare arduino .
è che ti da errore se non trova nulla sulla porta seriale, credo.
whteice:
per ora ho installato tutto su un win xp 32 bit e va.
Nel pomeriggio provo le soluzioni per il 64 proposte e vi faccio sapere.
grazie
Attenzione fai un errore comune. La versione non riguarda solo windows ma java. Se su win64 installi java32, di default è cosi, non ti funziona la rxtx 64.
Devi avere win64+java64+rxtx64
purtroppo anche così
dopo l'export mi da errore
mi apre una finestra dos conscritto
xception in thread "Animation Thread" java.lang.ArrayIndexOutOfBoundsException:
0
at controllo_ricette_birra2_0.setup(controllo_ricette_birra2_0.java:33)
at processing.core.PApplet.handleDraw(PApplet.java:2241)
at processing.core.PGraphicsJava2D.requestDraw(PGraphicsJava2D.java:243)
at processing.core.PApplet.run(PApplet.java:2140)
at java.lang.Thread.run(Unknown Source)
e perche' pensi che sei colpa della seriale ? sembra l'errore di cui parlava lesto
il java32 lo hai disinstallato ? non vorrei che avendoli entrambi processing va ad usare quello a 32
l'errore è quì:
at controllo_ricette_birra2_0.setup(controllo_ricette_birra2_0.java:33)
nel file "controllo_ricette_birra2_0.java" riga 33, classe "controllo_ricette_birra2_0", metodo "setup"
metodo chiamato dal thread Animation Thread (quindi thread grafico... uhmm sento puzza di bruttura mavabè), l'errore è un "java.lang.ArrayIndexOutOfBoundsException" ovvero hai cercato di accedere ad una cella di array che non esiste.
posta il codice del file se non riesci a risolvere
non credo che sia un errore del file perchè se apro l'export per win32 anche sul 64 funziona benissimo!
Testato:
e perche' pensi che sei colpa della seriale ? sembra l'errore di cui parlava lesto
il java32 lo hai disinstallato ? non vorrei che avendoli entrambi processing va ad usare quello a 32
no non l'ho disinstallato più tardi provo e vi faccio sapere
non è un errore del file, ma del programma che contiene. esso non viene generato durante la fase di import /export, ma all'avvio del programma.
Stai facendo un sacco di confusione. Descrivi bene i passi che fai