Quemar bootloader de arduino en microcontrolador ATMEGA328P

Standard

Que tal amigos lectores, es un placer para mí redactar nuevamente. Esta ocasión traigo ante ustedes algo muy interesante y orientado a beginners makers con afinidad al diseño electrónico. Este tipo de personas suelen ser aquellas que prefieren desarrollar sus propias placas con el objetivo que realicen una labor específica. Esto difiere de las placas de desarrollo tradicionales, las cuales son fabricadas para un propósito general. La ventaja que representa el diseñar tu propia tarjeta electrónica es que se logran optimizar las dimensiones. Lo que acabo de explicar, se aprecia en la siguiente imagen:

13901871_10153827781923634_1741285343_o

Lo que acaban de observar son 2 tarjetas que utilizan la plataforma open-source Arduino para el desarrollo de software. A la izquierda se aprecia la tarjeta oficial Arduino UNO con la cual podemos desarrollar tantos proyectos, como lo permita su capacidad. A la derecha, tenemos una tarjeta que diseñamos en esta compañía en la cual su microcontrolador es el ATMEGA328P, el mismo chip que tiene Arduino UNO. Sin embargo, el circuito de la derecha, lo diseñamos con el único propósito de tomar lecturas de algunos sensores. En el fondo estamos hablando de lo mismo, pero el diseñar tu propia placa genera limpieza, estética y se aprecia como un trabajo más profesional.

Teniendo presente lo explicado anteriormente, ahora comenzaremos con el verdadero mensaje de este blog. Cuando nosotros adquirimos una placa oficial de arduino, tenemos la enorme ventaja que vienen “preprogramadas” con el bootloader de arduino. Bootloader entiéndanlo en términos muy simples como un “sistema operativo”. Es decir, adquieren su “computadora” con el sistema operativo ya instalado. En cambio cuando diseñan su propia plaquita, adquieres todas las partes, para armar su “computadora”. Por lo tanto una vez que arman su computadora, les hará falta instalar el “sistema operativo” ya que de fábrica no vienen precargados con el bootloader. La forma mas sencilla de lograr este proceso es la que les explicaré a continuación. Lo primero que necesitamos es una placa arduino que nos servirá para cargar el bootloader a la otra tarjeta electrónica y conectarlas entre sí de la siguiente manera:

523b53bb757b7f01268b456a

Al observar la imagen anterior nos damos cuenta que  los pines que permiten se realice la escritura de bootloader son los denominados “ICSP”, que constan de los pines MOSI, MISO, SCK y RESET del microcontrolador. Teniendo al alcance la hoja de datos del mismo, podemos identificarlos fácilmente.

328P

isp

Por supuesto que en el diseño electrónico de la plaquita se tiene que considerar SI o SI conectar estos pines y agregar la alimentación +5V y el punto común GND. En las imágenes anteriores se muestra claramente lo que acabo de mencionar. Ahora una vez conectado todo el hardware requerido, se procede a descargar el bootloader siguiendo este proceso:

1.- Cargar el programa “arduinoISP” en el arduino utilizado como programador. Este programa se encuentra en la carpeta de ejemplos dentro del IDE.

Arduinoispcom

2.- Seleccionar “Arduino as ISP” y seleccionar el bootloader que corresponde al chip, en este caso queremos replicar un “Arduino UNO” SIN MODIFICAR el puerto serial que actualmente está asignado al arduino programador.

programador  replica

3.-  Por último simplemente damos click en “Quemar bootloader” y esperamos a que finalice el proceso.

burn

Si todas las conexiones físicas y configuraciones de software se realizaron correctamente, el IDE nos informa que el bootloader se quemó con éxito. Si te arroja un mensaje que comienza con un Yikes!, quiere decir que alguna de las conexiones está mal.

Pero bueno amables lectores, aportándoles esta valiosa información me despido, no sin antes mandarles un fuerte abrazo. Saludos!

Leave a Reply

Your email address will not be published. Required fields are marked *