Hi André,Zitat von André H.
der Sinn ist ganz einfach. Der Controller wird nur dann informiert wenn es höchste Zeit wird den Zähler mal zu checken, ansonsten wird er enorm entlastet dadurch.
Natürlich müsste der Überlauf auch gleichzeitig den Zähler zurücksetzen - das ist ja kein echtes Hardware Problem
Da ein echter Interrupt auslöst wird, vergehen bis zur Abfrag nu wirklich keine Zeitspannen, somit dürfte selbst der langsamste Controller keine Schritte verlieren. Und selbst wenn er tatsächlich zu spät abfragen würde, dann würde er ja automatisch die Schritte lesen die bereits vergangen sind seit dem Interrupt, denn der Zähle rhat sich ja zurück gestellt. Da der Controller ja weiss das ein Überlauf entstanden ist, kann er die Konstante addieren.
Natürlich will man nicht nur beim Überlauf Werte haben, es spricht ja auch nichts dagegen das der Controller zwischenzeitlich den Zähler abfragt. Siehst Du den Vorteil
Bei deiner Konzeption hat der Controller ne Menge Arbeit wenn er bei dem Interrupt auf einem Port (der bei jedem Minibewegung/Impuls) ankommt erst mal alle I2C Bausteine lesen muss.
Gruß Frank
Lesezeichen