ATTiny 841 PWM a 450 kHz

1

He logrado generar PWM de 500 kHz con un ciclo de trabajo del 50% en PA2 TOCC1 de ATTiny841.

DDRA = (1 << PA2);//PA2 pin as an output
TOCPMSA0 = (1 << TOCC1S0);//TOCC1 linkage
TOCPMCOE = (1 << TOCC1OE);//Enable PWM
TCCR1A = (1 << COM1A1) | (1 << WGM11);//Fast PWM 1110
TCCR1B = (1 << CS10) | (1 << WGM12) | (1 << WGM13);//Fast PWM 1110
ICR1 = 1;//Not sure how clock is calculated but this gives me 500kHz on scope

Ahora me gustaría generar un PWM de 450 kHz en ese mismo pin. 444.44kHz = 8MHz / 18 sería aceptable. ¿Cómo puedo hacer eso?

La hoja de datos de ATTiny 841 está disponible aquí: enlace

    
pregunta gregoiregentil

1 respuesta

3

Primero, desprograme el fusible CKDIV8 o configure el preescalador de reloj en / 1 para que realmente esté funcionando a 8MHz en lugar de 1MHz. Luego configure ICR1 en 17 para que el temporizador cuente 18 pulsos de reloj por ciclo.

    
respondido por el Ignacio Vazquez-Abrams

Lea otras preguntas en las etiquetas