mercoledì 25 settembre 2019

Arduino N° 16 - Luci sequenziali 8 canali - avanti/indietro

Arduino N° 15

 Achille De Santis

Arduino N° 17




Questo sketch fa accendere in sequenza le uscite, una per volta, avanti e indietro.

Per commutazioni rapide, in continua, si consiglia l'uso di moduli MOSFET in uscita.

Per carichi maggiori, a corrente alternata, è possibile inserire in uscita un banco di 8 relé sulle cui uscite collegare i carichi di potenza.
Attenzione all'isolamento!


/* ---------------------Inizio Programma ----------------------------------------
  Comando luci sequenziali 8 canali, avanti/indietro
  30-12-2018 V.2.1
  Programma di Achille De Santis
*/

// uscite: da D2 a D9

const int T= 100;
int i;

void setup()
  {
    for(i=2; i<=9; i++)
    {pinMode(i, OUTPUT);}
  }

void accendi(int pin)  {digitalWrite(pin, HIGH);    }       // eccito il relè collegato al pin
void spegni(int pin)   {digitalWrite(pin, LOW);    }        // rilascio il relè collegato al pin
void commuta(int k)  { accendi(k); delay(T); spegni(k);  }

void sequenza_avanti()
  {  for (i=2; i<=9; i++)  {commuta(i);}    delay(T);  }
void sequenza_indietro()
  {  for (i=9; i>=2; i--)   {commuta(i);}    delay(T);  }

void loop()
  {
    sequenza_avanti();
    sequenza_indietro();
  }
// --------------------- Fine Programma -----------------------------------------------------------------



Simulazione: 

Nessun commento:

Posta un commento