ja gut, das polling ist jetzt neben dem Interrupt und der Timer-methode noch eine dritte.
Auch zu dieser mal noch eine Frage:
angenommen es kommen theoretisch bei der gesetzten Geschwindigkeit 3000 Impulse pro Sekunde (alle 0,3ms).
So, jetzt muss ich den unterschied feststellen können wenn das Rad1 2993 Impulse gemacht hat und das Rad2 z.B. 3002 Impulse.
Das heist das umgerechnet:
Rad1: Impulse alle 0,3341129ms
Rad2: Impulse alle 0,3331112ms
so, wenn ich also die Eingänge alle 0,3ms abfrage (polle) dann gibt es eine überschneidung und ich komme nicht auf die Reellen Werte.
Um genau messen zu können müsste ich also in diesem Fall mindestens alle 0,001ms den Eingang abfragen. das entspricht einer Frequenz von 1MHz...
Oder andersrum ausgedrückt (weil ich manchmal nicht so gut sagen kann was ich meine):
Wenn ich die beiden Eingänge alle 0,3ms polle dann wird im oberen Beispiel nach 100 Messungen (30ms) das Ergebniss lauten das beide Motoren gleich schnell drehen. Weil ich beim Abfragen ja nie weiß ob ich jetzt am Ende eines Impuls oder am Anfang bin...
Oder habe ich hier einen Denkfehler?
Lesezeichen