Arduino Leonardo como ISP: 7 pasos

Arduino Leonardo como ISP: 7 pasos

Tabla de contenido:

Anonim

El Leonardo fue mi primer Arduino, lo compré porque tiene capacidades USB nativas. Después de experimentar con Arduino, decidí migrar de mi Arduino Leonardo a un Atmega328p independiente o, para proyectos más pequeños, a un microcontrolador de la familia Attiny.

Después de algunas investigaciones, encontré esta guía por PeterVH:

Después de varios intentos fallidos, pude grabar el cargador de arranque y cargar bocetos con éxito y quería compartirlo con este Instructable.

Renuncia

No puedo ser responsable de ningún daño que pueda ocurrirle a usted o a su equipo mientras sigue los procedimientos presentes en esta página. Además, no doy absolutamente ninguna garantía sobre la exactitud y utilidad de la información en este Instructable. Tenga en cuenta, sin embargo, que estos procedimientos han funcionado en mi caso sin ningún daño o problema.

Suministros:

Paso 1: Materiales

- Arduino Leonardo (con cable usb)

- Una computadora (todos los pasos se basan en una computadora que ejecuta Windows)

- alambres

- Microcontrolador Atmel de Target.

Paso 2: Preparando el Leonardo

Supongo que ya ha instalado y configurado el IDE, y ha podido cargar bocetos antes (si no lo hace: http: //arduino.cc/en/Guide/HomePage).

1- Abrir Arduino IDE

2- Abra el croquis ArduinoISP (Archivo / Ejemplos / ArduinoISP)

3- Cambia las siguientes líneas (ver foto 1):

#define RESET SS TO #define RESET 10

#define LED_HB 9 TO #define LED_HB 13

(queremos usar el pin digital 10 para restablecer el objetivo y estamos configurando el indicador de latido del corazón en el pin 13)

4- Guarda el croquis como LeonardoISP (para que puedas usarlo más tarde)

5- Elegimos Arduino Leonardo (Herramientas / Tableros / Arduino Leonardo) y el Puerto serie apropiado (Herramientas / Puerto serie / COM **)

5- Subir

Si el boceto se cargó correctamente, verá que el led a bordo (el que está marcado como L) realiza una secuencia de latido.

Ahora, en tu carpeta IDE de Arduino:

1- Crea una nueva carpeta en "hardware" con el nombre de leofix

2- Abre un editor de texto y pega este código (imagen 2):

arduinoispleo.name = Arduino como ISP (Leonardo)

arduinoispleo.communication = serial

arduinoispleo.protocol = arduino

arduinoispleo.speed = 19200

Guarde el archivo como programadores.txt (ver foto 3)

A continuación conectamos algunos cables a nuestro Leonardo (foto 4):

Pin digital 10,1 (TX), 0 (RX)

ICSP MISO, 5V, SCK, MOSI, GND (vea el pinout de 6 pines en la imagen 5)

Paso 3: Target Atmel Microcontroller 1: Atmega328p (materiales)

Los pasos con el Atmega328 se pueden utilizar para Atmega168 y el Atmega8 (no probado)

Necesitas esto:

(Fuente:

Para configuración de cristal externo de 16Mhz:

-Atmega328p

-10k resistencia de ohmios (utilicé 22K) x1

-16 MHz reloj cristal x1

- 22 pF capacitores x2

(O simplemente puedes comprar cualquiera de estos kits, como hice yo:

Virtuabotix Bareduino - Kit mínimo Arduino de 16 MHz

Virtuabotix Bareduino Plus - Microcontrolador compatible con Arduino con regulador de potencia

Ambos se cargan como Duemilanove, por lo que guarda un paso)

Para la configuración del circuito mínimo (eliminando el reloj externo):

-Atmega328p x1

Paso 4: Atelice el microcontrolador Atmel 1: Atmega328p (ensamble)

Para configuración de cristal externo de 16Mhz:

Ver foto 1

También puedes seguir esta guía:

www.virtuabotix.com/product-bareduino328-barebones-microcontroller-guide/

Para la configuración del circuito mínimo (eliminando el reloj externo):

Solo coloca el Atmega en tu tablero (foto 2)

Imagen 3 y 4 --- Atmega328 con cristal externo de 16 MHz.

Imagen 5 Atmega328 circuito mínimo

Paso 5: Atelice el microcontrolador Atmel 1: Atmega328p (quemando el cargador de arranque y cargando bocetos)

Para configuración externa de cristal de 16Mhz y Minimal:

1- Conecte los cables del Leonardo al atmega328 (por favor, mire los pines del atmega328 que son iguales con atmega168, imagen 1):

Atmega328 Arduino Leonardo

(en la foto 1 pines en negro) (foto 2-6pin ICSP)

RX pin 2 ------------------------------------- pin digital 0

Pin 3 de TX ------------------------------------- pin digital 1

MISO pin 18 ----------------------------------- ICSP pin MISO

MOSI pin 17 ----------------------------------- ICSP pin MOSI

SCK pin 19 ----------------------------------- ICSP pin SCK

RESET pin1 ------------------------------------- pin digital 10

Y los pines de potencia 5v y tierra.

Refiérase a las imágenes 3 y 4 para el resultado final.

Burning Bootloader (si compró el Bareduino o está usando un Atmega328 de arranque, omita este paso)

********* IMPORTANTE: paso adicional para la configuración mínima del circuito *********

1- Vaya a http://arduino.cc/en/Tutorial/ArduinoToBreadboard y descargue Breadboard.zip

2- Cree una subcarpeta "hardware" en su carpeta de cuaderno de bocetos de Arduino (cuya ubicación puede encontrar en el cuadro de diálogo de preferencias de Arduino). Si ya instaló el soporte para la configuración de hardware adicional, es posible que ya tenga una carpeta de "hardware" en su cuaderno de bocetos.

3-Mueva la carpeta "tablero" del archivo zip a la subcarpeta "hardware" de su cuaderno de bocetos de Arduino.

4-Reiniciar el software Arduino.

5-Debería ver "ATmega328 en una placa de pruebas (reloj interno de 8 MHz)" en el menú Herramientas> Tablero.

****************** Fin de paso adicional aquí ******************

1- Verifica nuevamente las conexiones.

2- Selecciona tu tabla:

Atmega328 con cristal externo de 16 mhz ----> Arduino Duemilanove w / ATmega328

Circuito atmega minimal sin cristal externo -----> ATmega328 en una placa de pruebas (reloj interno de 8 MHz)

3- El Puerto Serial debe ser el mismo que Arduino Leonardo.

4- Seleccionar Arduino como ISP (Leonardo) en programador

5- Seleccionar Burn Bootloader en el menú Herramientas

6- Si recibe este mensaje: Hecho quemando bootloader, El exito (ver fotos 6 y 8)

Si recibe un mensaje de error, verifique sus conexiones una por una y repita el proceso.

Subir un boceto

1- No muevas tus conexiones.

2- Elige un boceto (mira la foto 1, Arduino configuración de pin en rojo)

3- Utilizar Subir usando programador desde el menú Archivo, ¡Hecho! (cuadro 9-clásico parpadeo)

Si recibe un mensaje de error, verifique sus conexiones una por una y repita el proceso.

Paso 6: Objetivo Atmel Microcontroller 2: ATtiny84

Estas instrucciones no son solo para el ATiny84, deben funcionar para Attiny45, Attiny85, Attiny44 y Attiny84 utilizando el Core High-Low Tech, y para ATtiny84 (84/44/24), ATtiny85 (85/45/25) y ATtiny2313 (4313) utilizando el Arduino-Tiny Core, pero finalmente, el proceso es el mismo.

1- Instale el soporte de software para el IDE de Arduino desde el núcleo que eligió.

2- Conecte los cables entre (RX, TX, si están disponibles) MISO, MOSI, SCK, RESET, 5V y GND de la ATtiny (busque el pinout en la hoja de datos de Atmel) y su Arduino Leonardo.

RECUERDE: el pin RESET para el Leonardo es el pin digital 10

3- Abrir un croquis

4-Elige el tablero correspondiente. En mi caso, utilizando el High-Low Tech Core, estoy seleccionando Attiny84 (reloj interno de 8Mhz).

5- Seleccionar Arduino como ISP (Leonardo) en programador.

6- Uso Subir utilizando programador desde el menú Archivo.

Importante: algunos chips deben cargarse cuando se utiliza Arduino-Tiny Core. En ese caso usar Quemar el gestor de arranque antes de subir un boceto.

Importante, también: los núcleos utilizan una configuración de pin diferente, debe consultar su documentación al escribir un boceto.

Ejemplo: la imagen 2 es la configuración de pines para ATtiny84 del High-Low Tech Core y la imagen 3, de Arduino-Tiny Core.

Paso 7: ¡Gracias!

Este es mi primer Instructable, por lo que cualquier comentario, sugerencia o crítica son bienvenidos.