Wie so oft sitzt der Teufel im Detail, Deine Messung lässt Sichern und Wiederherstellen der Prozessorregister unberücksichtigt.
Nach meinem Zitat stehen 4MHz von 16MHz zur Verfügung, 4/16tel sind 25%, entsprechend 75% Last.Bei Dir klang das neulich noch nach weniger als 66%
Die Rechnung: (([Durchschnittliche Takte pro ISR] * 12 * 20 * Bildwiederholrate) / Quarzfrequenz)*100 = Prozessorlast in Prozent.
Bei Deiner C-Version hast Du jetzt ungefähr 680 Takte von ISR-Einsprung bis Rückkehr in den unterbrochenen Code.
Lesezeichen