Hoy revisaremos como cargar nuevamente el Bootloader a nuestro Atmega168 de Arduino. Este problema puede darse debido a que el bootloader que viene de fabrica se haya dañado (no cargan los programas con el IDE) o por que hemos adquirido un nuevo chip para nuestro Arduino
Primero debemos crear el conexionado para llegar desde el USB hasta el conector ICSP. Debemos primero soldar un conector de 4 pines al espacio al lado de X3 escrito FT232RL en el PCB Diecimila. (Estas almohadillas están conectados a las clavijas de control de FT232RL.)
Removemos la soldadura para insertar el conector y lo soldamos por debajo
Removemos la soldadura para insertar el conector y lo soldamos por debajo
Descargamos los siguientes archivos a nuestro PC (Windows):
- serjtag-0.3.zip
- avrdude.conf
- avrdude-GUI-1.0.5.zip (Requiere NET Framework 2.0. Puedes descargarlo desde aquí (de Microsoft. NET Framework 2.0 Página de descarga) e instalarlo
Instalación
avrdude-serjtag
Extrae serjtag-03.zip.
Copia "avrdude-serjtag" dentro de la carpeta "C:\Archivos de Programa" .
Eliminar la carpeta "src" en la carpeta "avrdude-serjtag".
avrdude.conf avrdude.conf
Sobre escribe el archivo "avrdude.conf" en la carpeta "C: \ Archivos de programa \ avrdude-serjtag \ binario”. Con el que se obtiene al presionar el link anterior
Esta modificación "avrdude.conf" tienen ya creadas las secuencias de comandos de creación de "FTDI BitBang AVR-Writer" para Diecimila .
#arduino diecimila
programmer
id="diecimila";
desc = "FT232R Synchronous BitBang";
type = ft245r;
miso = 3; # CTS X3(1)
sck = 5; # DSR X3(2)
mosi = 6; # DCD X3(3)
reset = 7; # RI X3(4)
;
programmer
id="diecimila";
desc = "FT232R Synchronous BitBang";
type = ft245r;
miso = 3; # CTS X3(1)
sck = 5; # DSR X3(2)
mosi = 6; # DCD X3(3)
reset = 7; # RI X3(4)
;
avrdude-GUI (yuki-lab.jp Version)
Extrae avrdude-GUI-1.0.5.zip.
Copia la carpeta "avrdude-GUI-1.0.5" en la carpeta "C: \ Archivos de programa" .
Recuerda que avrdude-GUI requiere Microsoft .NET Framework 2.0.
Configuración
Abre la carpeta "C: \ Archivos de programa \ avrdude-GUI-1.0.5". y haz doble clic en el "avrdude-GUI.exe" para ejecutarlo.
La configuracion del "GUI avrdude-" es la siguiente del I al IV.
(i) avrdude.exe
Haz clic en el icono . . .
Abrir la carpeta "C: \ Archivos de programa \ avrdude-serjtag \ binario".
Selecciona "avrdude.exe", y haz clic en el boton Abrir.
(ii)Programmer area.
Abrir y seleccionar "FT232R Synchronous BitBang (diecimila)".
(iii)Device
Haz clic en el icono. . .
Selecciona "ATMega168 (M168)".
(iv)Command line Option area
Haz clic en el cuadro de texto y escribe a continuación.
-P ft0 -B 4800
"-P ft0" es la configuración de puertos Bitbang y "B-4800" es el modo de configuración lenta del reloj.
Atención! Debes dejar la zona de Puerto en blanco.
Cableado
Conecte los terminales del X3 con los pines ICSP por medio de cables como muestra la imagen siguiente
Conecta Diecimila al PC mediante un cable USB.
Ejecuta el avrdude-GUI.
Leer el bits del fusible.
Haz clic en el botón [Leer] de la zona de fusibles.
Si el fusible bits se leen, se está trabajando.
Cuando se muestra un error, no funciona confirma el cableado y la puesta del avrdude-GUI.
Cuando se muestra un error, no funciona confirma el cableado y la puesta del avrdude-GUI.
Ejecutar por el modo de reloj rápido.
Eliminar "B-4800" de la zona de la línea de comandos opción.
Leer el fusible bits otra vez.
Si los bits del fusible se leen, se está trabajando en modo de reloj rápido.
Si los bits del fusible se leen, se está trabajando en modo de reloj rápido.
Quemar el Bootloader.
Establecer el nuevo chip ATMega168. (en caso de querer quemar un nuevo chip, en caso de querer volver a cargar el bootloader saltar este paso)
- Desconecta el cable USB de la Diecimila.
- Retira el ATMega168 chip de la Deicimila-PCB.
- Establecer el nuevo chip en el Decimila-PCB.
- Conecte el cable USB a la Diecimila nuevo.
Escribir el fusible-Bits.
Ajuste el modo de reloj lento.
Escribe "B-4800" al texto de Command line Option area
Escribe "B-4800" al texto de Command line Option area
.
Atención! Un chip virgen no se puede ejecutar por el modo de reloj rápido.
Atención! Un chip virgen no se puede ejecutar por el modo de reloj rápido.
Borrar
(1) Haz clic en el botón [Chip Erase].
(2) Haz clic en el botón [Read] de la zona de bits de bloqueo. El valor de bit de bloqueo que se debe mostrar es 3F.
(1) Haz clic en el botón [Chip Erase].
(2) Haz clic en el botón [Read] de la zona de bits de bloqueo. El valor de bit de bloqueo que se debe mostrar es 3F.
Escribir el fusible-Bits.
(1) Coloca el bits del fusible de la siguiente manera. (Estos valores son sólo para ATMega168.)
hfuse = DD
(1) Coloca el bits del fusible de la siguiente manera. (Estos valores son sólo para ATMega168.)
hfuse = DD
lfuse = FF
efuse = 00
(2) Haz clic en el boton [Write] de la zona de fusibles.
efuse = 00
(2) Haz clic en el boton [Write] de la zona de fusibles.
Cambiar a modo de reloj rápido.
Eliminar "B-4800", la línea de comandos área opción y leer el fusible-Bits.
Cuando no lee los bits de fusibles, probablemente, había un error al establecer el fusible-Bits. Volver al modo de reloj lento. Y escribir el fusible-Bits como corresponde.
Cuando no lee los bits de fusibles, probablemente, había un error al establecer el fusible-Bits. Volver al modo de reloj lento. Y escribir el fusible-Bits como corresponde.
Preparación del Bootloader con el archivo hex.
Haga clic en el icono ... del área de Flash.
Abre la carpeta "C:\Program Files\arduino-0013\hardware\bootloaders\atmega168"
Seleccione "ATmegaBOOT_168_diecimila.hex", y haga clic en el boton Abrir
Quemado
Haz clic en el boton [Erase Write Verify] de la zona de Flash.
Espera hasta que el trabajo estará terminado.
Escribir el bit de bloqueo.
(1) Ajusta el bloqueo de bits de la siguiente manera.
Lock = 0F Bloqueo = 0F
(2) Writing
Haz clic en el [Write] botón de bloqueo de la zona de bits.
Haz clic en el [Write] botón de bloqueo de la zona de bits.
Con esto tenemos quemado el bootloader en nuestro Atmega168
Confirmación.
Desconecta el cable USB del arduino Diecimila.
Retira los cables de ICSP y X3.
Conecta el cable USB para Diecimila nuevamente.
Pulse el botón de reinicio de Diecimila.
Ejecuta el Arudino-IDE
Carga el ejemplo "Blink". Y se llevará a cabo.