header.self8051
Suche   ||   HOME   ||   Eigenschaften   ||   Befehlsreferenz   ||   Derivate   ||  
 Eigenschaften
     Speicherorganisation
    > SFR
        ACC
        B
        PSW
        SP
        TMOD
        TCON
        P0 - P3
        IE
       > IP
        SCON
        PCON
     Bücher / Literatur
 Befehlsreferenz
 Derivate
 interessante Links
 SiteMap
Sie sind hier: SELF8051 || Eigenschaften || SFR || IP

Interrupt-Prioritätenregister (IP)


Das Interrupt-Prioritäten-Register legt für die unterschiedlichen Interrupts deren Priorität fest.
 

Adresse: B8H

Wert nach Reset: x x 0 0  0 0 0 0 B

bitweise programmierbar

 

 

- - PT2 PS PT1 PX1 PT0 PX0
BFH BEH BDH BCH BBH BAH B9H B8H
 

 

PT2 *   bestimmt die Prioritätsstufe des Interrupts von Zeitgeber/Zählers 2
PT2 = 1  hohe Prioritätsstufe
PT2 = 0  niedrige Prioritätsstufe
nur bei 8032/52
Interrupt-Adresse: 002BH
     
PS   bestimmt die Prioritätsstufe des Interrupts des seriellen Ports
PS = 1  hohe Prioritätsstufe
PS = 0  niedrige Prioritätsstufe
Interrupt-Adresse: 0023H
     
PT1  

bestimmt die Prioritätsstufe des Interrupts von Zeitgeber/Zählers 1
PT1 = 1  hohe Prioritätsstufe
PT1 = 0  niedrige Prioritätsstufe
Interrupt-Adresse: 001BH

     
PX1   bestimmt die Prioritätsstufe des Interrupts von Anschluss /INT1
PX1 = 1  hohe Prioritätsstufe
PX1 = 0  niedrige Prioritätsstufe
Interrupt-Adresse: 0013H
     
PT0   bestimmt die Prioritätsstufe des Interrupts von Zeitgeber/Zählers 0
PT0 = 1  hohe Prioritätsstufe
PT0 = 0  niedrige Prioritätsstufe
Interrupt-Adresse: 000BH
     
PX0   bestimmt die Prioritätsstufe des Interrupts von Anschluss /INT0
PX0 = 1  hohe Prioritätsstufe
PX0 = 0  niedrige Prioritätsstufe
Interrupt-Adresse: 0003H

 

 
Prioritäten innerhalb einer Stufe

Liegt mehr als ein Interrupt innerhalb der festgelegten Prioritässtufe (hohe oder niedrige) gleichzeitig vor, so wird nach folgender Reihenfolge entschieden und abgearbeitet:

Quelle Bit Interrupt-Adresse Priorität
(Hardware-) Reset - 0000H 1 (höchste)
Externer Interrupt 0 IE0 0003H 2
Zeitgeber/Zähler 0 Überlauf TF0 000BH 3
Externer Interrupt 1 IE1 0013H 4
Zeitgeber/Zähler 1 Überlauf TF1 001BH 5
Serieller Port

RI oder TI

0023H 6
* Zeitgeber/Zähler 2 Überlauf
  oder externer Interrupt 2
  nur bei 8032/8052
 TF2 oder IE2 002BH 7 (niedrigste)

 

 

Struktur der Interrupt-Prioritätsstufen

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.

 

* nicht im 80C31/51 implementiert, nur beim 80C32/52 und aufwärts verfügbar

 

Ist Ihnen etwas aufgefallen? Fehler oder Ergänzung auf dieser Seite melden



 

Seite drucken

Send a Friend

 
 zum Seitenanfang || Impressum   © Autor Dipl. Ing. Sven Pohl


Tipp: rechtssichere Patientenverfügung einfach online erstellen für nur 14,90 €

  

 

Wertschätzen Sie den Aufwand und den Inhalt mit einer kleinen Spende. Danke.

Sie bestimmen die Höhe, jeder noch so kleine Betrag hilft.

 

   
HASM - Skyscrapper 1