Regrabar Bootloader en una Arduino (2)

Hace casi 5 años ya me encontré con este problema… fastidiar el micro de una arduino (vieja, eso si..) y tener que meter el bootloader de nuevo asi que no me extenderé demasiado ya que podeis leer el artículo de aquella epoca que solucioné con un programador por puerto paralelo muy barato de fabricar.

http://blog.xbot.es/?p=262

Ahora nos encontramos con que pocos ordenadores de sobremesa y ningún portatil trae puerto paralelo por lo que una alternativa USB vendria muy bien y lo que he hecho es aprovechar mi Programador ArduinoISP quedando el montaje tal que asi.

IMG_20150312_195506

En el USB tenemos una Arduino con el programa ArduinoISP (la de color rojo), esa tarjeta, sea la Arduino que sea no es mas que una pasarela hacia la segunda (la de color azul) y es esta ultima la que tenemos que seleccionar en Herramientas/Tarjetas… en mi caso la roja es compatible con Decimilia con micro Atmega168 pero da igual, podria ser una MEGA 2560… tan solo hace de pasarela. La tarjeta azul es una Duemilanove con micro Atmega328, por lo que en la configuración elegiré “Duemilanove w/Atmega328”.

tarjeta

A continuación comprobaremos que hemos seleccionado el programador adecuado.

Prog_ArduinoISP

Y por fin pulsaremos la opción que el IDE de Arduino nos da para programar el bootloader de la tarjeta seleccionada.

Prog_ArduinoISP_2

La arduino (azul) quedará como recien comprada y lista para trabajar.

Hasta pronto.
furri.

Programando ATtiny85 con Arduino

Utilizar micros Attiny puede resolvernos una necesidad por poco dinero y poca complicación a la hora de programarlos, como poco es divertido… 😛

1) HARDWARE.

Antes de nada hay que montar el grabador, bien cableado en una protoboard (no os lo aconsejo) o montaros una shield que os costará un par de euros y un rato soldando.

Para el que quiera cablear en una protoboard, este es el esquema.
esquema_attiny-arduino


2) Preparando el programador.

Para preparar el programador solo tenemos que enchufar una Arduino cualquiera, en mi caso utilizo una Duemilanove pero deberia funcionar con cualquiera.

Verificar que no teneis enchufada ninguna shield ni nada cableado, la Arduino solita.

Seleccionamos el tipo de tarjeta y puerto, a continuación abrimos la carpeta de ejemplos, elegimos “ArduinoISP” y grabamos.

En este momento nuestra tarjeta Arduino se ha convertido en un programador por lo que procedemos a enchufar nuestra placa o cableamos según el esquema del punto 1 de este tutorial.


3) IDE – Preparación del entorno de programación.

Para programar un Attiny85 con el entorno de Arduino tenemos que añadir dicho microcontrolador como si fuera una tarjeta mas seleccionable dentro del IDE de Arduino, esto lo haremos descargando la información de dicho micro e instalandolo en dos pasos simples.

– Descargar cores de microcontroladores Attiny.
En la página de Arduino podeis encontrar diversos cores adecuados a vuestras necesidades y la versión del IDE que tengais.
http://playground.arduino.cc/Main/ArduinoOnOtherAtmelChips

Los cores que tengo instalados en el IDE 1.0.6. los podeis descargar de aqui, incluye los que he ido encontrando por ahí, son los Attiny 24/44/84/25/45/85/13/2313/4313

– Descomprimir
Facil, en la carpeta (Arduino)\Hardware\

– Abrir IDE de Arduino
y verificar en Herramientas/Tarjetas si el sistema las reconoce.


4) Programación del Attiny85

Ya solo queda hacer un programa y grabarlo en el microcontrolador, lo primero que hacemos es irnos a Herramientas/Tarjeta y seleccionamos “Attiny85 @ 1MHz (Internal Oscillator, BOD disabled)”.

Abrimos un ejemplo como el tradicional “BlinkWithoutDelay” y cambiamos el pin 13 por el 0, que en el Attiny85 se corresponde con el pin 5 como podeis comprobar en el siguiente grafico.

ATtiny

Pulsamos el botón de grabar y ya tenemos nuestro primer Attiny85 funcionando en cualquier protoboard con tan solo V+, GND y un led en el pin 5 que deberia parpadear.

Espero que os haya gustado.

furri

 

Programador ArduinoISP

Quizá sea uno de los programadores para micros atmel mas basicos que me he tropezado, y aunque los clones MKII baratos proliferan en tiendas on-line este te puede sacar de algún apuro o como a mi, hasta que me llegue el que he pedido en Hong Kong… 😛

1) HARDWARE.

Ante todo mi primera preocupación a la hora de cualquier montaje es evitar en lo posible los cableados a mano y las protoboard, que son maravillosas para las primeras pruebas pero ahí acaba la cosa, el programador podemos construirlo en una simple placa de topos o mejor de lineas, como la idea orginal para este programador era trabajar con Attinys de 8 patas me fabriqué una plaquita que acaba en un DIP8 y a continuación construí un cable DIP8 a ISP, el resultado fué el siguiente:

Cableado para DIP8
esquema_attiny-arduino

Cable DIP8 – ISP.
Adaptador Dip8 ISP

Este es el aspecto final.

IMG_20150314_201924 IMG_20150314_201910

Nota: el condensador no es necesario en todas las tarjetas Arduino por lo que os aconsejo lo pongais de manera que sea facil quitarlo en un momento dado.

2) Preparando el programador.

Para preparar el programador solo tenemos que enchufar una Arduino cualquiera, en mi caso utilizo una Seeeduino compatible con la antigua Decimilia pero deberia funcionar con cualquier modelo.

Verificar que no teneis enchufada ninguna shield ni nada cableado, la Arduino solita.

En el IDE de Arduino seleccionamos el tipo de tarjeta y puerto, a continuación abrimos la carpeta de ejemplos, elegimos “ArduinoISP” y grabamos.

En este momento nuestra tarjeta Arduino se ha convertido en un programador por lo que procedemos a enchufar nuestra placa o cableamos según el esquema del punto 1 de este tutorial.

Espero tener que enlazar a este post mas de una vez…

furri.