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 ! > > > > Hallo Olaf, > > > > > > > > so ähnlich hatte ich es jetzt nach neuerlichem Kopfeinsatz (oh in der Wand ist jetzt ein Loch *gg*) > > > > auch verstanden. > > > > Ich denke, hier spielt das Multithreading eine nicht zu unterschätzende Rolle. > > > > while und sleep sind hier zwei verschiedene Paar Schuhe. > > > > Wenn Dein Keyboard-Thread gestartet wird hat er eine Prio von 32. Das heißt, er darf 32 VM-Befehle > > > > abarbeiten. > > > > Wenn der Thread jetzt die Key-Funktion aufruft, wwird ohne Tastendruck das ganze an while "hängen- > > > > bleiben". Also wird entsprechend der Prio ständig while aufgerufen, was Zeit kostet bis zur > > > > Threadumschaltung. > > > > Drückst Du jetzt eine Taste, saust key() durch und bleibt bei sleep 200 hängen. > > > > sleep gibt die Threadbearbeitung sofort weiter, d.h. jetzt fehlt plötzlich Zeit bei dir zwischen den pulses. > > > > > > > > Die Theorie hat ein paar Haken: > > > > Das ganze macht höchstens 2ms aus. > > > > Es müßte am Oszi zu sehen sein. > > > > > > > > Gruß krassos > > > > > > Hallo krassos, > > > > > > wenn ich mir deine Worte so durch den Kopf gehen lassen ...... könntest Du damit voll recht haben !!! :-) > > > Auf diese Idee bin ich noch garnicht gekommen. > > > > > > Ich werde dir Prio mal auf 5 setzen und dann berichten. > > > > > > Danke für den guten Denkanstoß (mit dem Hammer auf den Kopf :-))) ) > > > > > > Gruß > > > > > > > Versuch es einfach mal mit dem PLM-port. > > <code> > > > > //init > > plm.settimebase(0,7); //51,2us > > plm.setperiod(0,11); > > plm.out(0,10); //pulslänge ca. 0,5 ms > > > > > > //...Ausführung > > plm.setperiod(0,delay) //mindestwert 11; maxwert 19531 für 1sec > > </code> > > Hi, > > danke. Ich werde es am Wochenende mal probieren und dann berichten. > > Gruß > > Olaf