Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

17/04/2010 #1


Generar PWM con 12F675
Buenas amigos,

Tengo un micro 12f675, quiero generar una PWM, pero este micro no tiene para generar PWM por lo tanto hay que hacerlo por software, cosa que me ha estado causando problemas ya que el el ciclo que variando y pareciera variar en frecuencia también...

Utilice distintas estrategias sin resultados favorables, si alguien tiene alguna idea le agradezco. Vale recalcar que trabajo en lenguaje C.
17/04/2010 #2


Respuesta: Generar PWM con 12F675
distiintas estrategias? cuales has pensado? en ese pic la unica manera viable que hay de hacer un pwm es con un timer, y ese pic tiene 2. Simplemente tienes que ir cambiando en cada interrupcion el tiempo de recarga.
Un saludo
17/04/2010 #3


Respuesta: Generar PWM con 12F675
Bueno hice comparaciones con el timer0 activando en bajo o en alto si era mayor que el valor actual del timer, use las interrupciones, use el timer1 y el timer0... y bueno...

Otro cosa que me falto decir, es que necesito que el que este pwm sea regulable por un valor leido por un puerto adc.
17/04/2010 #4


Respuesta: Generar PWM con 12F675
a ver, es bastante sencillo. . si quieres una señal de 1KHz, el periodo es de 1ms, pues para un ciclo de trabajo del 50% cargas en el timer 500ns, cuando salta la interrupcion, pues cargas 1ms-500ns, para un clclo del 80%, pues para ton cargas 800ns, y para toff cargas 1ms-800ns. de esta forma es variable.
para hacer lo del adc simplemente es una regla de 3, para una lectura de 1024 (el conversor es de 10 bits) haces que la salida sea de 100, y para una lectura de 0, un ciclo de trabajo 0%.
Yo tengo hecho un programa asi pero con el pic18f con el modulo CCP.
Un saludo
17/04/2010 #5


Respuesta: Generar PWM con 12F675
Entiendo amigo, eso es lo que he estado intentando hacer... De hecho el PWM con los micro 18f no tengo problema, la cuestión es que con los retrasos generador por cada instrucción hacen que el "PWM" varie mucho es decir nunca queda estable siempre esta como dando saltos... ese es el problema... :/

Igual gracias por responder...
17/04/2010 #6


Respuesta: Generar PWM con 12F675
pero es que no hay otra forma de hacerlo, de todas formas lo que pueda variar va a ser muy poco, estamos hablando de 3 instrucciones? (dentro de la interrupción), una para saber si estamos en nivel alto o nivel bajo, otra para escribir en el registro. La adquisición de datos del adc lo puedes hacer en el programa principal que seguro que te da tiempo de sobra, es decir puedes ir leyendo el adc continuamente, y cuando entre en la interrupción tan solo escribir los nuevos valores, incluso el calculo de ton y toff podrías hacerlo en el principal.
Un saludo
17/04/2010 #7


Respuesta: Generar PWM con 12F675
Eso pensé, pero de verdad que no funciona bien... voy a esperar probar con un osciloscopio porque en simulación con proteus no se ve muy bien...
17/04/2010 #8

Avatar de Dr. Zoidberg

Respuesta: Generar PWM con 12F675
CEGO87 dijo: Ver Mensaje
Eso pensé, pero de verdad que no funciona bien... voy a esperar probar con un osciloscopio porque en simulación con proteus no se ve muy bien...
En la versión de Proteus que yo uso, el 12F629 (hermano menor del 12F675) directamente NO FUNCIONA, así que tengo que probar los algoritmos en el 16F84A o alguno superior y luego adecuar los resultados...
18/04/2010 #9

Avatar de 1jabato1

Respuesta: Generar PWM con 12F675
Hola
Utilizando la interrupción del timer0,seria algo parecido a esto,obtienes un pwm que puedes variar de 0 a 255 con la varible duty.

Código PHP:
#int_RTCC
void  RTCC_isr(void
{
ciclo++;
      if(
ciclo==0)
         
port_a.1=1;

      if(
ciclo==duty)
         
port_a.1=0;
set_timer0(frecuencia);

Un saludo,
18/04/2010 #10

Avatar de asherar

Respuesta: Generar PWM con 12F675
Fijate en la Nota de Microchip AN654. Ahí está la papa, pero tiene dos contras:
1.- está en assembler,
2.- está en inglés (debería decir "the potatoe").

http://ww1.microchip.com/downloads/e...tes/00654a.pdf
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.