Hola, buen día, tarde u noche.
E estado teniendo problemas con un código para un display y aún no logro resolverlo ni encontrar el error ya que me lo marca y no permite que el código corra, el Arduino que estoy utilizando es Arduino uno.
Es un código para un display de 7 segmentos con 2 pushbuttons uno ascendente y otro descendente.
Al correrlo me marca un error que no me permite que corra.
error:expected uncualified-id before ´{´ token.
Este código debería hacer que al oprimir mi botón designado para ascender sume 1, por ejemplo: Tengo 0 en mi display y oprimo una vez se creará un 1 en el display, oprimo de nuevo el botón y se crea un 2 en el display, así hasta llegar al 9 pero no a más de este.
Este código debería hacer que al oprimir mi botón designado para descender reste 1, por ejemplo: Tengo 9 en mi display y oprimo una vez se creará un 8 en el display, oprimo de nuevo el botón y se crea un 7 en el display, así hasta llegar al 0 pero no a menos de este.
Debería tenerlo como hexadecimal, entendí que el hexadecimal llegaba hasta 15 pero no a más de ello, lastimosamente no comprendo como agregar el hexadecimal a este código y lo eh dejado con números normales, sino es demasiada molestia, podrían por favor explicarme e indicarme como porgramar con hexadecimal.
De antemano Gracias por su ayuda.
//Encender Display de 7 segmentos,cuenta en orden Ascendente y Descendente por medio de dos pushbuttons, uno ascendente y otro descendete.
int Contador = 0;//Nombrar el display de 7 segmentos.
int PushButtonA = 12;//Nombrar pin 12 como PushButtonA.(PushButton que usaré como el Ascendente)
int PushButtonD = 13;//Nombrar pin 13 como PushButtonD.(PushButton que usaré como el Descendente)
int EstadoPushButtonA = 1;//Nombrar la variable que quiero que lea el estado de mi boton A.
int EstadoPushButtonD = 1;//Nombrar la variable que quiero que lea el estado de mi boton D.
//Establecer los pins como entradas o salidas.
void setup () {
pinMode (2, OUTPUT);//Establecer pin 2 como una salida.
pinMode (3, OUTPUT);//Establecer pin 3 como una salida.
pinMode (4, OUTPUT);//Establecer pin 4 como una salida.
pinMode (5, OUTPUT);//Establecer pin 5 como una salida.
pinMode (6, OUTPUT);//Establecer pin 6 como una salida.
pinMode (7, OUTPUT);//Establecer pin 7 como una salida.
pinMode (8, OUTPUT);//Establecer pin 8 como una salida.
pinMode (12, INPUT);//Establecer pin 12 como una entrada.
pinMode (13, INPUT);//Establecer pin 13 como una entrada
Serial.begin (9600);
}
void loop () {
EstadoPushButtonA = digitalRead(PushButtonA);//Este leerá el estado de mi boton A.
EstadoPushButtonD = digitalRead(PushButtonD);//Este leerá el estado de mi boton D.
if (EstadoPushButtonA == LOW and Contador < 9){ //Si el estado de mi boton es igual a LOW el contador sumará pero no llegará a más de 9.
(Contador = Contador + 1); //Si el estado de mi boton ascendente es LOW entonces mi contador sumará 1.
Serial.println ("Sumar 1");
}
if (EstadoPushButtonD == LOW and Contador > 0){ //Si el estado de mi boton es igual a LOW el contador restará pero no llegará a menos de 0.
(Contador = Contador - 1);//Si el estado de mi boton descendente es LOW entonces mi contador restará 1.
Serial.println ("Restar 1");
}
}
//Establecer los casos, nombrarlos y establecer que se debe hacer en cada uno.
{switch (Contador)
case 0 : //Establecer el caso 0.
limpiar ();//Limpiar el número anterior.
cero ();//Nombrar este caso como "cero"
Serial.println("Número 0");
break ();//Romper el circuito.
case 1 : //Establecer el caso 1.
limpiar ();//Limpiar el número anterior.
uno ();//Nombrar este caso como "uno".
Serial.println("Número 1");
break ();//Romper el circuito.
case 2 ://Establecer el caso 2.
limpiar ();//Limpiar el número anterior.
dos ();//Nombrar este caso como "dos".
Serial.println("Número 2");
break ();//Romper el circuito.
case 3 ://Establecer el caso 3.
limpiar ();//Limpiar el número anterior.
tres ();//Nombrar este caso como "tres".
Serial.println("Número 3");
break ();//Romper el circuito.
case 4 ://Establecer el caso 4.
limpiar ();//Limpiar el número anterior.
cuatro ();//Nombrar este caso como "cuatro".
Serial.println("Número 4");
break ();//Romper el circuito.
case 5 ://Establecer el caso 5.
limpiar ();//Limpiar el número anterior.
cinco ();//Nombrar este caso como "cinco".
Serial.println("Número 5");
break ();//Romper el circuito.
case 6 ://Establecer el caso 6.
limpiar ();//Limpiar el número anterior.
seis ();//Nombrar este caso como "seis".
Serial.println("Número 6");
break ();//Romper el circuito.
case 7 ://Establecer el caso 7.
limpiar ();//Limpiar el número anterior.
siete ();//Nombrar este caso como "siete".
Serial.println("Número 7");
break ();//Romper el circuito.
case 8 ://Establecer el caso 8.
limpiar ();//Limpiar el número anterior.
ocho ();//Nombrar este caso como "ocho".
Serial.println("Número 8");
break ();//Romper el circuito.
case 9 ://Establecer el caso 9.
limpiar ();//Limpiar el número anterior.
nueve ();//Nombrar este caso como "nueve".
Serial.println("Número 9");
break ();//Romper el circuito.
}
void cero (){
digitalWrite(2, HIGH); // encendido número 0
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH); //al encender estos pins, se creará el número cero.
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
}
void uno () {
digitalWrite(3, HIGH); // encendido número 1
digitalWrite(4, HIGH); //al encender estos pins, se creará el número uno.
}
void dos () {
digitalWrite(2, HIGH); // encendido número 2
digitalWrite(3, HIGH);
digitalWrite(5, HIGH); //al encender estos pins, se creará el número dos.
digitalWrite(6, HIGH);
digitalWrite(8, HIGH);
}
void tres () {
digitalWrite(2, HIGH); // encendido número 3
digitalWrite(3, HIGH);
digitalWrite(4, HIGH); //al encender estos pins, se creará el número tres.
digitalWrite(5, HIGH);
digitalWrite(8, HIGH);
}
void cuatro () {
digitalWrite(3, HIGH); // encendido número 4
digitalWrite(4, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH); //al encender estos pins, se creará el número cuatro.
}
void cinco () {
digitalWrite(2, HIGH); // encendido número 5
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(7, HIGH); //al encender estos pins, se creará el número cinco.
digitalWrite(8, HIGH);
}
void seis () {
digitalWrite(2, HIGH); // encendido número 6
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(6, HIGH); //al encender estos pins, se creará el número seis.
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
}
void siete () {
digitalWrite(2, HIGH); // encendido número 7
digitalWrite(3, HIGH);
digitalWrite(4, HIGH); //al encender estos pins, se creará el número siete.
}
void ocho () {
digitalWrite(2, HIGH); // encendido número 8
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH); //al encender estos pins, se creará el número ocho.
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
}
void nueve () {
digitalWrite(2, HIGH); // encendido número 9
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(7, HIGH); //al encender estos pins, se creará el número nueve.
digitalWrite(8, HIGH);
}
void limpiar() {
digitalWrite(2, LOW);
digitalWrite(3, LOW); // Este limpiará el display.
digitalWrite(4, LOW);
digitalWrite(5, LOW); // Borrará o Limpiará el numero marcado en el display.
digitalWrite(6, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
}
error:expected uncualified-id before ´{´ token