Phasenverschiebung bei PWM

Gast #3541316
Lesenswert?

Hallo,
ich erzeuge 2 von einander unabhängige PWM Signale. Beide haben die 
Frequenz 10kHz also eine Periodendauer von 100µs. Momentan sind sie 
übereinander gelagert (siehe Bild 1), doch ein Signal muss ich so 
ändern, dass es High wird wenn das andere Low wird (siehe Bild 2). Diese 
Signale sollen gleichzeitig gestartet werden.

Ich verwende:
dsPIC33FJ256MC710A µC
dsPICDEM MCLV Developmend Board
PCD Compiler von CCS

Ich hoffe jemand kann mir helfen eine Phasenverschiebung bei einer PWM 
zu erzeugen.

mfg
Angehängte Dateien:
Gast #3541328
Lesenswert?

Es soll gleich aussehn.
Ja invertieren würde funktionieren aba wie sieht mein Code dann aus?

Mein Code ist momentan:

#include <33FJ256MC710A.h>
#include <stdio.h>
#include <stdlib.h>

#fuses XT,PR_PLL, NOWDT
#use delay (crystal=8M, clock=80M)

void main()
{
    set_tris_b(0);

    while(1)
    {

//1.PWM Signal
   setup_motor_pwm (1,MPWM_FREE_RUN,3998);

   set_motor_unit(1,1, MPWM_ENABLE  ,0,0);

   set_motor_pwm_duty(1,1,3600);

//2.PWM Signal
   setup_motor_pwm (1,MPWM_FREE_RUN,3998);

   set_motor_unit(1,2, MPWM_ENABLE ,0,0);

   set_motor_pwm_duty(1,2,3600);
    }
}
Gast #3542637
Lesenswert?

>dass es High wird wenn das andere Low wird (siehe Bild 2). Diese
>Signale sollen gleichzeitig gestartet werden.

Hm.. ich vermute was..


>eine Motorsteuerung machen muss.

Dachte ich mir. Die beiden Signale sollen bestimmt Hi/Lo-Side FET 
ansteuern.

Da musst DU einen Timer nehmen, der Komplementärausgänge mit Totzeit 
hat.

Sieh mal in Datenblätter eines Atmel AT90PWM... als Beispiel.
Gast #3542638
Lesenswert?

Ich glaube du solltest dir die Methoden nochmal genau ansehen. Ich kenne 
mich mit den dsPIC und dem CCS nicht aus, aber mir fällt als erstes auf:
Du hast setup_motor_pwm(), set_motor_unit() und set_motor_pwm_duty() in 
der while Schleife.
Zumindest setup_motor_pwm sollte vor der Schleife stehen.
Gast #3676563
Lesenswert?

Hallo ich habe das gleiche Problem und konnte es bisher noch nicht 
beheben. Kann mir bitte wer dabei helfen die PWM Signale zu invertieren?
Ich nutzte ebenfalls den dsPIC33FJ256MC710A und auch das dsPICDEM MCLV.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren