Salve, spero di avere sintetizzato in maniera comprensibile l'oggetto del mio quesito!
Ricordando che sono un libro totalmente bianco su programmazione e affini come ampiamente spiegato nella mia presentazione, passiamo al motivo di questa mia domanda.
Allora, ho scritto un listato che alla pressione di un tasto fa accendere due led in sequenza per x volte, nel mio caso 4, led verde e led rosso. Ho usato for come visibile. Poi ho avuto la malsana idea di inserire un terzo led blu, che nelle mie intenzioni dovrebbe accendersi solo dopo il ciclo for che riguarda solo led verde e rosso. Naturalmente per come è scritto il listato, il ciclo for agisce pure sul led blu, quindi la sequenza fa accendere led verde, rosso e blu quest'ultimo con un delay maggiore, che è cosa diversa rispetto la mia intenzione che prevede l'accensione del blu solo dopo la conclusione del ciclo dei primi due led. Ho cercato un po in giro ma non mi pare di avere trovato nulla!
Qualcuno può spiegarmi cosa utilizzare per ottenere quanto da me previsto? Ribadisco...siccome sono un libro bianco, se potreste spiegarmi passo passo il cosa fare, ve ne sarei assai grato!
Naturalmente quanto sopra, mi serve solo per iniziare a capirci qualcosa in più! Fino ad oggi ho usato Arduino da pappagallo...copio e incollo...e in questo sono bravissimo ma naturalmente non mi piace affatto usare così questo sistema!
Ho in serbo altre domande riguardo ad una mia idea ma che però, visto che per come ho capito bisogna scrivere sulla EEPROM, voglio prima capire almeno teoricamente il funzionamento di base, (senza fare prove pratiche), per poi fare delle domande meno sceme!
Grazie
cordialmente
Mario
#define led1 8 //pin led 1 Verde
#define led2 9 // pin led 2 Rosso
#define led3 11 //pin led 3 Blu
#define pul 10 //pulsante
int tempo = 250; //ritardo in millisecondi
int x = 0;
void setup() {
pinMode (led1, OUTPUT); //pin USCITA LED 1
pinMode (led2, OUTPUT); //pin USCITA LED 2
pinMode (led3, OUTPUT); //pin USCITA LED 3
pinMode (pul, INPUT); //pin INGRESSO Pulsante
}
void loop() {
if(digitalRead(pul)==HIGH)
for (x = 0 ; x < 4; x++) {
digitalWrite(led1, 1); //accende led1
digitalWrite(led2, 0); //spegne led2
delay(tempo); // accende led 1 spegne led 2 per X tempo
digitalWrite(led1, 0); //spegne led1
digitalWrite(led2, 1); //accende led2
delay(tempo); // accende led 2 spegne led 1 per X tempo
digitalWrite(led2, 0); //spegne led 2 per X tempo
digitalWrite(led3, 1); //accende led2
delay(1000); // accende led 3 per X tempo
digitalWrite(led3, 0); //spegne led2
}}