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

Temas similares

15/06/2012 #1


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:



(http://i46.tinypic.com/fbi5hz.jpg)
15/06/2012 #2
Moderador

Avatar de Chico3001

Necesitas habilitar un timer que te diga cuando comenzar cada PWM...programas el primer PWM, esperas un tiempo x y programas el segundo PWM
17/06/2012 #3


Chico3001 dijo: Ver Mensaje
Necesitas habilitar un timer que te diga cuando comenzar cada PWM...programas el primer PWM, esperas un tiempo x y programas el segundo PWM
Y si quisiera controlar ese tiempo con un potenciometro?? como podria hacerlo ¿?
25/10/2012 #4


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.
Archivos Adjuntos
Tipo de Archivo: pdf manual_PBP.pdf (529,6 KB (Kilobytes), 84 visitas)
26/10/2012 #5


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;
}
28/10/2012 #6


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.
28/10/2012 #7
Moderador

Avatar de D@rkbytes

Gixz dijo: Ver Mensaje
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.
Imágenes Adjuntas
Tipo de Archivo: jpg SCH.jpg (54,1 KB (Kilobytes), 33 visitas)
Archivos Adjuntos
Tipo de Archivo: rar 16F877A PWM_POT.rar (62,4 KB (Kilobytes), 79 visitas)
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.