Modulo pwm del pic 16f877a
El Modulo PWM del PIC 16F877 tiene una resolución máxima de 10 bit y su salida se toma del pin RC2, por lo cual debe estar configurado como salida en elregistro Tris C.
Periodo PWM.- El Periodo del Modulo PWM es configurado dando un valor al registro PR2. Este periodo puede ser calculado usando la siguiente formula:
PWM Periodo = [(PR2) + 1] •4 • TOSC • Prescale del Timer 2
Como ya es sabido la frecuencia esta determinada por 1/Periodo PWM.
Cuando el valor del Timer 2 alcanza el valor de PR2, los siguientes eventos ocurren enel siguiente ciclo de tiempo:
* TMR2 es limpiado
* El pin CCP1 es puesto a 1
* El Periodo de trabajo del PWM es cambiado de CCPR1H a CCPR1L
Ciclo de trabajo del PWM.- Elciclo de trabajo del PWM es determinado escribiendo al registro CCPR1L y CCP1CON<5:4> (10 bits de resolución).
El ciclo de trabajo se obtiene usando la siguiente formula:
Tiempo deTrabajo PWM = (CCPR1L:CCP1CON<5:4>) •TOSC • (TMR2 Prescale Value)
Para modificar el ciclo de trabajo, en cualquier momento se puede escribir a CCPR1L y CCP1CON<5:4>, pero estosvalores no serán tomados en consideración hasta que el Timer alcance al PR2 y reinicie su operación tomando en cuenta los nuevos valores.
Tiempo de trabajo = % Ciclo de trabajo / FpwmPara calcular la máxima resolución del PWM a determinada frecuencia usamos la siguiente formula:
Formula para resolución del modulo PWM
CONFIGURACION DEL PWM.- Pasos para la configuracióndel Modulo PWM del PIC 16F877A.
1. Configurar el Periodo dando un valor al registro PR2
2. Configurar el Ciclo de Trabajo escribiendo en: CCPR1L:CCP1CON<5:4>
3. Limpiar el Tris C, 2para asignar la salida del modulo (CCP1)
4. Asignar el valor del Prescale del Timer 2 (T2CON)
5. Configurar el modulo CCP1 para operación PWM.
Ejemplo de frecuencias y su resolución
Regístrate para leer el documento completo.