Jeder Interrupt-Quelle kann durch Programmieren eine hohe oder niedrige Prioritätsstufe zugewiesen werden, indem ein bestimmtes Bit in speziellen Funktionsregister IP gesetzt oder gelöscht wird (siehe oben). Ein Interrupt niedriger Priorität kann durch einen Interrupt hoher Priorität unterbrochen werden, aber nicht durch einen anderen Interrupt niedriger Priorität. Ein Interrupt hoher Priorität kann durch eine andere Interrupt-Quelle nicht unterbrochen werden.
Falls Interrupt-Anforderungen verschiedener Prioritätsstufen gleichzeitig auftreten, wird die Interrupt-Anforderung der höheren Prioritätsstufe abgearbeitet. Anschliessend der Interrupt der niedrigen Interruptstufe. Erscheinen jedoch Interrupt-Anforderungen derselben Prioritätsstufe gleichzeitig, bestimmt ein interner Auswahlprozess, welcher zuerst abgearbeitet werden soll. Somit gibt es innerhalb einer Prioritätsstufe eine weitere Prioritätsskala, die durch den internen Auswahlprozess bestimmt ist. Die Reihenfolge ist entsprechend wie in obiger Tabelle festgelegt.
Ob und welche Interrupt-Quellen einen Interrupt auslösen wird im SFR Interrupt-Freigabe-Register (IE) definiert. |