Tengo un circuito AVR para el cual he conectado su pin de salida de reloj a algunos otros circuitos reloj externo y los otros pines operan varias otras cosas. Al usar un osciloscopio, he encontrado que el chip AVR (tanto attiny4313 como atmega8535) funcionará a una velocidad más lenta después de que su fuente de alimentación haya sido desconectada y reconectada.
Los chips en el circuito en cuestión están conectados a un resonador de 20 mhz a xtal 1 y xtal 2. Aquí es cómo recrear el problema:
1) Conecte la alimentación y tierra.
2) quema los fusibles de un oscilador externo con salida de reloj
3) presiona el botón de reinicio
4) la temporización muestra 20 MHz en el alcance, otros circuitos funcionan a la velocidad adecuada.
5) Desconecte la batería (del regulador L7805)
6) Vuelva a conectar la batería al circuito
7) el chip principal ahora está funcionando a unos 8 mhz, no hay otros circuitos funcionando correctamente.
8) Fusionar fusibles
9) Funciona correctamente a 20 MHz ahora.
El problema ocurre con un attiny4313 y un atmega8535.
EDITAR: La imagen es un circuito de prueba que estoy usando para intentar resolver esto. Me permite reproducir el problema.
¿Por qué sucede esto? ¿Cómo evito que suceda?
Notas adicionales:
La detección de reducción de tensión a 4,3 V no soluciona el problema.
Programado con un arduino uno como ISP con avr-gcc (última versión de Ubuntu)