Syntaxe : PWMOut canal, ciclo de trabajo, ciclos
Explication :
Este comando usa una rutina de software de PWM, incluida en GCBASIC
para producir señales de PWM en el puerto seleccionado del PIC. Esta rutina no requiere del modulo PWM interno del PIC.
canal pone el canal donde la señal de PWM será generada. Esto debera ser definido previamente poniendo las constantes SoftPWM1, SoftPWM2, etc. El máximo número de canales que se tiene es 4.
ciclo de trabajo especifica el ciclo de trabajo de PWM, el cual cubre de 0 to 255. 255 corresponde a 100%, 127 a 50%, 63 a 25%, y asi sucesivamente.
ciclos es usado para poner la cantidad de pulsos PWM a suplir. Esto es útil para situaciones en la cual un pulso de largo especifico se requiera. La formula para calcular el tiempo tomado para un ciclo es:
TCICLO = (28 + 10C)TOSC + 255PWM_Retardo,
Donde C es el numero de canales usados y Tosc el el largo de tiempo necesitado para ejecutar una instruccion en el PIC (0.2 us en un PIC de 20 MHz., 1 us en un PIC de 4 Mhz). PWM_Retardo es el largo del tiempo especificado usando la constante PWM_Delay.
Ejemplo:
'Este programa controla el brillo de un LED en PORTB.0 'usando la rutina de PWM y un potenciometro. 'Seleccione el modelo de PIC #chip 16F877A, 20 'Define el Puerto PWM #define PWM_Out1 PORTB.0 'Define las direcciones del puerto dir SoftPWM1 out 'PWM dir PORTA.0 in 'Potenciometro 'Rutina principal do PWM_Out1, ReadAD(AN0), 100 '100 cicles es un valor puramente 'arbitrario aqui. loop