Autor Tema: Duty Cicle del PWM  (Leído 2146 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado j_fernandez

  • PIC12
  • **
  • Mensajes: 89
Duty Cicle del PWM
« en: 09 de Febrero de 2006, 09:28:00 »
Hola a tod@s!!! Tras configurar el pwm mediante el wizard de CCS veo que pone que el duty cicle va entre 0 y 40, sin embargo no corresponde a la señal que tengo en la calida, a que se debe? como se entre que valores va el ciclo de trabajo?
 
Gracias y un saludo

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
RE: Duty Cicle del PWM
« Respuesta #1 en: 09 de Febrero de 2006, 16:13:00 »
La resolución que tu PWM en un PIC depende de la fórmula:



Sustituye los valores que tú uses.

Desconectado j_fernandez

  • PIC12
  • **
  • Mensajes: 89
RE: Duty Cicle del PWM
« Respuesta #2 en: 10 de Febrero de 2006, 01:24:00 »
ok! Gracias por contestar a mi pregunta, pero no acabo de entender el funcionamiento, sun tu formula en el caso que tu as puesto sale 7.39 bits, por lo que el la variable del ciclo de trabajo que va de 0 a 167? (2^7.39)

Gracias de nuevo y un saludo a tod@s!! Buen fin de semana

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: Duty Cicle del PWM
« Respuesta #3 en: 10 de Febrero de 2006, 10:55:00 »
Es que los bits no se pueden "trocear". Para representar esa horquilla necesitarás mínimo de 8 bits, aunque algunas combinaciones de esos 8 bits no las usarás nunca.

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
RE: Duty Cicle del PWM
« Respuesta #4 en: 10 de Febrero de 2006, 18:17:00 »
Según yo veo se redondea a 7bits, entonces solo puedes usar 2^7=128. Nocturno, corrígeme si estoy mal por favor. Sonrisa

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: Duty Cicle del PWM
« Respuesta #5 en: 10 de Febrero de 2006, 18:22:00 »
Si no hay nada que corregir, efectivamente 2^7=128.

Aunque ahora que releo el mensaje, no tengo claro qué es lo que pide j_fernandez.

Desconectado grouchy

  • PIC10
  • *
  • Mensajes: 39
RE: Duty Cicle del PWM
« Respuesta #6 en: 13 de Febrero de 2006, 19:50:00 »
Hola :-/

La resolucion del pwm, se refiere al numero de bits necesarios para poder manipular el duty cycle del 0-100%, ahora, a pesar del resultado q te dio de 7.39 , eso quiere decir que forzosamente necesitas un numero de al menos 8 bits para manipular el duty cycle. Ahora bien para sacar el duty cycle ( de la mayoria de microcontroladores de microchip) tenemos:

PWM duty cycle=(CCPR1L:CCP1CON<5:4> ) *Tosc*(Valor del preescalador del TMR2)

Por ejemplo para los pic16Fxxx y 18F4xx el duty cycle del pwm puede manipularse con 10 bits (CCPR1L:CCP1CON<5:4> ), sin embargo tu solo requieres  de 8 bits.

Dejame darte un ejemplo de como calcular el valor maximo para poder manipular el ciclo de trabajo del PWM.

Fosc = 20MHz;
FPWM=120Khz;
Prescalador del Tmr2=1;

Suponiendo que requieres trabajar del 0- 100 % del ciclo de  trabajo, entonces el duty cycle tendra valores entre 0- (1/120KHz), pasando de frecuencia a tiempo tenemos---->(0 seg. ---8.3333 microseg.),

PWM duty cycle=(Valor_máx) *Tosc*(Valor del preescalador del TMR2)

8.3333 us=(Valor_max)*(1/20Mhz)*(1)

despejando  Valor_max tenemos

Valor_max=8.3333 us/(50 ns)=166.6667

pero Valor_max debe ser un numero entero, entonces Valor_max=167.

Entonces el maximo valor que puedes enviar al duty cyle es 167:
set_pwm1_duty(167); // 100%
set_pwm1_duty(0);     //   0%

Espero haberme explicado bien, sino por aqui estaremos nuevamente.......SALUDOS

Desconectado j_fernandez

  • PIC12
  • **
  • Mensajes: 89
RE: Duty Cicle del PWM
« Respuesta #7 en: 21 de Febrero de 2006, 05:56:00 »
ok!! Muxas gracias a todos!!! Lo probaré y os mantendré informados.

Un saludo