Ciao Ragazzi, sto cercando di escogitare un metodo per ricevere continuamente, via seriale, i valori di 3 Array bidimensionali:
boolean REDvalue[4][4] = {
{true,true,true,true},
{true,true,true,true},
{false,false,false,false},
{true,true,true,true}
};
boolean GREENvalue[4][4] = {
{true,true,true,true},
{false,false,false,false},
{true,true,true,true},
{true,true,true,true}
};
boolean BLUEvalue[4][4] = {
{false,false,false,false},
{true,true,true,true},
{true,true,true,true},
{true,true,true,true}
};
Vorrei fare in modo di ricevere in continuazione, via seriale, tutti i valori di quegli array binari (booleani),
un idea ce l'avrei, usare un 3 cicli for che da 0 a 3, mettano ti valori di ogni fila dell'array, assegnandoli al valore serial read:
void loop() {
// send data only when you receive data:
if (Serial.available() > 0) {
for(n2=0; n2<4; n2++){
for(n=0; n<4; n++) {
REDvalue[n2][n] = Serial.read();
}
}
for(n2=0; n2<4; n2++){
for(n=0; n<4; n++) {
BLUEvalue[n2][n] = Serial.read();
}
}
for(n2=0; n2<4; n2++){
for(n=0; n<4; n++) {
GREENvalue[n2][n] = Serial.read();
}
}
}
}
Non l'ho ancora provato, prima devo creare un programma in c++ che controlli quelle variabili dal pc, comunque, in teoria dovrebbe funzionare, però non so come faccia a riconoscere quale dei valori inviati dal computer sia quello giusto, e che quindi magari riceva valori sfasati, e non sincronizzati, che dite?
Grazie