Programar Atmega328 con Arduino de la forma más sencilla

Muchos comenzamos con Arduino y luego vamos evolucionando hacia la programación del microcontrolador por separado para hacer la circuitería más pequeña, de menor consumo y para que pueda funcionar con baterías que duren mucho. Puedes eliminar cosas accesorias del Arduino como el regulador de voltage y el led de encendido y utilizar un Arduino Nano en lugar de un Arduino Uno por ejemplo, pero seguirá consumiendo mucho, aun utilizando librerias para ponerlo en modo de bajo consumo. Al final hay que irse a usar el microcontrolador por separado, configurado a 8 Mhz. con su oscilador interno, podemos conseguir consumos cientos de veces menor. Lo puedes comprar barato aquí  microcontrolador en ebay 
Como ejemplos de lo que acabo de explicar, una estación meteorológica que desde el exterior envía los datos por RF, un termometro digital de precisión metido en una pequeña lata de refresco, o un avisador con música que dura 2:30 minutos para ayudar a los niños a lavarse los dientes. Todos funcionando con 3 pilas o baterías AAA que pueden durar años.

El micro lo podemos programar con cualquier arduino o comprarnos un programador ISP en ebay que los hay muy baratos. Como tenía un Arduino Uno de cuando empecé, pues es el que he usado:


Es en realidad el mismo sistema que en este artículo: 
Cambiar bootloader de Arduino Nano y quemar sketches con otro arduino por ISP

En este caso realizaremos los pasos primero y segundo de dicho artículo pero con el Arduino Uno o el que tengamos, incluido colocar al final el condensador de 10 µF entre Reset  y Ground.

En el tercer paso, como lo que tenemos para programar es un Atmega328p-dip y no un arduino nano, tenemos que mirar las patillas del micro donde están 5v, GND, Reset, MOSI, MISO, SCK, que son respectivamente 7, 8, 1, 17, 18, 19. Entonces conectamos el Arduino con el micro como vemos en la foto anterior.
Podemos comprobar el patillaje en este esquema:
También hay que seleccionar en Placa: "Optiboot on 28-pin cpus", así como el procesador y CPU Speed corespondiente.
Si cargamos el Bootloader configurado a 8 Mhz. con su oscilador interno no necesitaremos un oscilador ni los condensadores asociados. Después cargamos los sketches como se explica en el artículo mencionado pero esta vez en el micro directamente en lugar de en el Nano. No estamos utilizando el Bootloader más que para confgurar el micro a 8 Mhz. oscilador interno, no es el método más ortodoxo pero sí el más sencillo para un aficionado.

Podemos tener problemas y no nos funcionará si el microcontrolador viene configurado de origen para uso de oscilador externo. En este caso lo podemos solucionar simplemente colocando un oscilador del valor que sea entre las patillas 9 y 10, sólamente al momento de cargar el bootloader ya que, si le configuramos oscilador interno ya no nos hará falta, yo he utilizado este que tenía a mano cuando me ha surgido el problema:



Páginas de referencia útiles para este artículo:

Comentarios

Escríbeme, comenta o pregúntame lo que quieras:

Nombre

Correo electrónico *

Mensaje *

Entradas populares