Hola,
Lo primero pedir disculpas por la chorrada de problema que tengo con mi código, puesto que seguro que cuando lo veáis pensaréis que soy medio lerdo, pero bueno, tengo que ir aprendiendo. Al tema...
Estoy picando el código para un proyecto de niño pequeño, en el que en función del número de veces que se haya pulsado un pulsador, se enciende un led azul, verde o rojo. Como véis, algo facilísimo.
El código es el siguiente:
//--------------------------------------------------
//Declara puertos de entradas y salidas y variables
//--------------------------------------------------
int Verde = 9; // Asigno el pin al tono verde
int Azul = 10; // Asigno el pin al tono Azul
int Rojo = 11; // Asigno el pin al tono Rojo
int conta = 0; // Variable para contar el numero de pulsaciones
//------------------------------------
//Funcion principal
//------------------------------------
void setup() {
Serial.begin(9600); //Inicia comunicación serial
pinMode(2,INPUT); //Configura el pin 2 como una entrada, pulsador
pinMode(Verde, OUTPUT); //Configuro el pin 9 como salida
pinMode(Azul, OUTPUT); //Configuro el pin 10 como salida
pinMode(Rojo, OUTPUT); //Configuro el pin 11 como salida
}
//Función para encender el LED verde
void colorverde() {
analogWrite(Verde, HIGH); //Visualizamos el tono verde
analogWrite(Azul, LOW); //Apagamos el tono Azul
analogWrite(Rojo, LOW); //Apagamos el tono Rojo
};
//Función para encender el LED Azul
void colorazul() {
analogWrite(Verde, LOW); //Apagamos el tono verde
analogWrite(Azul, HIGH); //Visualizamos el tono Azul
analogWrite(Rojo, LOW); //Apagamos el tono Rojo
};
//Función para encender el LED rojo
void colorrojo() {
analogWrite(Verde, LOW); //Apagamos el tono verde
analogWrite(Azul, LOW); //Apagamos el tono Azul
analogWrite(Rojo, HIGH); //Visualizamos el tono Rojo
};
//------------------------------------
//Funcion ciclicla
//------------------------------------
void loop() {
if ( digitalRead(2) == HIGH )
{
// Si el pulsador no esta oprimido, flanco de bajada
if ( digitalRead(2) == LOW )
{
conta++; //Incrementa el contador
Serial.println(conta); //Imprime el valor por consola
delay (100); // Retardo
}
}
if (conta <= 3) //Si se ha pulsado entre 1 y 3 veces se enciende el LED verde
{
colorverde();
}
if ((conta=>3) && (conta<6)) //Si se ha pulsado entre 3 y 6 veces se enciende el azul
{
colorazul();
}
if ((conta=>6) && (conta<9)) //Si se ha pulsado entre 6 y 9 veces se enciende el rojo
{
colorrojo();
}
if (conta == 9) //de 9 volvemos a poner el contador a 0
{
contador = 0;
}
}
//Fin programa
Al compilar el codigo me da el siguiente error:
sketch_nov04a.ino: In function 'void loop()':
sketch_nov04a:67: error: expected primary-expression before '>' token
sketch_nov04a:72: error: expected primary-expression before '>' token
La linea 67 es: if (conta <= 3)
Y la linea 72 es: if ((conta=>3) && (conta<6))
Gracias de antemano por la ayuda