Hallo, ich möchte mit einem STM32F107 Flanken einlesen und verzögert wieder ausgeben. Ich nutze dazu zwei Interrupts. Einer ließt ein und gibt die Zeitverzögerungen vor mit dem der zweite Interrupt aufgerufen wird. Außerdem dient er als Zählerweiterung, da der STM32 nur über 16 Bit Zähler verfügt. Der zweite Interrupt kann den ersten unterbrechen und dient der Flankenausgabe. Durch die höhere Priorisierung des zweiten Interrupts konnten die Schwankungen schon reduziert werden. Allerdings habe ich immernoch Schwankungen von etwa 4 µs. Wahrscheinlich sind die Interruptladezeiten unterschiedlich wenns sie vom Hauptprogramm oder aus der Main ausgeführt werden. Ich überlege jetzt fast alles aus den Interrupts raus zu nehmen und im Hauptprogramm zu erledigen, so auch die Zählererweiterung. Gibt es sonst noch Grundsätzliche Ideen wie man die Zeiten besser anpassen könnte? So dass ich eine exakte Ausgabeverzögerung habe?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.