Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > thread main > { > > plm.settimebase(0,0); > plm.settimebase(1,0); > plm.setmode(0,0); > plm.setmode(1,0); > plm.setperiod(0,25000); //entspricht 10ms, also halbe Netzperiodendauer > plm.setperiod(1,25000); //entspricht 10ms, also halbe Netzperiodendauer > > loop{ > wait ports.get(12); > plm.out(0,10000); > plm.out(1,10250); > } > > } > > > Das Programm soll nach einem durch die Netzfrequenz ausgelösten Pulse > (High-Low, ca. 0,5ms) an Port 12 an den PLM-Ports die eingestellten > Rechtecksignale erzeugen mit unterschiedlicher Dauer, so dass durch eine > XOR-Verknüpfung der PLM-Ports ein kurzer Puls (250x400ns) entsteht. > > Leider wandert dieser Impuls über die gesamte Periode langsam hin und > her, bleibt also nicht an der durch die Rechteckdauern festgelegten > Stelle. > Evtl. ist dies auf die schwankende Netzfrequenz zurückzuführen. Dies > soll jedoch gerade durch die Synchronisation bei jedem Nulldurchgang > (oben beschriebener Puls) kompensiert werden. > Wahrscheinlich liegt es daran, dass der PLM-Port, wenn einmal > angestoßen, immer mit den eingestellten Parametern ausgibt, also nicht > bei Pulse an Port 12 zurückgesetzt und neu gestartet wird. > > Eine Lösung über setzten und Rücksetzen von Digital-Ausgabeports erwies > sich aufgrund eines "Zitterns" des Ausgabepulses als nicht praktikabel, > zumal das Zittern schlimmer wurde, je mehr nebenläufige Threads ich > hatte (logisch). Da half auch kein Anhalten der anderen Threads, weil > der Pulse-Thread alleine schon leicht zappelte und die mögliche > Auflösung zur Verschiebung des Pulses innerhalb der halben Netzperiode > zu grob war (ich benötige ca. 0,2ms Auflösung). > > Das ganze soll übrigens zur Dimmung eines Halogenspots dienen > (Phasenanschnittsteuerung). > > Hat jemand eine Idee, wie ich das n den Griff bekommen könnte?!! Für Anregungen, > Hilfen oder gar Lösungen des Problems wäre ich sehr dankbar. > > Thomas