MICROCONTROLADORES
PROGRAMACIÓN CON ARDUINO
1. COMPETENCIA ESPECIFICA DE LA SESIÓN
- CONOCER EL ENTORNO ARDUINO
- INSTALAR Y CONFIGURAR IDE ARDUINO
- FAMILIARIZARSE CON EL PROGRAMA
2. MARCO TEÓRICO
DIAGRAMA DE LA TARJETA ARDUINO UNO
FUNCIONAMIENTO DEL BLOOTLOADER
Cuando cargamos un programa en Arduino desde el USB con el
IDE, estamos haciendo uso del bootloader, se trata de un pequeño programa que
ha sido guardado previamente en el microcontrolador de la placa y que nos
permite cargar código sin necesidad de hardware adicional. El bootloader solo
está activo unos segundos cuando se resetea el Arduino y después comienza el
sketch que está cargado en la flash de Arduino y que hemos programado y subido
a la placa.
El bootloader se ejecuta cuando el microcontrolador se enciende
o se pulsa el botón reset, durante un corto espacio de tiempo espera que le
llegue por el puerto serie un nuevo sketch desde el IDE de Arduino (este
distingue un sketch de otra cosa porque tiene un formato definido). Si llega un
sketch, este es guardado en la memoria flash y ejecutado, en caso contrario
ejecuta el sketch anteriormente cargado.
La mayoría de los Arduinos tienen la función autoreset que
permite al IDE de Arduino subir el código sin tener que pulsar el botón de
reset.
El bootloader hace que parpadee el pin 13 (led integrado en
la placa) cuando se ejecuta.
La mayoría de los microcontroladores de AVR pueden reservar
una zona de la memoria flash (entre 256B a 4 KB) para el bootloader. El
programa bootloader reprograma el microcontrolador para guardar en la memoria
flash el código binario a través de cualquier interface disponible.
El bootloader de Arduino está programado en la memoria flash
del ATMega328p y ocupa 0,5 KB de los 32KB disponibles. Este bootloader viene
precargado en la memoria flash del microcontrolador y es lo que diferencia el
ATMega328p de Arduino de otro que viene de fábrica.
El Arduino UNO viene con el microcontrolador ATMega328p
precargado con un bootloader que permite cargar nuevo código sin un
programador. El bootloader se comunica usando el protocolo STK500.
FUNCIONAMIENTO DEL uC
3. EVIDENCIA DEL LABORATORIO
El Atmega328 AVR 8-bit es un Circuito integrado de alto rendimiento que
está basado un microcontrolador RISC, combinando
32 KB ISP flash una
memoria con la capacidad de leer-mientras-escribe, 1 KB de memoria EEPROM,
2 KB de SRAM, 23 líneas de E/S de
propósito general, 32 registros de proceso general, tres
temporizadores flexibles/contadores con modo de
comparación, interrupciones internas y externas, programador de
modo USART, una interfaz serial orientada a
byte de 2 cables, SPI puerto
serial, 6-canales 10-bit Conversor A/D (canales
en TQFP y QFN/MLF packages),
"watchdog timer" programable con oscilador interno,
y cinco modos de ahorro de energía seleccionables por software. El dispositivo
opera entre 1.8 y 5.5 voltios. Por medio de la ejecución de poderosas
instrucciones en un solo ciclo de reloj, el dispositivo alcanza una respuesta
de 1 MIPS,
balanceando consumo de energía y velocidad de proceso.
Video del programa
4. OBSERVACIONES
- Existen plataformas de hardware libre, como lo es el Arduino, una placa con un controlador y un entorno de desarrollo, su sencillez y bajo costo nos permiten hacer múltiples diseños y múltiples tipos de uso de éste.
- Recurrimos al uso del Arduino puesto que permite realizar muchas tareas, ahorrando elementos electrónicos y en sustitución, el uso de un lenguaje de programación, lo que hace que sea de muy fácil uso.
- Debido a que fuimos asignados a un experimento que usara elementos electrónicos, y tocamos el tema de Arduino, decidimos hacer algo que involucrara los elementos electrónicos que vimos en clase, además que fuera algo novedoso y singular.
- Nos pareció un proyecto excepcional, motivador y que nos sirvió de mucha experiencia, aumentar nuestro grado de trabajo en equipo, solución de problemas usando conocimientos previamente adquiridos e investigación de cosas que el equipo desconocía. Este tipo de proyectos nos ayudan a aumentar nuestras capacidades, y más desde primer semestre
5. CONCLUSIONES
- EL proyecto nos muestra el tipo de plataforma de desarrollo que se puede emplear, utilizando Arduino y sus distintas aplicaciones de uso..
- Tener conocimientos básicos de electrónica y electricidad para las conexiones , considerando que hacemos uso dispositivos , es importante tener conocimientos de programación en lenguaje java y lenguaje C, para el desarrollo de la lógica de encendido y apagado de leds que interpretara la placa Arduino.
- No nos quedemos con los conocimientos que se presentan en este sitio, es recomendable hacer uso de diferentes fuentes.
6. FOTO GRUPAL