Ovvero tutto quello che avreste sempre voluto sapere sui cubi led e non avete mai osato chiedere.
L’utilizzo molto originale dei pin di uscita di Arduino rende questo progetto molto interessante sotto il profilo teorico.
Di seguito lo sketch di Arduino:
Allego il codice:
/***************************************************
* Programma per gestire un cubo led 3x3 con Arduino.
* Il passaggio da un'animazione all'altra avviene
* tramite il pulsante posto sul pin 13.
*
* Autore: Giovanni Gentile
* Data: Dicembre 2013
* Web: https://www.0lab.it
*
* Setup uscite cubo:
* 2 4 A5
* 6 5 A0
* 10 7 11
*
* Primo piano A1
* Secondo Piano A2
* Terzo Piano A4
*
* Creative Commons License
***************************************************/
// Dichiarazioni Generali
int time;
const int button = 13;
int valButton = 10;
boolean stateButton;
void setup() {
Serial.begin(9600);
pinMode(A3, INPUT);
pinMode(button, INPUT);
stateButton = (digitalRead(button));
// Colonne
pinMode(2, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(10, OUTPUT);
pinMode(A5, OUTPUT);
pinMode(A0, OUTPUT);
pinMode(11, OUTPUT);
// Righe
pinMode(A4, OUTPUT);
pinMode(A2, OUTPUT);
pinMode(A1, OUTPUT);
}
void loop() {
/* Debug Seriale:
Calcolo ritardo potenziometro e stampa a video.
Il potenziometro viene utlizzato con l'uscita 3,3v di Arduino. */
time = analogRead(A3);
Serial.print("Analog: ");
Serial.println(time);
time = map(time, 0, 696, 1,1000);
Serial.print("map: ");
Serial.println(time);
Serial.print("Valore digitale pin 13:");
Serial.println(stateButton);
Serial.print("Valore bottone: ");
Serial.println(valButton);
// Calcolo stato bottone
if(digitalRead(button))
{
delay(15);
valButton++;
}
if (valButton >= 11){
valButton = 0;
}
switch (valButton) {
case 0:
//Sequenza Colonne gira
//Primo
digitalWrite(2,HIGH);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,HIGH);
digitalWrite(A5,HIGH);
digitalWrite(A0,LOW);
digitalWrite(11,HIGH);
digitalWrite(A4,LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Secondo
digitalWrite(2,LOW);
digitalWrite(4,HIGH);
digitalWrite(5,LOW);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,HIGH);
digitalWrite(11,LOW);
digitalWrite(A4,LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
break;
case 1:
//Sequenza Cubo grande SX
//Primo
digitalWrite(2,HIGH);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Secondo
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Terzo
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(10,HIGH);
digitalWrite(A5,HIGH);
digitalWrite(A0,HIGH);
digitalWrite(11,HIGH);
digitalWrite(A4,LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
break;
case 2:
//Sequenza Cubo grande DX
//Primo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,HIGH);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Secondo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,HIGH);
digitalWrite(11,HIGH);
digitalWrite(A4,HIGH);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Terzo
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(10,HIGH);
digitalWrite(A5,HIGH);
digitalWrite(A0,HIGH);
digitalWrite(11,HIGH);
digitalWrite(A4,LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
break;
case 3:
//Sequenza DOWN
//Primo
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(10,HIGH);
digitalWrite(A5,HIGH);
digitalWrite(A0,HIGH);
digitalWrite(11,HIGH);
digitalWrite(A4,LOW);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Secondo
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(10,HIGH);
digitalWrite(A5,HIGH);
digitalWrite(A0,HIGH);
digitalWrite(11,HIGH);
digitalWrite(A4,HIGH);
digitalWrite(A2,LOW);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Terzo
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(10,HIGH);
digitalWrite(A5,HIGH);
digitalWrite(A0,HIGH);
digitalWrite(11,HIGH);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
break;
case 4:
//Sequenza UP
//Primo
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(10,HIGH);
digitalWrite(A5,HIGH);
digitalWrite(A0,HIGH);
digitalWrite(11,HIGH);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Secondo
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(10,HIGH);
digitalWrite(A5,HIGH);
digitalWrite(A0,HIGH);
digitalWrite(11,HIGH);
digitalWrite(A4,HIGH);
digitalWrite(A2,LOW);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Terzo
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(10,HIGH);
digitalWrite(A5,HIGH);
digitalWrite(A0,HIGH);
digitalWrite(11,HIGH);
digitalWrite(A4,LOW);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
break;
case 5:
//Sequenza rotea
//Primo
digitalWrite(2,HIGH);
digitalWrite(4,LOW);
digitalWrite(5,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,HIGH);
digitalWrite(A4,LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Secondo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,HIGH);
digitalWrite(11,LOW);
digitalWrite(A4,LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Terzo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,HIGH);
digitalWrite(A5,HIGH);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Quarto
digitalWrite(2,LOW);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
break;
case 6:
//Scorre muro da DX SX DX
//Primo
digitalWrite(2,HIGH);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,HIGH);
digitalWrite(7,LOW);
digitalWrite(10,HIGH);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Secondo
digitalWrite(2,LOW);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Terzo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,HIGH);
digitalWrite(A0,HIGH);
digitalWrite(11,HIGH);
digitalWrite(A4,LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
case 7:
//Scorre muro DX SX
//Primo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,HIGH);
digitalWrite(A0,HIGH);
digitalWrite(11,HIGH);
digitalWrite(A4,LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Secondo
digitalWrite(2,LOW);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Terzo
digitalWrite(2,HIGH);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,HIGH);
digitalWrite(7,LOW);
digitalWrite(10,HIGH);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
break;
case 8:
//Cursore sale
//Primo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,HIGH);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Secondo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Terzo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,HIGH);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Quarto
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,HIGH);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Quinto
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,HIGH);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Sesto
digitalWrite(2,LOW);
digitalWrite(4,HIGH);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Settimo
digitalWrite(2,HIGH);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Ottavo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,HIGH);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Nono
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,HIGH);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,LOW);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Decimo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,LOW);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Undicesimo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,HIGH);
digitalWrite(A4,HIGH);
digitalWrite(A2,LOW);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Dodicesimo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,HIGH);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,LOW);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Tredicesimo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,HIGH);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,LOW);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Quattordicesimo
digitalWrite(2,LOW);
digitalWrite(4,HIGH);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,LOW);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Quindicesimo
digitalWrite(2,HIGH);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,LOW);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Sedicesimo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,HIGH);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,LOW);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Diciassettesimo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,HIGH);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,LOW);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Diciottesimo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,LOW);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Diciannovesimo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,HIGH);
digitalWrite(A4,LOW);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Ventesimo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,HIGH);
digitalWrite(11,LOW);
digitalWrite(A4,LOW);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Ventunesimo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,HIGH);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,LOW);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Ventiduesimo
digitalWrite(2,LOW);
digitalWrite(4,HIGH);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,LOW);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Ventitresimo
digitalWrite(2,HIGH);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,LOW);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Ventiquattresimo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,HIGH);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,LOW);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
break;
case 9:
//Diagonale
//Primo
digitalWrite(2,HIGH);
digitalWrite(4,LOW);
digitalWrite(5,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,HIGH);
digitalWrite(A4,LOW);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Secondo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,HIGH);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,LOW);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Terzo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,HIGH);
digitalWrite(A5,HIGH);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Quarto
digitalWrite(2,LOW);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,LOW);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
break;
case 10:
//Esplosione
//Primo
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(5,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,LOW);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,LOW);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Secondo
digitalWrite(2,LOW);
digitalWrite(4,HIGH);
digitalWrite(5,LOW);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(10,LOW);
digitalWrite(A5,LOW);
digitalWrite(A0,HIGH);
digitalWrite(11,LOW);
digitalWrite(A4,HIGH);
digitalWrite(A2,LOW);
digitalWrite(A1,HIGH);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
//Terzo
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,LOW);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(10,HIGH);
digitalWrite(A5,HIGH);
digitalWrite(A0,HIGH);
digitalWrite(11,HIGH);
digitalWrite(A4,LOW);
digitalWrite(A2,LOW);
digitalWrite(A1,LOW);
delay(time);
digitalWrite(A4,HIGH);
digitalWrite(A2,HIGH);
digitalWrite(A1,HIGH);
delay(time);
break;
}
delay(1);
}