Fuse Bits for ATmega1284P

-1

Necesito usar un oscilador de cristal externo para la generación PWM en el ATmega1284P. He puesto los bits de fusible incorrectos y no puedo programarlo ahora. ¿Puede ser rectificado?

    
pregunta user170667

1 respuesta

0

Lo siento por mi breve respuesta anterior, la respuesta aquí es desde este sitio web [TUT] [SUAVE ] Recuperación de un AVR "bloqueado"

Dado que no se proporcionan los valores incorrectos de los fusibles que ha configurado, y dado que el problema está relacionado con el oscilador externo, asumiré que ha configurado la fuente del reloj de atmega1284P de manera incorrecta. El problema que puede tener es que ha configurado los fusibles CKSEL para elegir algún tipo de reloj externo que no esté presente. La solución a este problema es aplicar una fuente de reloj al pin XTAL1 de su atmega1284P, y ESTA FUENTE DE RELOJ NO ES SU CRISTAL , cuando aplique esta fuente de reloj estará capaz de reajustar los fusibles de la manera correcta y hacer que CKSEL vuelva a su valor deseado, otra nota: el ISP siempre debe funcionar a menos de 1/4 de la frecuencia de reloj de el AVR. Entonces, si aplica una señal de reloj de 1MHz al pin XTAL1 , entonces el programador del ISP debe configurarse para funcionar a 250 kHz o menos. Las posibles fuentes de dicha señal de reloj son:

1) un STK500. Esto tiene un circuito de reloj a bordo. En AVR Studio, cuando se conecta al STK500, puede programar este reloj a una división de 3.6864MHz.

2) un STK600 tiene un circuito de reloj muy similar aunque su límite de frecuencia superior es más alto que el STK500.

3) un NE555 se puede conectar fácilmente con un puñado de componentes para generar aproximadamente 1MHz.

4) se puede usar otro AVR si carga un programa como:

#include <avr/io.h>

int main(void) {
    DDRB = 0xFF;
    while(1) {
        PORTB ^= 0xFF;
    }
}

esto activará todos los pines en PORTB lo más rápido posible. Cualquiera de esos pines PORTB (junto con un GND común) se puede conectar al AVR que se necesita recuperar.

5) Use un grupo generador de frecuencia de onda cuadrada y algo alrededor de la marca de 1MHz (podría ser más rápido si lo desea)

Otro problema potencial del reloj es cuando conecta un cristal (con tapas), coloca los fusibles CKSEL correctos y aún no oscilará. Esto puede deberse a que no configurando el fusible CKOPT o seleccionando "Full swing" cuando el cristal es de 8MHz o más. Este modo de operación utiliza más potencia (por lo que no está seleccionado de forma predeterminada), pero se requiere para que los cristales de mayor frecuencia resuenen correctamente. Si el AVR está en esta situación, la técnica anterior también debería recuperarlo.

Este sitio web le brinda una herramienta fácil para descubrir los fusibles correctos para su configuración: Calculadora de fusibles AVR® incrustada de Atmel

Si describe su problema con más detalle, podré ayudarlo más.

    
respondido por el Moutyam

Lea otras preguntas en las etiquetas