Delay al pwm con pic

Bueno me gustaría sabeer como poder agregar un "delay" al pwm, es decir generar 2 o 3 pwm con un delay entre ellos, algo así por ejemplo:

fbi5hz.jpg


(http://i46.tinypic.com/fbi5hz.jpg)
 
Necesitas habilitar un timer que te diga cuando comenzar cada PWM...programas el primer PWM, esperas un tiempo x y programas el segundo PWM
 
Tienes que declarar POT y dar un pin de entrada a este para informarte mejor aquí te dejo el manual del PBP para que leas sobre esta instrucción. Ojala y sirva de algo.
 

Adjuntos

  • manual_PBP.pdf
    529.6 KB · Visitas: 88
Última edición por un moderador:
para empezar en que programas tu pic, ASSAMBLER, BASiC, o C?

bueno , ahora que recuerdo una vez programe un pwm para un inversor trifasico, dode se necesitaban 6 pwm, y lo resolví son usar timers, o pwm.

la técnica consiste en primero ver cual es el Delay mínimo que te permite el pic y el compilador, después ver si estos se adecuan al la frecuencia del PWM y a su DUTY, y por ultimo es en tu caso solo utilizar dos o tres bits de algún puerto, configurarlos como salidas y estar conmutandolos en el tiempo que corresponde.

Por ejemplo para 6 pwm que están desfasados 120 grados.

el código es el siguiente, en C.

Código:
while(1)
{
PORTD=0B01000010;
Delay1KTCYx(6);
PORTDbits.RD6=0;// para evitar un corto    

PORTD=0B00000110;
Delay1KTCYx(6);
PORTDbits.RD1=0; // para evitar un corto

PORTD=0B00001100;
Delay1KTCYx(6);
PORTDbits.RD2=0;// para evitar un corto

PORTD=0B00011000;
Delay1KTCYx(6);
PORTDbits.RD3=0;// para evitar un corto

PORTD=0B00110000;
Delay1KTCYx(6);
PORTDbits.RD4=0;// para evitar un corto

PORTD=0B01100000;
Delay1KTCYx(6);
PORTDbits.RD5=0;// para evitar un corto

PORTD=0B01000010;
}
 
Última edición por un moderador:
Hola a todos.
Discúlpenme, me podrían ayudar con este pwm que estoy tratando de controlar con un potenciómetro usando la instrucción POT..
He realizado el siguiente programa en PBP pero la verdad que no me ha funcionado muy bien.
Se los agradecería mucho si alguien me pudiera ayudar
Código:
DEFINE OSC 4          
 I VAR BYTE    

Inicio:
 
    POT PORTB.6,255,I
    
    PWM PORTC.1,I,100  
  
GoTo Inicio           

End

Ojala me puedan ayudar.

Gracias.
 
Última edición por un moderador:
me podrían ayudar con este pwm que estoy tratando de controlar con un potenciómetro usando la instrucción POT.
El problema con la instrucción POT, es que se tiene que encontrar el valor de calibración experimentalmente.
Ya que este depende del capacitor que va en serie con el potenciómetro para funcionar.

Notas:
El valor de calibración en la instrucción POT, es llamado Scale.
Adjunto un ejemplo en PBP para que tengas una idea de como funciona PWM con POT.
También adjunto el esquema + la simulación en ISIS de Proteus.

Suerte.
 

Adjuntos

  • SCH.jpg
    SCH.jpg
    54.1 KB · Visitas: 35
  • 16F877A PWM_POT.rar
    62.4 KB · Visitas: 83
Última edición:
Atrás
Arriba