Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: Problem AD7/Tastatur Kategorie: CC2-Unit & Appl.Board / CC2-Station (von H. Schramm - 13.10.2003 6:19)
Als Antwort auf Re: Problem AD7/Tastatur von krassos - 10.10.2003 18:30

Hallo....

> Also wenn ich das richtig verstehe, dann gibt yield die Programmausführung an den nächsten Thread weiter.
> Bei der nächsten zuteilung von Rechenzeit geht es *hinter* yield weiter.
> Zum Verständnis: Du arbeitest mit einer Standardpriorität von 32 für deine Programmthreads.
> Das bedeutet nach 32 Befehlen der VM kommt der nächste Thread dran. Wenn z.B. nach 30 VM-Befelen das Programm schliesslich
> an Deiner Tastaturabfrage ankommt, erfolgt der Threadwechsel mittendrin. Möglicherweise liegt hier das Prob.
>
> Ein yield wie Beschrieben eingefĂĽgt, bewirkt das ein Threadwechsel an dieser Stelle erzwungen wird.
> Egal ob nach 5 oder 31 Befehlen.
> Un jeze kommts...
> Bei der nächsten Rechenzeitzuteilung stehen Dir wieder 32 VM-Befehle zur Verfügung. Und es geht nach yield, also
> direkt mit der Tastaturabfrage weiter.
> Das ist IMHO effektiver als diese Sleeps, und sollte den gleichen effekt haben.
> Dessen ungeachtet weiss ich nicht, wie schnell der C2-AD Wandler ist. Häufiger als der Wandlungzyklus schnell ist, sollte
> man den sowieso nicht Abfragen.

Ich hab das mit dem 'yield' am Freitag noch ausprobiert. Ist noch schlimmer geworden! Nur noch Aussetzer.
Was erstaunlicherweisse sehr gut hilft, ist ein 'sleep 150' vor jedem Aufruf der 'Tastaturfunktion'. Zumindest
hat das bisher am besten funktioniert.
Mir ist aber noch aufgefallen, dass es wohl alle AD-Kanäle betrifft. Die anderen 2 benutzen AD-Kanäle
machen das gleiche. Nur fällt es da nicht so auf, da die eh in dem 'Aussetzbereich' liegen und ich einen
ziemlich brutalen Filter drin habe. Da kommen jetzt auch 'sleep 150' davor. Wenn die dann auch einigermassen
gehen, werde ich das wohl so lassen.
Ich hatte schon ĂĽberlegt, ob vielleicht der AD-Wandler nen Schuss hat, aber wie will ich das ohne ein
zweites CC2 beweisen? Auf jeden Fall ein sehr komisches Verhalten!


>
> Gruss krassos
>
> PS: sleep ist im Prinzip ein yield mit Pause.
>

Das mit dem yield hab ich jetzt wenigstens auch begriffen :-)))
Nochmal vielen Dank
Gruss
Hardy Schramm


    Antwort schreiben


Antworten:

Re: Problem AD7/Tastatur (von krassos - 13.10.2003 9:32)
    Re: Problem AD7/Tastatur (von H. Schramm - 15.10.2003 6:25)
        Re: Problem AD7/Tastatur (von krassos - 15.10.2003 11:40)
            Re: Problem AD7/Tastatur (von H. Schramm - 16.10.2003 6:42)
            Re: Problem AD7/Tastatur (von krassos - 15.10.2003 11:42)
                Re: Problem AD7/Tastatur (von H. Schramm - 18.10.2003 17:53)