Buen día tengan.
El arduino debe tomar lecturas cada 4 segundos una compuerta se abrira y arrojara pelotas (situacion ficticia),y se oprimirán botones (son 4 botones),no siempre caera la misma cantidad,puede caer 1,3,2;con un máximo de 4.
Leerá cual tiene estado lógico de 1 o 0, y el led1 se encendera (si lo oprimen o no),dependiendo el numero de push botton que se opriman,debe arrojar una lectura en un display de 7 segmentos de anodo común;si oprimo 2 botones,en el display debe aparecer 2.Osea deben sumarse los pulsos (señales) de los push botton y arrojar la lectura en el display.Ademas,dichas cantidades que se obtienen cada 4 segundos,se van ir sumando, y al alcanzar una sumatoria de 16,un led2 se encenderá y debe arrojar en el puerto serial una leyenda que diga "Muestra completa"
const int pinBtn_1= 10;
const int pinBtn_2= 11;
const int pinBtn_3= 12;
const int pinBtn_4= 13;
const int Ld_a= 2;
const int Ld_b= 3;
const int Ld_c= 4;
const int Ld_d= 5;
const int Ld_e= 6;
const int Ld_f= 7;
const int Ld_g= 8;
int cont = 0;
/*int estado_2 = 0;
int estado_3 = 0;
int estado_4 = 0;*/
void setup() {
Serial.begin(9600);
pinMode (pinBtn_1,INPUT);
pinMode (pinBtn_2,INPUT);
pinMode (pinBtn_3,INPUT);
pinMode (pinBtn_4,INPUT);
pinMode (Ld_a,OUTPUT);
pinMode (Ld_b,OUTPUT);
pinMode (Ld_c,OUTPUT);
pinMode (Ld_d,OUTPUT);
pinMode (Ld_e,OUTPUT);
pinMode (Ld_f,OUTPUT);
pinMode (Ld_g,OUTPUT);
}
void n_0 ()
{
digitalWrite(Ld_a, LOW);
digitalWrite(Ld_b, LOW);
digitalWrite(Ld_c, LOW);
digitalWrite(Ld_d, LOW);
digitalWrite(Ld_e, LOW);
digitalWrite(Ld_f, LOW);
digitalWrite(Ld_g, HIGH);
}
void n_1 ()
{
digitalWrite(Ld_a, HIGH);
digitalWrite(Ld_b, LOW);
digitalWrite(Ld_c, LOW);
digitalWrite(Ld_d, HIGH);
digitalWrite(Ld_e, HIGH);
digitalWrite(Ld_f, HIGH);
digitalWrite(Ld_g, HIGH);
}
void n_2 ()
{
digitalWrite(Ld_a, LOW);
digitalWrite(Ld_b, LOW);
digitalWrite(Ld_c, HIGH);
digitalWrite(Ld_d, LOW);
digitalWrite(Ld_e, LOW);
digitalWrite(Ld_f, HIGH);
digitalWrite(Ld_g, LOW);
}
void n_3 ()
{
digitalWrite(Ld_a, LOW);
digitalWrite(Ld_b, LOW);
digitalWrite(Ld_c, LOW);
digitalWrite(Ld_d, LOW);
digitalWrite(Ld_e, HIGH);
digitalWrite(Ld_f, HIGH);
digitalWrite(Ld_g, LOW);
}
void n_4 ()
{
digitalWrite(Ld_a, HIGH);
digitalWrite(Ld_b, LOW);
digitalWrite(Ld_c, LOW);
digitalWrite(Ld_d, HIGH);
digitalWrite(Ld_e, HIGH);
digitalWrite(Ld_f, LOW);
digitalWrite(Ld_g, LOW);
}
void loop() {
}
Es lo que llevo