Ho spostato il topic nella sezione giusta..
Il mio problema è quello di non riuscire a far rimanere accesi i display per tutta la durate del programma, si accendono e si spengono con i led!
Posto il programma di seguito.. Grazie ancora in anticipo!
#include "pitches.h"
int led1=13;
int led2=12;
int pulsante1 = A1;
int pulsante2 = A2;
int preset = A0;
int Statop1 = 0;
int Statop2 = 0;
int Statopr = 0;
long rand1=0;
int dspl1;
int dspl2;
int valdspl1 = 0;
int valdspl2 = 0;
int GND1 = 2;
int GND2 = 3;
int A = 4;
int B = 5;
int C = 6;
int D = 7;
int E = 9;
int F = 10;
int G = 11;
void setup()
{
pinMode(A,OUTPUT);
pinMode(B,OUTPUT);
pinMode(C,OUTPUT);
pinMode(D,OUTPUT);
pinMode(E,OUTPUT);
pinMode(F,OUTPUT);
pinMode(G,OUTPUT);
pinMode(GND1,OUTPUT);
pinMode(GND2,OUTPUT);
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
pinMode(pulsante1,INPUT);
pinMode(pulsante2,INPUT);
pinMode(preset,INPUT);
randomSeed (analogRead (0));
}
void loop()
{
digitalWrite(led1,HIGH); digitalWrite(led2,HIGH);
Statop1=digitalRead(pulsante1);
Statop2=digitalRead(pulsante2);
Statopr=digitalRead(preset);
if(Statopr==HIGH)
{
dspl1=0;
dspl2=0;
digitalWrite(led1,LOW); digitalWrite(led2,LOW);
}
delay(rand1 = random (1000, 6000));
}
if(Statop1==HIGH)
{
dspl1++;
digitalWrite(led1,LOW); digitalWrite(led2,LOW);
delay(500);
digitalWrite(led1,HIGH);
delay(100);
digitalWrite(led1,LOW);
delay(100);
digitalWrite(led1,HIGH);
delay(100);
digitalWrite(led1,LOW);
delay(100);
digitalWrite(led1,HIGH);
delay(100);
digitalWrite(led1,LOW);
delay(100);
digitalWrite(led1,HIGH);
delay(100);
digitalWrite(led1,LOW);
delay(100);
digitalWrite(led1,HIGH);
delay(100);
digitalWrite(led1,LOW);
delay(rand1 = random (1000, 6000));
}
if(Statop2==HIGH)
{
dspl2++;
digitalWrite(led1,LOW); digitalWrite(led2,LOW);
delay(500);
digitalWrite(led2,HIGH);
delay(100);
digitalWrite(led2,LOW);
delay(100);
digitalWrite(led2,HIGH);
delay(100);
digitalWrite(led2,LOW);
delay(100);
digitalWrite(led2,HIGH);
delay(100);
digitalWrite(led2,LOW);
delay(100);
digitalWrite(led2,HIGH);
delay(100);
digitalWrite(led2,LOW);
delay(100);
digitalWrite(led2,HIGH);
delay(100);
digitalWrite(led2,LOW);
if(valdspl2!=2)
{
delay(rand1 = random (1000, 6000));
}
}
else(Statop1==LOW, Statop2==LOW);
{
}
if(dspl1==0)
{
void zero();
{
digitalWrite(GND1,LOW);
digitalWrite(A,HIGH);
digitalWrite(B,HIGH);
digitalWrite(C,HIGH);
digitalWrite(D,HIGH);
digitalWrite(E,HIGH);
digitalWrite(F,HIGH);
digitalWrite(G,LOW);
delay(1);
digitalWrite(GND1,HIGH);
}
}
if(dspl2==0)
{
void zero();
{
digitalWrite(GND2,LOW);
digitalWrite(A,HIGH);
digitalWrite(B,HIGH);
digitalWrite(C,HIGH);
digitalWrite(D,HIGH);
digitalWrite(E,HIGH);
digitalWrite(F,HIGH);
digitalWrite(G,LOW);
delay(1);
digitalWrite(GND2,HIGH);
}
}
if(dspl1==1)
{
void uno();
{
digitalWrite(GND1,LOW);
digitalWrite(A,LOW);
digitalWrite(B,HIGH);
digitalWrite(C,HIGH);
digitalWrite(D,LOW);
digitalWrite(E,LOW);
digitalWrite(F,LOW);
digitalWrite(G,LOW);
delay(1);
digitalWrite(GND1,HIGH);
}
}
if(dspl2==1)
{
void uno();
{
digitalWrite(GND2,LOW);
digitalWrite(A,LOW);
digitalWrite(B,HIGH);
digitalWrite(C,HIGH);
digitalWrite(D,LOW);
digitalWrite(E,LOW);
digitalWrite(F,LOW);
digitalWrite(G,LOW);
delay(1);
digitalWrite(GND2,HIGH);
}
}
if(dspl1==2)
{
void due();
{
digitalWrite(GND1,LOW);
digitalWrite(A,HIGH);
digitalWrite(B,HIGH);
digitalWrite(C,LOW);
digitalWrite(D,HIGH);
digitalWrite(E,HIGH);
digitalWrite(F,LOW);
digitalWrite(G,HIGH);
delay(1);
digitalWrite(GND1,HIGH);
}
}
if(dspl2==2)
{
void due();
{
digitalWrite(GND2,LOW);
digitalWrite(A,HIGH);
digitalWrite(B,HIGH);
digitalWrite(C,LOW);
digitalWrite(D,HIGH);
digitalWrite(E,HIGH);
digitalWrite(F,LOW);
digitalWrite(G,HIGH);
delay(1);
digitalWrite(GND2,HIGH);
}
}
if(dspl1==3)
{
void tre();
{
digitalWrite(GND1,LOW);
digitalWrite(A,HIGH);
digitalWrite(B,HIGH);
digitalWrite(C,HIGH);
digitalWrite(D,HIGH);
digitalWrite(E,LOW);
digitalWrite(F,LOW);
digitalWrite(G,HIGH);
delay(1);
digitalWrite(GND1,HIGH);
}
}
if(dspl2==3)
{
void tre();
{
digitalWrite(GND2,LOW);
digitalWrite(A,HIGH);
digitalWrite(B,HIGH);
digitalWrite(C,HIGH);
digitalWrite(D,HIGH);
digitalWrite(E,LOW);
digitalWrite(F,LOW);
digitalWrite(G,HIGH);
delay(1);
digitalWrite(GND2,HIGH);
}
}
if(dspl1==4)
{
void quattro();
{
digitalWrite(GND1,LOW);
digitalWrite(A,LOW);
digitalWrite(B,HIGH);
digitalWrite(C,HIGH);
digitalWrite(D,LOW);
digitalWrite(E,LOW);
digitalWrite(F,HIGH);
digitalWrite(G,HIGH);
delay(1);
digitalWrite(GND1,HIGH);
}
}
if(dspl2==4)
{
void quattro();
{
digitalWrite(GND2,LOW);
digitalWrite(A,LOW);
digitalWrite(B,HIGH);
digitalWrite(C,HIGH);
digitalWrite(D,LOW);
digitalWrite(E,LOW);
digitalWrite(F,HIGH);
digitalWrite(G,HIGH);
delay(1);
digitalWrite(GND2,HIGH);
}
}
........ Ho tolto le procedure per la visualizzazione di numeri..
if(dspl1==9)
{
{
digitalWrite(led1,LOW); digitalWrite(led2,LOW);
for(int ripetizione=0; ripetizione<5; ripetizione++)
{
digitalWrite(GND1,LOW);
digitalWrite(G,LOW);
digitalWrite(A,HIGH);
delay(50);
digitalWrite(A,LOW);
delay(50);
digitalWrite(B,HIGH);
delay(50);
digitalWrite(B,LOW);
delay(50);
digitalWrite(C,HIGH);
delay(50);
digitalWrite(C,LOW);
delay(50);
digitalWrite(D,HIGH);
delay(50);
digitalWrite(D,LOW);
delay(50);
digitalWrite(E,HIGH);
delay(50);
digitalWrite(E,LOW);
delay(50);
digitalWrite(F,HIGH);
delay(50);
digitalWrite(F,LOW);
delay(50);
}
digitalWrite(GND1,LOW);
digitalWrite(A,HIGH);
digitalWrite(B,HIGH);
digitalWrite(C,HIGH);
digitalWrite(D,HIGH);
digitalWrite(E,HIGH);
digitalWrite(F,HIGH);
digitalWrite(G,HIGH);
delay(250);
digitalWrite(GND1,HIGH);
digitalWrite(A,LOW);
digitalWrite(B,LOW);
digitalWrite(C,LOW);
digitalWrite(D,LOW);
digitalWrite(E,LOW);
digitalWrite(F,LOW);
digitalWrite(G,LOW);
for (int thisNote = 0; thisNote < 8; thisNote++)
{
int noteDuration2 = 1000/noteDurations2[thisNote];
tone(8, melody2[thisNote],noteDuration2);
int pauseBetweenNotes = noteDuration2 * 1.30;
delay(pauseBetweenNotes);
noTone(8);
dspl1=0;
dspl2=0;
}
delay(3500);
}
}
if(dspl2==9)
{
{
digitalWrite(led1,LOW); digitalWrite(led2,LOW);
for(int ripetizione=0; ripetizione<5; ripetizione++)
{
digitalWrite(GND2,LOW);
digitalWrite(G,LOW);
digitalWrite(A,HIGH);
delay(50);
digitalWrite(A,LOW);
delay(50);
digitalWrite(B,HIGH);
delay(50);
digitalWrite(B,LOW);
delay(50);
digitalWrite(C,HIGH);
delay(50);
digitalWrite(C,LOW);
delay(50);
digitalWrite(D,HIGH);
delay(50);
digitalWrite(D,LOW);
delay(50);
digitalWrite(E,HIGH);
delay(50);
digitalWrite(E,LOW);
delay(50);
digitalWrite(F,HIGH);
delay(50);
digitalWrite(F,LOW);
delay(50);
}
digitalWrite(GND2,LOW);
digitalWrite(A,HIGH);
digitalWrite(B,HIGH);
digitalWrite(C,HIGH);
digitalWrite(D,HIGH);
digitalWrite(E,HIGH);
digitalWrite(F,HIGH);
digitalWrite(G,HIGH);
delay(250);
digitalWrite(GND2,HIGH);
digitalWrite(A,LOW);
digitalWrite(B,LOW);
digitalWrite(C,LOW);
digitalWrite(D,LOW);
digitalWrite(E,LOW);
digitalWrite(F,LOW);
digitalWrite(G,LOW);
for (int thisNote = 0; thisNote < 8; thisNote++)
{
int noteDuration2 = 1000/noteDurations2[thisNote];
tone(8, melody2[thisNote],noteDuration2);
int pauseBetweenNotes = noteDuration2 * 1.30;
delay(pauseBetweenNotes);
noTone(8);
dspl1=0;
dspl2=0;
}
delay(3500);
}
}
}