Cómo usar un Arduino UNO como programador ISP

Autor: Oscar Gonzalez

Cómo usar un Arduino UNO como programador ISP

Tiempo de lectura: 6 minutos

Tutorial donde te enseño cómo convertir un Arduino UNO en un programador ISP barato y casero

Cómo usar un Arduino UNO como programador ISP

  • 1

0 Principiante

Programador ISP Arduino

Convertir tu Arduino en un programador ISP

Para poder tener tu propio programador ISP, el ejemplo más común es utilizar una placa Arduino UNO. Pero también puedes utilizar otras placas basadas en el microcontrolador ATMega328 como por ejemplo el Arduino Nano. Lo único a tener en cuenta es que la placa que utilices debe disponer de un puerto USB por razones obvias.

Arduino UNO Rev.3

Arduino UNO Rev.3

Arduino UNO con el nuevo bootloader OptiBoot a 115Kbps.

23,95€

Comprar


Para poder realizar las conexiones, también es recomendable el uso de cables de tipo DuPont, pero eso depende de la placa que vas a utilizar.

Todos los microcontroladores AVR dispone de 4 pines específicos para ser programados: 

  • MISO, MOSI, SCK y RESET

Esto pines, junto al positivo y negativo de la alimentación, sirven para conectar un programador externo y en éste caso también para realizar las conexiones de nuestro programador ISP casero.

Normalmente, placas como Arduino UNO y Arduino Nano disponen de un conector a tal efecto como este:

Conector ISP Arduino

Conector ISP Arduino

Si la placa que quieres recuperar no tiene este conector, deberás localizar cuales son las patillas correspondientes a MISO, MOSI, SCK y RESET. Todas lo tienen, solo que algunas no tienen un conector específico para ello.

En la siguiente imagen puedes ver el ejemplo de un Arduino Pro Micro que no tiene un conector ISP, pero tiene los pines 15, 14 y 16 que puedes utilizar igualmente.

Arduino Pro Micro pines ISP

Arduino Pro Micro pines ISP

En nuestro caso de ejemplo, tenemos un Arduino NANO que ya tiene el conector y por lo tanto, aquí es donde realizaremos las conexiones a la placa que queramos programar. Pero antes necesitamos convertir el Arduino UNO en un programador como tal. Para eso, el IDE de Arduino dispone de un programa específico para eso y que puedes abrir desde el menú Archivo / Ejemplos / ArduinoISP

Programa ArduinoISP

Programa ArduinoISP

Como cualquier otro programa, debes conectar tu placa mediante USB y seleccionar la placa correcta en el menú Herramientas / Placa.

Una vez hecho, pulsamos sobre el botón Subir y quedará la placa preparada como programador ISP. Antes de poder utilizar el Arduino UNO como programador, debes indicarle al IDE de Arduino que lo utilice como tal. Para eso es necesario indicarlo en menú Herramientas / Programador y selecciona la opción Arduino as ISP.

Si utilizas una placa con microcontrolador ATmega32U4 como el Leonardo, debes seleccionar Arduino as ISP (ATMega32U4)

Programador Arduino as ISP

Programador Arduino as ISP

Ahora ya tienes tu flamante programador ISP casero. En las siguientes páginas, veremos algunos ejemplo de uso con otros microcontroladores y las conexiones necesarias. También veremos cómo restaurar un bootloader.