Para un poco de fondo es posible que desee leer
ATmega328 con Optiboot no es compatible con Arduino?
Pero voy a resumir de todos modos. Tengo algunos chips Atmega328 que se enviaron con el cargador de arranque optiboot grabados que parecían dañados. Para que los chips funcionen, compré y usé un USBASP y volví a quemar el cargador de arranque. El proceso funciona bien y los chips se reinician y ejecutan el boceto intermitente sin problema, pero cuando jalo el pin de reinicio a tierra, parece que el chip no se reinicia y ejecuta el cargador Arduino. Mientras el pin de reinicio se mantiene en el suelo, el boceto dejará de ejecutarse y cuando se suelte, el boceto parpadeará comenzará sin demora.
Si se conecta el pin de reinicio a DTR de mi USB-TTL, el boceto dejará de ejecutarse al intentar cargar un boceto a través del IDE de Arduino y luego fallará la carga con un error no conectado. Usando el USBASP puedo volver a grabar el gestor de arranque y parece que se reinicia correctamente
El restablecimiento funcionó antes de volver a grabar el cargador de arranque. Los circuitos de restablecimiento que utilizo funcionan en los chips atmega168 que tengo.
Para los cargadores de arranque, he intentado destellar el chip para usar el reloj interno enlace y como un lilypad y duemilanove pero el pin de reinicio todavía no parece funcionar correctamente.
También utilicé el software que venía con USPASP y leí los bits Fuse & lock y los fusibles High / Low se ven bien, no estoy seguro de los bits extendidos y de bloqueo.
lee el chip; Bajo = E2, Alto = DA, Ext = FD, Bloqueo = CF
lee board.txt;
atmega328bb.bootloader.low_fuses = 0xE2
atmega328bb.bootloader.high_fuses = 0xDA
atmega328bb.bootloader.extended_fuses = 0x05
atmega328bb.bootloader.path = arduino: atmega
atmega328bb.bootloader.file = ATmegaBOOT_168_atmega328_pro_8MHz.hex
atmega328bb.bootloader.unlock_bits = 0x3F
atmega328bb.bootloader.lock_bits = 0x0F