No se puede ingresar al modo de programación ATMega328p

1

Estoy usando una placa de desarrollo Xegained Mini ATMega328p. Pude programarlo utilizando Atmel Studio 7, siendo nuevo en la programación de AVR, puse accidentalmente el fusible RSTDISBL en 0 (tiene un valor predeterminado de 1). Después de intentar reprogramar la placa utilizando SPI, descubrí que el RSTDISBL debe tener el valor 1. Ahora no puedo ingresar al modo de programación utilizando Atmel Studio.

Entonces, ¿hay una manera de restablecer este fusible sin tener que comprar un tipo diferente de programador, como JTAG? Tengo unos cuantos tableros Arduino de repuesto por si acaso podrían ser de alguna utilidad. Leí los documentos de ATMega328p y no pude encontrar ninguna información sobre cómo configurar este fusible.

    
pregunta David Paquette

2 respuestas

3

EDITAR: El HVSP que se muestra a continuación no funciona para ATmega328p, verifique HVPP como alternativa. El resto de mi respuesta sigue siendo válido.

Consulte este artículo del blog: Arduino AVR High-Voltage Serial Programmer . Probablemente deba ajustar un par de bytes en el código, revisar la hoja de datos para los bytes de fusibles predeterminados y cambiarlos en el código que se encuentra cerca de la parte superior:

// Desired fuse configuration
#define  HFUSE  0xDF   // Defaults for ATtiny25/45/85
#define  LFUSE  0x62   

Básicamente, lo que hace es crear un programador de alto voltaje utilizando una placa Arduino y unos cuantos discretos para restablecer los bytes del fusible. Una vez que los fusibles se restablecen a sus valores predeterminados, puede programar el chip de forma regular.

¡El circuito necesita una fuente de alimentación de 12 V para hacer un alto! RESTABLECER alto e ingresar al modo de programación HV. Tenga cuidado, solo este pin único es tolerante a 12V.

Este pequeño proyecto (basado en Linux) defaultFuses puede ser de alguna ayuda para tratar de averiguar los fusibles por defecto. Todo lo que hace es programar los fusibles predeterminados al controlador configurado, pero, por supuesto, primero necesitará que el programador de HV desbloquee su controlador. Sin embargo, sí muestra los valores que se ajustarán al programa.

    
respondido por el jippie
-1

¡Puedes usar otra placa Arduino como programador para tu Arduino roto! Esto puede usarse, por ejemplo, para programar un Atmega328 sin un cargador de arranque.

Todo se explica en este video .

    
respondido por el Bimpelrekkie

Lea otras preguntas en las etiquetas