domingo, 22 de abril de 2018

LABORATORIO 9

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
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.


3. EVIDENCIA DEL LABORATORIO

Video del programa
Video de notas

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