Außer der Möglichkeit mit dem Weckalarm kannst du die Aufrufe wie "L PEBx" auch in das laufende Programm "einstreuen". Die oberste sicher bearbeitbare Signalfrequenz ergibt sich dann aus dem größten zeitlichen Abstand zweier Aufrufe, wenn das Signal "symmetrisch" (50% duty cyycle) ist.. Der Aufwand kann geringer sein, als wenn jedesmal ein Weckalarm oder ein Prozeßalarm erfolgt.
Aber Achtung, wenn die Ausführungszeit des Programms zwischen den Aufrufen schwanken kann, insbesondere durch bedingte Ausführung von Anweisungen und Unterprogrammen, Überspringen von Anweisungsblöcken oder Schleifen variabler Länge.
Die zeitlich "passenden" Stellen für die zusätzlichen Aufrufe lassen sich natürlich durch addieren der (worst case) Ausführungszeiten der dazwischenliegenden Befehle ermitteln. Eine einfache (aber nicht sichere, da "worst case" nicht gegeben) Kontrolle ist, bei jedem Aufruf zusätzlich einen Ausgang durch direkten Peripheriezugrif (T PAB) zu invertieren und die Zeiten auf einem Oszilloskop darzustellen.
Bei jeder Programmänderung müßte diese Kontrolle wiederholt werden.