Ich habe einen ISR, der eine Anzeige mit einer festen Frequenz aktualisiert. Ich möchte meine Routine optimieren, um den Overhead zu minimieren und so viel CPU-Zeit wie möglich für andere Verarbeitungen offen zu halten, aber ich habe keine gute Möglichkeit, Metriken zu sammeln, um meine CPU-Auslastung zu bestimmen.
Ich könnte mir die Baugruppe ansehen und die Routine analysieren, aber ich habe nicht die Geduld oder die Fähigkeit, dies genau zu tun. Ich habe auch nicht das Gefühl, dass ich schrecklich feinkörnige Ergebnisse brauche, nur einen einfachen Prozentsatz der CPU-Zeit, die von der isr belegt wird.
Ich könnte einen Pin nur dann hoch setzen, wenn der isr aktiv ist, und ihn extern messen. Das hat ein Minimum an Overhead im Code, aber ich weiß nicht, womit ich es messen soll. Ich habe kein Oszilloskop oder ähnliches. Gibt es eine einfache IC oder eine einfache Möglichkeit, ein anderes Mikro zur Messung des Arbeitszyklus zu verwenden? Ich habe von dedizierten Frequenzzählerchips gehört, aber gibt es etwas für den Arbeitszyklus?