Autor Tema: divisor de frecuencia para obtener pwm<=60Hz  (Leído 3861 veces)

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

Desconectado jadacuor

  • PIC10
  • *
  • Mensajes: 19
divisor de frecuencia para obtener pwm<=60Hz
« en: 09 de Julio de 2010, 00:00:27 »
hola a todos, ya he leido bastante acerca del pwm del pic16f877a y se que con un cristal de 4 MHz la frecuencia minima que se puede obtener es 244Hz y resulta que necesito un pwm con una frecuencia mucho mas baja (10 - 60Hz), tambien les cuento que pense utilizar un cristal de 1MHz y lo minimo que obtuve fue 61Hz pero por estos lares no encuentro ese tipo de cristal, asi que vuelvo al cristal de 4MHz y ahora tengo la idea de utilizar un contador como divisor de frecuencia. ya intente con la simulacion en proteus pero no anda bien (utilice un 74ls93) y pues no se que pasa (creo que teoricamente esta bien), asi que acudo a ustedes en busca de soluciones o ideas que seran bienvenidas.

de antemano muchas gracias

Desconectado KALLITOS

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1256
Re: divisor de frecuencia para obtener pwm<=60Hz
« Respuesta #1 en: 09 de Julio de 2010, 00:30:39 »
Hola, puedes usar el timer1 + interrupcion para lograr los 16,666ms, yo tengo un codigo que genera 60Hz y pwm variable con cristal de 20Mhz prescaler de 2 y un set de 23871, te dejo de tarea calcular los valores que deberan llevar las variable seteo_low y seteo high ;-) (ambos deben generar tiempos que sumados den 16,666ms):

Código: C
  1. #INT_TIMER1
  2. void timer_1(void)
  3. {
  4. pulso++;
  5. if(pulso == 1)
  6.    {
  7.    output_low(salida);
  8.    set_timer1(seteo_low);
  9.    }
  10. if(pulso > 1)
  11.    {
  12.    output_high(salida);
  13.    set_timer1(seteo_high);
  14.    pulso = 0;
  15.    }  
  16. }

Te recomiendo te descargues el Redraven Pic Timer Calculator para facilitar tus calculos.  :)

Saludos

A un microcontrolador hay que sacarle hasta el ultimo byte....(YO)

Cómo puede ser que un pic24EP512 me quede corto de memoria, señores de MICROCHIP saquen pics con más memoria flash

Más de 45 mil lineas de codigo y aun no termino el equipo, asu mare!!

S34ML08G1TFI200 no necesito mas memoria externa.

Desconectado jadacuor

  • PIC10
  • *
  • Mensajes: 19
Re: divisor de frecuencia para obtener pwm<=60Hz
« Respuesta #2 en: 09 de Julio de 2010, 00:40:47 »
hey muchisimas gracias por responder, en realidad habia pensado hacer algo asi solo que mi mente lo visualizaba mas complicado, tedioso y extenso, y ahora veo el codigo que me pasas y sorpresa es muy corto, todavia no comprendo como variar el ancho del pulso por ejemplo con la entrada del adc (con un potenciometro en ra0), te agradeceria me explicaras


 

anything