PWM Pin,Duty,Cycle
Envía un tren de pulsos modulados en ancho a Pin .Cada ciclo de PWM está compuesto de 256 pasos . El ciclo útil Duty para cada ciclo varía de 0 (0%) a 255 (100%= .El ciclo PWM es repetido Cycle veces . Pin puede ser una constante , 0 - 15 , ó una variable que contenga un número de 0-15 (p.ej. B0) ó un número de Pin (p.ej. PORTA.0)
Cycle depende de la frecuencia del oscilador .Con un oscilador de 4 Mhz , cada Cycle será de aproximadamente 5 mseg. de largo .Con un oscilador de 20 Mhz el largo aproximado será de 1 mseg. Definir un valor de OSC no tiene efecto sobre PWM . El tiempo de Cycle siempre cambia con la velocidad del oscilador en uso .
Pin se convierte en salida justo antes de la generación del pulso y vuelve a ser entrada , cuando cesa .La salida de PWM en un pin tiene mucho ruido , y no tiene forma de onda cuadrada .Es necesario usar algún tipo de filtro para convertirla en algo útil . Un circuito R/C se puede usar como un simple convertidor D/A .
PWM PORTB.7,127,100 ´ envía una señal PWM con un ciclo útil del 50% al pin 7 , durante 100 ciclos
HPWM, Channel, Dutycycle, frecuencia
Hace salir un tren de pulso modulado en anchura usando PWM por hardware ,disponible en algunos PICmicro . Puede ejecutarse continuamente en segundo plano mientras que el programa está ejecutando otras instrucciones.
Channel especifica qué canal fisico PWM se va a utilizar.
Algunos dispositivos tienen 1, 2 o 3 canales de PWM. En los dispositivos con 2 canales, la frecuencia debe ser igual en ambos canales.
Dutycycle especifica la relación de (alta-baja) con./desc. de la señal.
Se extiende a partir de 0 a 255, donde 0 está apagado todo el tiempo y 255 es alto todo el tiempo. Un valor de 127 da un ciclo de 50% (onda cuadrada). La frecuencia es la frecuencia deseada de la señal de PWM. No todas las frecuencias están disponibles en todas las configuraciones del oscilador. La frecuencia más alta a cualquier velocidad del oscilador es 32767Hz. La frecuencia usable más baja de HPWM en cada configuración del oscilador se muestra en la tabla siguiente:
Algunos dispositivos, tales como el PIC18C452, tienen pines alternos que se puedan utilizar para HPWM. Los DEFINEs siguientes permiten el usar de estos pines:
DEFINE CCP1_REG PORTC ‘Hpwm 1 pin port
DEFINE CCP1_BIT 2 ‘Hpwm 1 pin bit
DEFINE CCP2_REG PORTC ‘Hpwm 2 pin port
DEFINE CCP2_BIT 1 ‘Hpwm 2 pin bit
los siguientes DEFINEs especifican qué temporizador, 1 o 2, utilizar con el canal 2 de PWM y el canal 3 de PWM para los dispositivos de PIC17C7xx. El valor por defecto es el temporizador 1 si ningún DEFINE se especifica.
DEFINE HPWM2_TIMER 1 ‘Hpwm 2 timer select
DEFINE HPWM3_TIMER 1 ‘Hpwm 3 timer select
HPWM 1,127,1000 ‘ envie a 50% ciclo de trabajo PWM a 1kHz
HPWM 1,64,2000 ‘ envie a 25% ciclo de trabajo PWM a 2kHz