import processing.serial.*;
import cc.arduino.*;
Arduino arduino;
int r0 = 0; //value select pin at the 4051 (s0) serve per leggere il mux
int r1 = 0; //value select pin at the 4051 (s1) serve per leggere il mux
int r2 = 0; //value select pin at the 4051 (s2) serve per leggere il mux
int row = 0; // storeing the bin code serve per leggere il mux
int count = 0; // just a count serve per leggere il mux
byte bin[] = {000, 1, 10, 11, 100, 101, 110, 111}; //pin settings for mux's serve per leggere il mux
int mux1[] = {0,0,0,0,0,0,0,0}; //scrivo l'array dei valori che mi da il mux1
int mux2[] = {0,0,0,0,0,0,0,0}; //scrivo l'array dei valori che mi da il mux2
int mux3[] = {0,0,0,0,0,0,0,0}; //scrivo l'array dei valori che mi da il mux3
int mux4[] = {0,0,0,0,0,0,0,0}; //scrivo l'array dei valori che mi da il mux4
void setup()
{
println(Arduino.list());
arduino = new Arduino(this, Arduino.list()[1], 115200);
arduino.pinMode(2, Arduino.OUTPUT);
arduino.pinMode(3, Arduino.OUTPUT);
arduino.pinMode(4, Arduino.OUTPUT);
arduino.pinMode(13, Arduino.OUTPUT);
}
void draw()
{
for (count=0; count<=7; count++)
{
row = bin[count];
r0 = row & 0x01;
r1 = (row>>1) & 0x01;
r2 = (row>>2) & 0x01;
arduino.digitalWrite(2, r0);
arduino.digitalWrite(3, r1);
arduino.digitalWrite(4, r2);
mux1[count] = arduino.analogRead(0); //con analogRead basta mettere il numero del pin analogico
//mux2[count] = arduino.analogRead(1);
//mux3[count] = arduino.analogRead(2);
//mux4[count] = arduino.analogRead(3);
delay(1);
//print(mux1[2]);
// 3 con potenziometro sulla prima entrata per potenziometri sul mux e pin2 digitale attaccato per primo dal basso
// 2 con interruttore sulla seconda entrata per interruttori sul mux
}
//println("");
if (mux1[1] > 255) //se il primo interruttore è acceso, si accende il led
{
arduino.digitalWrite(13, Arduino.HIGH);
}
else
{
arduino.digitalWrite(13, Arduino.LOW);
}
}
questo in processing, mentre in arduino ho caricato l'esempio "StandardFirmata" con un valore del baudrate (una riga che diceva Firmata.begin ecc) superiore (siccome nelle note all'inizio dello sketch avevo letto che la v2 era più vleoce).
comunque io ho scaricato un "processing-arduino 0017" e l'ho scompattato nella cartella di processing. non è che magari è una libreria un po' vecchia, per cui è lento?
comunquesia siccome 4mb/sec mi sembravano un po' pochi, pensavo che succedesse la stessa cosa con arduino.
lo stesso programma che ho caricato su processing, prima lo caricavo su arduino direttamente, e stampavo i valori sulla seriale: accendevo e spegnevo il led senza problemi, la risposta era immediata.
ora invece, alla stessa velocità, almeno dovrebbe essere così, il led mi risponde molto dopo, e anche i valori che stampo in processing sono lenti