Primeros pasos con Arduino Duemilanove
March 31st, 2010
No me hiba a quedar con las ganas de hacer algo con Arduino y acabo de recibir la placa Duemilanove
Aún no tengo tantos componentes como para hacer algo interesante, pero al menos pude hacer mi “hola mundo”. Este sencillo programa envía una señal de auxilio en clave morse: SOS (· · · — — — · · ·) usando el led integrado en la placa. El código original es parte de los ejemplos que viene con el IDE. Además, el programa envía el mensaje a la computadora usando el USB.
No es nada elaborado, simplemente quería hacer algo rápido
/* Blink Modificado. Envía una señal SOS en código morse
El circuito:
* un LED conectado del pin digial 13 a tierra.
* Nota: Al menos en la placa Duemilanove viene con el LED integrado
Creado en 1 Junio 2005 por David Cuartielles
Modificado 2010-03-31 por Antonio
http://arduino.cc/en/Tutorial/Blink
based on an orginal by H. Barragan for the Wiring i/o board
*/
int ledPin = 13; // LED connected to digital pin 13
int contador = 0; //Se usa para calcular el mensaje SOS
// El método setup() se ejecuta una sola vez al inicio del programa
void setup() {
// Se inicializa el pin digital como SALIDA:
pinMode(ledPin, OUTPUT);
//Se comienza la transmisión serie
Serial.begin(9600);
}
// El método loop() method runs over and over again,
// as long as the Arduino has power
void loop() {
if((contador > 2) && (contador < 6) ) {
digitalWrite(ledPin, HIGH); //Prende el LED
delay(400); //Se espera 400 ms
digitalWrite(ledPin, LOW); //Apaga el LED
delay(400); //Se espera 400 ms
Serial.print("-"); //Imprime el guión
} else {
digitalWrite(ledPin, HIGH); //Prende el LED
delay(150); //Se espera 150 ms
digitalWrite(ledPin, LOW); //Apaga el LED
delay(150); //Se espera 150 ms
Serial.print("."); //Imprime el punto
}
Serial.print(" "); //Despues de cada caracter pone un espacio dentro de la transmisión serie
contador++; //Suma 1 al contador
if(contador == 9) { //Si el mensaje terminó, reinicia el contador y espera dos segundos para repetirlo
contador = 0;
delay(2000);
Serial.println(" "); //Pasamos a la siguiente línea en la transmisión
}
if((contador % 3) == 0) //Hace una pequeña pausa entre letra y letra
delay(400);
}
Recursos
Primeros pasos: http://www.ladyada.net/learn/arduino/



