Cómo cargar el bootloader al ATM328p por primera vez
Cargar el bootloader o el gestor de arranque por primera vez en nuestro ATM328p es muy sencillo, aunque tiene el inconveniente de que el bootloader tiene que cargarse a través de otra placa Arduino. Para este ejemplo utilizaremos una placa Arduino Uno comercial.
Esta estrada está destinada a la puesta en marcha del STM32F103C8 que hemos aprendido a diseñar en el curso de diseño de PCBs.
Conexiones necesarias
La conexión necesaria entre el Arduino Uno comercial (programador) y nuestro ATM328p (target) se muestra a continuación. Necesitaremos también un conector USB para conectar la placa Arduino Uno a nuestro PC:
ATM328p (target) | Arduino Uno (programador) |
1 (+5V) | +5V |
2 (GND) | GND |
3 (SCK) | 13 (SCK) |
4 (MOSI) | 11 (MOSI) |
5 (RST) | 10 (SS) |
6 (MISO) | 12 (MISO) |
Procedimiento para cargar el bootloader al ATM328p
Este procedimiento solo hay que hacerlo la primera vez que utilicemos el ATM328p. Una vez cargado el bootloader no será necesario volver a cargarlo nunca más.
- Abrir el IDE de Arduino.
- Ir a Archivo > Ejemplo >ArduinoISP y abrir el ejemplo ArduinoISP. Cargar el ejemplo en la placa Arduino Uno (programador) de forma estándar utilizando el cable USB y el puerto COM que os haya asignado vuestro PC. Si tenéis problemas para cargar el ejemplo, desconectad el cable de alimentación (+5V) que alimenta el PCB (target):
Una vez cargado el ejemplo volvemos a alimentar el PCB (target) conectando el cable de +5V.
3.- Con el ejemplo cargado en la placa Arduino Uno, tenemos que seleccionar el tipo de procesador que tiene nuestro PCB (taget). Para ello, tendremos que seleccionar la opción «Arduino Nano» en el apartado «Placa«, y «ATmega328p (Old Bootloader)» en la opción «Procesador«. Seleccionamos también la opción «Arduino as ISP» en la opción «Programador«
4.- Para terminar pulsamos en la opción «Quemar Bootloader» para comenzar la carga de este.
Los LEDs de TX y RX comenzarán a parpadear. Una vez terminado el proceso, y si todo ha ido bien, podréis ver el siguiente mensaje:
Procedimiento para cargar software al ATM3238p vía USB
Una vez cargado el bootloader ya podemos cargar software a nuestro ATM328p de forma normal con un cable USB.
NOTA: El conversor USB a UART modelo CH340G que hemos integrado en el PCB necesita de un driver específico que tenemos que instalar en nuestro PC. Este conversor viene incluido en todas las placas Arduino imitación (esas que se pueden comprar en Aliexpress por unos pocos euros), por lo que si alguna vez habéis utilizado alguna de estas placas ya tendréis el driver instalado (aunque no os acordéis que lo hayas hecho). Si no es así, os dejo por aquí un enlace donde se explica como instalar el driver necesario.
Para cargar software al ATM328p con cable USB tendremos que seleccionar la opción «Arduino Nano», «ATmega328P (Old Bootloader)» y «AVRISP mkII» y pulsar en «Subir»: