Este documento presenta un tutorial sobre cómo programar los microcontroladores AVR ATtiny45 y 85 utilizando un Arduino como programador. Se explican los pasos para descargar el software necesario, conectar el circuito, escribir un programa simple en la IDE de Arduino, y usar el Arduino para grabar el programa en el microcontrolador ATtiny. También incluye un ejemplo de circuito para hacer parpadear un LED usando un ATtiny85.
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
100%(1)100% encontró este documento útil (1 voto)
68 vistas
Tutorial Arduino Programar AVR ATtiny45
Este documento presenta un tutorial sobre cómo programar los microcontroladores AVR ATtiny45 y 85 utilizando un Arduino como programador. Se explican los pasos para descargar el software necesario, conectar el circuito, escribir un programa simple en la IDE de Arduino, y usar el Arduino para grabar el programa en el microcontrolador ATtiny. También incluye un ejemplo de circuito para hacer parpadear un LED usando un ATtiny85.
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 12
Tutorial Arduino – Programar AVR ATtiny45 y 85 con
Arduino Posted on 22/01/2012 by Arduino Academy7
Hola amig@s!
Comienzan las colaboraciones! Gracias a Miguel Angel, miembro de
AEROBOT y del FORO de Arduino Academy, tenemos nuestro primer tutorial sobre como programar los micros AVR ATtiny45 y 85 utilizando un Arduino.
Así que empecemos!!
Más de una vez os habrá pasado, que después de haber testeado
vuestro prototipo deseáis hacer de él una aplicación real. Sin embargo, si es un proyecto pequeño, con pocas salidas/entradas parece poco lógico/óptimo emplear un ATmega328 con sus 14 salidas digitales y sus 6 entradas analógicas, con el consiguiente gasto de dinero y espacio. (La mejor solución es aquella que, cumpliendo su objetivo, sea la más fácil, sencilla y barata…Optimización!). Si estáis familiarizados con el uso de microcontroladores PIC o AVR y tenéis los conocimientos y herramientas (compiladores, grabadores…) necesarios, esto se resuelve fácilmente acudiendo al micro que más se ajusta a nuestras necesidades…y este post no tendría sentido! ;P
Partamos de la idea, de que muchos usuarios de Arduino, no
tienen acceso a estos conocimientos ni herramientas y están únicamente familiarizados con el uso de esta estupenda plataforma, en la cual además acaban de prototipear el proyecto que ahora quieran llevar a la aplicación final.
Vamos a ver cómo podemos programar los micros AVR ATtiny45 y 85
utilizando un Arduino (Uno, Duemillanove…) como grabador por ICSP.
Los ATtinny son una serie de pequeños micros que en pequeños
encapsulados (8 Dip)nos ofrecen grandes posibilidades a un precio muy accesible.
Yo me voy a centrar en el Attiny85, aunque todo lo visto aquí puede
ser usado con su hermano menor, sin ninguna variación.
Éstas son sus características esenciales:
Memoria ROM: 8Kb
Memoria RAM: 512 bytes Pines I/O:6 Frecuencia: 20 Mhz con cristal externo Programación ICSP Datasheet Como veis, está bien equipado: salidas digitales, PWM y entradas analógicas de 10 bits…Un pequeño Arduino a nuestra disposición!
La idea es la siguiente: escribiremos el programa en nuestra bien
conocida IDE de Arduino asignando los pines digitales y analógicos según el esquema del micro.
Una vez listo y corregidos los errores del código, utilizaremos
nuestro Arduino como grabador por ISP para copiar ese código al Attiny….et voilà! Listo para usarse.
En el siguiente enlace del grupo de investigación HIGH-LOW TECH
del MIT medialab, explican todo el proceso estupendamente.
Pero por si acaso lo vamos a repasar juntos
Descárgate, descomprime y copia la carpeta attiny45_85 en la
carpeta Hardware dentro del directorio Arduino. (…\arduino- 0022\hardware\attiny45_85)
DESCARGA
Cierra el programa y vuelve abrirlo. Comprobaras que ahora en
Tools/Board, te han aparecido muchas más opciones que antes. A continuación monta el circuito de la figura, y comprueba las conexiones: Bien, ahora conecta tu tarjeta de Arduino al ordenador: selecciónala en Board (Duemillanove, Uno…) así como el Puerto Serie que le corresponde.
En la sección de “Ejemplos” de Arduino abre, compila y descarga a
tu tarjeta el ejemplo de ArduinoISP. Con esto “acabamos de decirle” al Arduino que queremos que funcione como grabador.
Ahora, abrimos un nuevo sketch de Arduino y escribimos un
programa sencillito…por ejemplo, hacer parpadear un Led conectado al Pin2 del Attiny. (Si estás perezoso, acude al ejemplo Blink del Arduino pero recuerda modificar el P13 por el P2). Una vez terminado y habiendo comprobado que no hemos cometido fallos en la sintaxis, seleccionaremos en Tools/Board/ ATttiny85 (w/Arduino as ISP).
No tocaremos el puerto serie, dejando el mismo por el que acabamos
de descargar el programa ArduinoISP en nuestra tarjeta.
Ya solo queda darle al botón de descargar programa!
Cuando termina, te aparecerán dos advertencias :
avrdude: please define PAGEL and BS2 signals in the configuration
file for part ATtiny85 avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny85
No te preocupes, sigue todo funcionando.
Una vez que ya has descargado el programa puedes retirarlo de la
proadboard y utilizar el ATtiny donde tu quieras y volver a usar tu placa de Arduino para prototipear un nuevo proyecto…Si en el futuro te hiciera falta, vuelves a seguir los pasos anteriores y podrás grabar sobre el Attiny un nuevo programa usando tu Arduino como grabadora.
Monta el circuito y comprueba que funciona.
Aquí el Arduino SOLO sirve para alimentar el circuito a 5v.
Así que ya no hay excusas para no llevar a cabo tus proyectos más pequeños!
Si queréis llevar esto a la práctica, Miguel Angel nos ha hecho
llegar también una práctica muy ilustrativa. Una vez que ya hemos visto como grabar y utilizar un pequeño micro ATtiny85 lo hemos usado para fabricar un primer prototipo de luces intermitentes para un vagón de cola de una maqueta escala H0.
Con el potenciómetro puedes seleccionar la frecuencia de parpadeo
(por si en vez de montarlo en un vagón quieres que sean las luces de un coche de bomberos, o uno de policía).
Si lo llevas a uno de los topes las luces se quedarán fijas, y si
lo llevas al otro tope las luces entraran en un parpadeo por PWM, haciendo que el encendido y el apagado sea más “realista” por el efecto de fading. En este modo, el tiempo de parpadeo es aleatorio de tal manera que las luces son aún más realistas. (inspirándose en las antiguas linternas de RENFE).
Veamos el esquema que ha preparado:
La plaquita está pensada para ser montada en el interior del vagón. Toma la tensión de la vía através de las ruedas metálicas del vagón. El diodo y el condensador convierten la onda cuadrada en una señal continua que el regulador (SMD, qué pulso para soldarlo! ;P) convierte finalmente a 5v. Ahora una vista de las pistas:
Espero que os haya gustado este tutorial, reitero de nuevo los
agradecimientos a Miguel Angel, y os animo a tod@s a colaborar en este proyecto de difusión hispanohablante de contenidos relacionados con Arduino.
Si queréis conocernos y formar parte de la comunidad Arduino