Richtig!Nur was meinst du im letzten mit Phasenjitter? Können denn überhaupt andere Interrupts aufgerufen werden, wenn das Timmer-interupt läuft?
Wenn aber gerade ein anderer Interrupt bearbeitet wird wenn ein Overflow Interrupt auftritt ??
Der Overflow Interrupt muß dann so lange warten, bis der "Fremdinterrupt" komplett abgearbeitet ist.
Was nichts anderes bedeutet, als dass die Umschaltung des Ports zu früh oder zu spät stattfindet, was sich als Phasenjitter auswirkt.
Zu viel Code in den Interrupt routinen verschärft das Problem.
Bei einem Hardwaremäßigen Betrieb wird dieser Effekt nicht auftreten, solange man nicht an den Timerregistern Werte verändert.
Ich hab auch schon mal bei ganz kritischen Sachen das Interruptflag während eines laufenden Interrupts freigegeben.
Dabei muss man aber höllisch aufpassen um das Programm nicht zum Absturz zu bringen. Stack Überlauf, sauberes sichern von Registern usw.
Ich bin mir ziemlich sicher das der Befehl NOP einen Takt braucht.
Aber schau trotzdem mal im Datenblatt nach.
Lesezeichen