
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
||
|
> Ich will natürlich das Ziel weiter verfolgen, jedoch habe ich von dem,was in dem Beitrag > stand ehrlich gesagt 10 % verstanden. > Wie funktioniert denn die sysroutine? Die anleitung spricht von impulsen variabler länge. > um welche impulslängen handelt es sich (in ms) und wie lang sind die Pausen? dazu ist etwas wissen über das betriebssystem notwendig, dass du dir unter anderem auch hier anlesen kannst. in dem kontroller wird durch software ein 20-ms-tick erzeugt. von diesem leiten sich einige systemfunktionen direkt ab (in BASIC: timer, pause), andere indirekt (der sekundentakt, DCF-uhr etc.). durch ihre installation wird die sysroutine bestandteil der "zeiterzeugung", was nachteilig ist. nachteilig deshalb, weil sie im prinzip exact alle 20 ms den port auf high setzt, dann eine zählschleife runterrasselt (somit den prozessor praktisch schlafen legt), den port wieder abschaltet und an basic zurückgibt. der kürzeste impuls am port kommt dabei auf 5,5 µs und der längste auf ziemlich 700, also fast 1 ms. schon diese tatsache machte eine änderung der sache notwendig. (statt 255 mal die schleife den port irgendwann auf high setzen) mal davon abgesehen ist das demo zusätzlich falsch, denn der programmierer der sysroutine hat eine wichtige sache ausser acht gelassen: das die sache von einem zweiten interrupt überlagert wird und die routine somit 57 mal statt nur 50 mal pro sek aufgerufen wird - und bremst. aber gut.. es kommt auf den versuch an. sag einfach mal an, welche ports und welche variablen (byte-nr) du verwenden willst und ich versuche, das so zu machen, dasses geht. ich versuche (!). |
| Antwort schreiben |