Programación con Arduino
SESIÓN I – PARTE II: ARDUINO INTRO
JORGE VALERIO
jvalerio@[Link]
¿Qué es Arduino?
• Plataforma de desarrollo de hardware libre con un microcontrolador
re-programable y puertos de entrada/salida.
¿Por qué usar Arduino?
1. Tiene una gran comunidad.
2. Es multiplataforma.
3. Lenguaje de programación de fácil comprensión.
4. Bajo costo.
5. Re-usabilidad y versatilidad.
Arduino UNO
HARDWARE
Arduino UNO
D13,D12,… ………D2,D1,D0
• Microcontrolador basado en
el ATmega328
• 14 líneas de Entrada/Salida
Digital (6 configurables como
PWM) – 0V a 5V
• 6 líneas de Entrada Analógica A0 - A5
– 0V a 5V
• 16 MHz
10/3/2014 5
Arduino UNO - Líneas
Arduino IDE
SOFTWARE Y DRIVERS
Descargar Software
Arduino IDE
• [Link]
Editor Online
Arduino Web Editor
• [Link]
• Requiere instalar Plugin
Arduino IDE
• Para empezar, click
Menú Inicio →
Arduino
• Verifique que el
modelo de su placa
(Arduino Uno) y el
Puerto (depende de
su PC) sean los
correctos. Modelo de la Placa El Puerto al que
está conectado
10/3/2014 10
Seleccione su Placa
Seleccione su placa
10/3/2014 11
Seleccione el Puerto
Seleccione el Puerto
correcto.
El número depende
de su S.O.
10/3/2014 12
Arduino IDE
Barra de Monitor Serial,
Herramientas Utilice esta
herramienta para
mostrar mensajes y
Esta área de trabajo se conoce como enviar commandos
Sketch a la Placa.
Aquí se coloca el código del
programa.
Mensaje de Estado
Mensajes desde el Sistema
10/3/2014 13
Barra de Herramientas (Toolbar)
• Verificar (Verify)
• Verifica los Errores del Código
• Subir (Upload)
• Compila y sube el código a la placa Arduino
• Nuevo (New)
• Crea un nuevo sketch
• Abrir (Open)
• Open sketch
• Salvar (Save)
• Guarda el sketch
• Monitor Serie
• Visualiza la data serial enviada desde la placa Arduino
10/3/2014 14
Arduino Code
Para ejecutar un programa en Arduino, su sketch debería contener
estos dos métodos
void setup()
{
// Inicialización de variables, modo de los pines, librerías
// Se ejecuta una vez después de inicializar o resetear
// un programa
}
void loop()
{
// Repite el contenido cíclicamente permitiendo al programa
// cambiar y responder
}
10/3/2014 15
Comunicación Serial
• Configurar Puerto
[Link](tasa de transmisión);
• Enviar Datos
[Link](dato);
[Link](dato, tipo de dato); //DEC, OCT, BIN, HEX, BYTE, ASCII
• Leer la cantidad de Datos Disponible en el Puerto
[Link](); //Devuelve 0 si no hay algún dato presente
• Recibir Datos
[Link]();
Retardos
• Delay(ms)
delay(100); //Espera 100ms
delay(5000); //Espera 5s