pwm

Upload: jose-luis-echeverria

Post on 06-Mar-2016

216 views

Category:

Documents


0 download

DESCRIPTION

COMO GENERARLO

TRANSCRIPT

PWMPasos para generar mi pwm:

Cristal= valor interno o externo (ejem. 4 MHz, 20 MHz etc.)TOSC = 1 / valor del cristalTMR2 preescaler = T2_DIV_BY_16 en este caso es 16 como bien puede ser 1 o 4.

1.- habilitamos el pwm, indicando que se va usar el modulo como pwm ya que dicho modulo es compartido con varias funciones.Es posible el que el micro tenga 2 mdulos CCP, y por lo tanto 2 pwm, podemos habilitar uno o los 2 mdulos independientemente, sin embrago como ambos usan el registro PR2 y el timer TMR0 como base de tiempo la frecuencia programada ser la misma para los 2 pwm, lo que si ser posible variar ser el ciclo de trabajo del pwm.

FUNCIONES:La funcin setup_timer_2(T2_DIV_BY_16, 255 ,1) programa el timer 2 del micro. El primer parmetro setup_timer_2(T2_DIV_BY_16, 255 ,1) es un preescaler, es decir, un divisor, divide la frecuencia del micro entre 16 as como T2_DIV_BY_4 divide la frecuencia entre 4.El segundo parmetro setup_timer_2(T2_DIV_BY_16, 255 ,1) es un numero de 8 bits (de 0 a 255) quiere decir que deseamos todo el periodo que el oscilador dividido por el preescaler pueda dar. Si colocramos 123 indicaramos que queremos la mitad del mismo.Para un PWM de 10 bits significa que admitir valores entre 0 y 1023 internamente el micro lo que har es ajustar el tiempo al ciclo de trabajo que se haya escogido por ejemplo si se escoge 512 para el PWM de 10 bits significara que la tensin media es la mitad de la tensin de alimentacin. Este dato determina cuando el reloj se reinicia. El tercer parmetro setup_timer_2(T2_DIV_BY_16, 255 ,1) son las veces que el timer se reiniciara antes de una interrupcin, esto es, las veces que habr la interrupcin de un nivel de bajo a alto de tu pwm antes de una interrupcin. Se usa para saber cundo activar la interrupcin Ejemplo de generacin de PWM con frecuencia constante y dutycicle variable.

Ejemplo de generacin de PWM de frecuencia variable y dutycicle constante (50%)

http://hzsquare.blogspot.mx/2011/11/generacion-de-pwm-con-pic-pic-c-de-css.html