Gast
#783510
Hallo, ich habe einen Frequenzumrichter mit einem Tricore in Arbeit und versuche mich gerade an der Ausgangssteuerung. Bisher habe ich Ein- und Auschaltzeiten für die Leistungshalbleiter über eine Sinusfunktion einer Laufzeitvariablen ermittelt, diese mit dem Globaltimer0 verglichen und dann entsprechend die Pins geschaltet. Dieses Unterprogramm wurde einmal pro Mainschleife aufgerufen, auch wurde einmal pro Mainschleife die Laufvariable um 0,001 erhöht. Das hat prima geklappt und einen schönen Sinus gegeben. Leider ist die Frequenz des Sinus so abhängig von der Länge der Mainschleife, deshalb würde ich das Unterprogramm gerne mittels Interrupt aufrufen. Dazu bin ich folgendermaßen vorgegangen: Ich habe unter Dave SRN5 auf Überlauf von Globaltimer0 Enable Service Request Node und den SRN5 auf Interruptlevel 1 eingestellt. In der von Dave generierten Datei GPTA0.c habe ich dann zwischen // User Code Begin SRN5,2 und // Usercode End das Unterprgramm pwm(Betrag,Phase) eingetragen. Es wird aber scheinbar nicht ausgeführt. Betrag und Phase sind Globale Variablen. So eine Ferndiagnose ist sicher nicht einfach, aber vielleicht hat ja wer nen Tip, woran es liegen könnte oder was ich noch testen könnte. Hab nun 2 Tage selber herumprobiert und komme da einfach nicht weiter. viele Grüße Jens