0% encontró este documento útil (0 votos)
35 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. Explica que estos microcontroladores son una buena opción para proyectos pequeños con pocas entradas/salidas. Detalla los pasos para descargar el software necesario, conectar el circuito, escribir el código en Arduino, y usar el Arduino para programar el código en el microcontrolador ATtiny. También incluye un ejemplo práctico de cómo usar un ATtiny85 para hacer parpadear las luces de un vagón
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
35 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. Explica que estos microcontroladores son una buena opción para proyectos pequeños con pocas entradas/salidas. Detalla los pasos para descargar el software necesario, conectar el circuito, escribir el código en Arduino, y usar el Arduino para programar el código en el microcontrolador ATtiny. También incluye un ejemplo práctico de cómo usar un ATtiny85 para hacer parpadear las luces de un vagón
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 11

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


Academy, entra en nuestro foro!!

También podría gustarte