Proteus Oszilloskop Anzeige

OP #3711421
Lesenswert?

Hi und zwar habe ich PIC16F877A und damit erzeuge ich zwei PWM-Signale.
Ich will, dass die Signale zu einander Phasenverschoben sind also habe 
ich folgendes gemacht
1
PWM1_Start();                                          
2
Delay_us(10);
3
PWM2_Start();

müsste doch so funktionieren, nun zeigt mir aber das Programm das Bild 
das angehängt ist an. Ich vermute mal es liegt an den Einstellungen vom 
Oszilloskop und nicht am Code, kennt sich wer mit Proteus aus und kann 
mir sagen wie ich das richtig triggern kann?
Angehängte Dateien:
Gast #3711436
Lesenswert?

Oder deine PWM Signale sind an den gleichen Timer gekoppelt. Da kannst 
du die PWM starten wie du willst, sie werden immer gleich laufen. Du 
kannst ja mal den Trigger auf den PWM1 setzen, und dann einschalten. 
Dann sollte PWM2 10us später deckungsgleich mit PWM1 sein.
#3711449
Lesenswert?

Luca E. schrieb:
> Deine Zeitbasis steht auf 5µS/Div. Du startest die zweite PWM 10
> µ-sekunden nach der ersten (= 2 Div). Die beiden Signale liegen also
> wieder aufeinander.

Da die Periodendauer 20µS beträgt müsste eine Verschiebung von 180° 
vorliegen. Das stimmt also eigentlich schon.


devynf hat da vollkommen recht. Der PIC verwendet den Timer2 als 
Zeitbasis für die Hardware PWM. Man kann zwar die Tastgrade unabhängig 
voneinander ändern, allerdings nicht die Periodendauer oder 
Phasenverschiebung. Das würde nur mit einer Soft-PWM gehen.
OP #3711544
Lesenswert?

Kevin S. schrieb:
> Luca E. schrieb:
>> Deine Zeitbasis steht auf 5µS/Div. Du startest die zweite PWM 10
>> µ-sekunden nach der ersten (= 2 Div). Die beiden Signale liegen also
>> wieder aufeinander.
>
> Da die Periodendauer 20µS beträgt müsste eine Verschiebung von 180°
> vorliegen. Das stimmt also eigentlich schon.
>
>
> devynf hat da vollkommen recht. Der PIC verwendet den Timer2 als
> Zeitbasis für die Hardware PWM. Man kann zwar die Tastgrade unabhängig
> voneinander ändern, allerdings nicht die Periodendauer oder
> Phasenverschiebung. Das würde nur mit einer Soft-PWM gehen.

also wenn ich eine Phasenverschiebung der PWM-Signale erreichen will 
muss ich das ganze anders lösen ja???

Wie genau würde ich es denn schaffen eine 180° Verschiebung zu 
erreichen, zwischen den beiden PWM`s?
#3711678
Lesenswert?

Das Stichwort hatte ich ja schon genannt: Soft(ware)-PWM. Dazu findet 
man bei einer Suchmaschine reichlich Anregungen. Einige Compiler liefern 
auch bereits fertige Routinen dafür mit.


Wenn es dir aber wirklich nur um 180° Grad Verschiebung geht, kannst du 
dein erstes PWM Signal ja einfach Invertieren.

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