www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Phasenverschiebung


Autor: Fabian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, ich habe ein Problem mit der Programmierung meines ATmega8. Ich
möchte die drei Timerausgängen OC1A, OC1B und OC2 um 120° voneinander
versetzt haben und ein Puls-Pausen-Verhältnis von 50% haben. Ich möchte
damit nämlich einen Wechselrichter ansteuern der mir ein
3-Phasenwechselstrom erzeugt. Ich habe es schon geschafft OC1A und OC1B
um 120° zu verschieben, aber ich denke das es noch besser geht. Wäre um
Hilfe sehr dankbar.
Hier mein Programm, das ich schon habe:


$Regfile = "m8def.dat"
'ATmega8-Deklarationen
$Crystal = 3686400
'Quarz:3,6864 MHz

Config Pinb.1 = Output
Config Pinb.2 = Output
Config Pinb.3 = Output


TCCR1A = &B01010000
TCCR1B = &B00001010
TCCR2  = &B00010100
Config TIMER2 = PWM , Compare PWM = Clear Down , Prescale = 1

PWM1A = 11
PWM1B = 3
PWM2 = 127


Do
Loop
End

Autor: Rage (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
oc1 ist ein 16-bit timer und oc2 ein 8-bit timer. hast du das
berücksichtigt?

Autor: Fabian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hat keiner ne Idee. Ich habe bis jetzt folgendes:

$Regfile = "m8def.dat"
'ATmega8-Deklarationen
$Crystal = 3686400                                          'Quarz:
3,6864 MHz

Config Pinb.1 = Output
Config Pinb.2 = Output
Config Pinb.3 = Output

Config TIMER1 = PWM , PWM = 8 , Compare A PWM = Clear Up , Compare B
PWM = Clear Up , Prescale = 1
Config TIMER2 = PWM , Compare PWM = Clear Down , Prescale = 1

DO
  PWM1a = 127
  PWM1b = 127
  Ocr2 = 127
Loop
End

Damit habe ich 3 gleiche Signale, aber wie kann ich die
Phasenverschiebung hinbekommen?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.