Hola a todos. Aprovecho para presentarme y para presentar mi primer proyecto. Mi nombre es Ernesto y soy profesor de instituto... de música Me gusta e interesa mucho el mundo de la electrónica, aunque soy totalmente novato (bueno, alguna chapucilla he hecho, pero muy sencillitas siempre). Mi compañero de tecnología ha comprado unas placas Arduino para emplearlas el curso que viene en el insti y me ha dejado una para que vaya probando y podamos poner cosillas en común entre los dos.
Tras haber instalado los controladores y el programa en el PC, y haber instalado uno de los sketch de prueba y ver que hay buena comunicación PC-tarjeta, he creado un sketch muy sencillito de prueba, pero no consigo que me funcione... Si alguien me pudiera echar una mano, me sería de gran ayuda para ir aprendiendo. El programa es muy simple: led conectado al Pin 13 y pulsador conectado al pin7. Cuando presionamos el pulsador, se supone que comienza una rutina de parpadeos: 3 cortos, 3 largos y 3 cortos (SOS en el código Morse). Se hace una pausa de 1 segundo y se repite indefinidamente. Les dejo el código por si alguien puede decirme cuál (o cuáles) es el fallo (o fallos). Muchas gracias.
/* Esta sencilla rutina consiste en que, si presionamos un pulsador,
el led parpadeará lanzando una señal de S.O.S.
según el código Morse (3 señales cortas, 3 largas y otras 3 cortas).
Tras un segundo de espera, se vuelve a lrepetir la rutina.
*/
int ledPin = 13; //led conectado al pin 13.
int buttonPin = 7; //pulsador conectado al pin 7.
void setup ()
{
pinMode (ledPin, OUTPUT); //pin del led configurado como salida.
pinMode (buttonPin, INPUT); //pin del pulsador configurado como entrada.
}
void loop ()
{
digitalRead (buttonPin); //se lee el estado del pulsador.
if (buttonPin == HIGH) //si el pulsador se presiona, se lanza la rutina.
{
digitalWrite (ledPin, HIGH); // el pin se enciende 80 ms.
delay (80);
digitalWrite (ledPin, LOW); // el pin se apaga 100 ms. La rutina sigue con 3 señales cortas, 3 largas y 3 cortas.
delay (100);
digitalWrite (ledPin, HIGH);
delay (80);
digitalWrite (ledPin, LOW);
delay (100);
digitalWrite (ledPin, HIGH);
delay (80);
digitalWrite (ledPin, LOW);
delay (100);
digitalWrite (ledPin, HIGH);
delay (600);
digitalWrite (ledPin, LOW);
delay (100);
digitalWrite (ledPin, HIGH);
delay (600);
digitalWrite (ledPin, LOW);
delay (100);
digitalWrite (ledPin, HIGH);
delay (600);
digitalWrite (ledPin, LOW);
delay (100);
digitalWrite (ledPin, HIGH);
delay (80);
digitalWrite (ledPin, LOW);
delay (100);
digitalWrite (ledPin, HIGH);
delay (80);
digitalWrite (ledPin, LOW);
delay (100);
digitalWrite (ledPin, HIGH);
delay (80);
digitalWrite (ledPin, LOW);
delay (1000);
}
else //si el pulsador no se presiona, el led sigue apagado.
{
digitalWrite (ledPin, LOW);
}
}
P.D: si alguien puede decirme cómo se puede insertar el código con sus colores, tal y como aparece en Arduino, le estaría muy agradecido