Una solución ante las siguiente interrogantes o incovenientes sobre ¿si es posible cambiar el microcontrolador dañado en el arduino? o si necesitas otro microcontrolador para realizar un proyecto pero necesitas tener que comprar otro arduino uno.
En estas situaciones tal vez lo que más nos convenga sea emplear únicamente el Atmega 328p, solo el microcontrolador y no toda la plataforma. Para que un Atmega 328p se necesita grabar el bootloader o el gesto de arranque, se puede hacer con un programador externo o también con un Arduino uno, en este caso utilizaremos un Arduino uno para dicho propósito. Siempre y cuando haya comprado Atmegas vírgenes, claro esta que actualmente es habitual encontrar los Atmega con el bootloader ya cargado.
Materiales:
- 1x Arduino Uno
- 1x ATMega328P-PU / ATMega328-PU (preferiblemente el primero)
- 1x Cristal de cuarzo a 16Mhz
- 2x Condensadores 18-22pF
- 1x Resistencia 10kΩ
- 3x Resistencias de 220-330Ω (para los LEDs)
- 1x Resistencia ~120Ω (110-124Ω,)
- 1x Condensador 10uF
Paso1: Lo primero de todo es cargar en nuestro Arduino el programa ArduinoISP, que viene de serie con el IDE.
Cuando haya terminado de cargar la comunicación ISP en el arduino, continuamos.
Paso2: Implementar en siguiente esquema:
Si todo ha ido bien, al alimentar con USB la placa el LED verde comenzará a “latir”.
Paso3: Ahora llega la parte interesante: cómo grabar el bootloader. Como hemos visto, existen dos modelos de ATMega328 con encapsulado DIP:
El ATMega328-PU y el ATMega328P-PU. Arduino emplea estos últimos, cuya única diferencia con los primeros es que cuentan con la tecnología picopower.
Para atmega 328: Es preciso modificar un archivo de configuración del entorno de Arduino para “engañarlo” y que piense que se trata del otro modelo de chip.
Para ello, sólo hay que abrir el archivo avrdude.conf, que se encuentra en hardware/tools/avr/etc/ y encontrar hacia la segunda mitad del archivo la línea 9245:
signature = 0x1e 0×95 0x0F;
oe en el caso q q este desordenado el block de notas lo buscas así:
signature = 0x1e 0x95 0x0F;
y cambiarla por ésta (lo que viene siendo reemplazar el 0F por un 14):
signature = 0x1e 0×95 0×14;
guardalo y ciérralo.
Para atmega 328p: Se omite el paso 3
Paso4: Configuramos para grabar como ISP.
El siguiente esquema nos indica como grabar el bootloader.
Esperamos a hasta que termine de grabar.
Paso5: Revertimos el paso 3 cambiamos:
signature = 0x1e 0×95 0×14;
Por:
signature = 0x1e 0×95 0x0F;
guardamos y listo. ya podemos quemar le chip con el arduino.
Carga Usando una placa Arduino
Una vez que su ATMEGA328P tiene el bootloader Arduino en él, usted puede cargar programas para usar el convertidor de USB a serie (chip FTDI) en una placa Arduino. Para ello, se elimina el microcontrolador de la placa Arduino por lo que el chip FTDI puede hablar con el microcontrolador en el tablero en su lugar. El diagrama de la derecha muestra cómo conectar el RX y TX líneas de la placa Arduino con el ATmega en la protoboard. Para programar el microcontrolador, seleccione "Arduino Duemilanove w o nano / ATmega328 "del los menú Herramientas> Board (o" ATmega328 en una placa (8 MHz de reloj interno) "si usted está utilizando la configuración mínima se describe a continuación). A continuación, subir como de costumbre.
Carga de bocetos para un ATmega en una placa. Recuerde quitar el microcontrolador de la placa Arduino!.