Zum Inhalt springen

Informatik · Klasse 10–13 · aktualisiert

Controller in der Informatik einfach erklärt

Du lernst, was ein Mikrocontroller ist, wie sich Chip und Arduino-Board unterscheiden, wie Bitoperationen Register steuern und wie ein Interrupt abläuft.

0 von 9 Aufgaben gelöst

Controller in der Informatik einfach erklärt

Kurz gesagt

Ein Mikrocontroller ist ein Chip mit Prozessor und Peripheriefunktionen, oft auch mit Speicher. Ein Board wie der Arduino UNO trägt ihn samt Anschlüssen. Ein Interrupt-Controller wie der 8259 ordnet Unterbrechungen nach Priorität und gibt sie an die CPU weiter.

In deiner Waschmaschine, der Fernbedienung und im Auto steckt oft ein kleiner Computer auf einem einzigen Chip. Dieser Chip muss auf Ereignisse sofort reagieren, zum Beispiel auf einen Tastendruck. Hier lernst du, wie das aufgebaut ist und wie du ihn programmierst.

Deine Lernziele

Hake ab, was du schon kannst. Löst du alle Aufgaben eines Abschnitts, hakt Mela das Ziel für dich ab.

4 Abschnitte

Ein Mikrocontroller ist ein Halbleiterchip, der einen Prozessor und auch Peripheriefunktionen enthält. Oft liegen Arbeits- und Programmspeicher teilweise oder ganz auf demselben Chip. Er ist damit ein „Ein-Chip-Computersystem“ und bringt alle notwendigen Bausteine für einen kleinen Computer mit.

Bei einem klassischen Mikroprozessor sind Bausteine wie Takt- und Reset-Erzeugung, Interruptcontroller, Zeitgeber und Schnittstellenbaustein dagegen eigene Bausteine. Seit etwa den 2000er Jahren ist die Grenze teilweise fließend: Im einfachsten Fall werden diese Komponenten in den Chip selbst integriert.

Ein Programmable Interrupt Controller (PIC) ist etwas anderes. Ein Interrupt ist eine kurze Unterbrechung des laufenden Programms. Prozessoren haben oft nur einen Eingang für solche Anforderungen. Der PIC verwaltet mehrere Hardware-Interrupts und leitet sie geordnet an die CPU (den Hauptprozessor) weiter. Verwechsle ihn nicht mit der Mikrocontrollerfamilie PICmicro.

Definition

Mikrocontroller

Ein Halbleiterchip mit einem Prozessor und Peripheriefunktionen. Oft sind auch Arbeits- und Programmspeicher teilweise oder komplett auf demselben Chip.

Beispiel: Wo Mikrocontroller stecken

  1. 1Waschmaschinen und Fernbedienungen
  2. 2Steuergeräte im Auto, zum Beispiel für ABS und Airbag
  3. 3Tastatur, Maus und Drucker am Computer

Teste dich

LeichtWas ist ein Programmable Interrupt Controller (PIC)?

Alles auf einen Blick

Controller

  • Mikrocontroller

    Chip mit Prozessor und Peripherie, oft auch mit Speicher

  • PIC

    verwaltet mehrere Hardware-Interrupts und leitet sie geordnet an die CPU weiter

  • Chip und Board

    Der ATmega328 ist der Chip, der Arduino UNO das Board

  • Bits im Register

    Setzen mit ODER, löschen mit UND und Negation, prüfen mit UND

  • Interrupt

    Die Anforderung mit der höchsten Priorität wird zuerst bearbeitet, danach geht es im alten Programm weiter

Musteraufgabe · Schritt für Schritt

Bits in einem Register setzen, löschen und prüfen (ausgedachtes Beispiel)

  1. 1Annahme: Ein 8-Bit-Register R hat den Inhalt 01010100. Die Bits zählen wir von rechts ab 0.
  2. 2Bit 3 setzen: R |= (1 << 3). Die Maske (1 << 3) ist 00001000.
  3. 3ODER ergibt 01011100. Nur Bit 3 ist neu auf 1, alle anderen Bits bleiben gleich.
  4. 4Bit 2 löschen: R &= ~(1 << 2). Die Maske ~(1 << 2) ist 11111011.
  5. 5UND von 01011100 und 11111011 ergibt 01011000. Bit 2 ist jetzt 0, der Rest bleibt.
  6. 6Bit 4 prüfen: R & (1 << 4) ergibt 00010000. Das ist nicht 0, also ist Bit 4 gesetzt.

Fehler finden

Prüfe die Aussagen zum Register Q (ausgedachtes Beispiel) In einer Zeile steckt ein Fehler. Tippe sie an.

Lückentext

Wähl in jeder Lücke das passende Wort und prüf dann deine Antworten.

Bei einem Mikrocontroller sitzen Prozessor und Peripheriefunktionen auf . Ein Bit löschst du mit einer UND-Verknüpfung und einer zusätzlichen . Beim 8259 hat im Normalfall Eingang 0 die Priorität.

Karteikasten

Erst selbst überlegen, dann umdrehen.

Übung mit Feedback

Abschluss-Check: Controller

LeichtWas enthält ein Mikrocontroller auf seinem Chip?
MittelWas passiert bei PORTB |= (1 << PB1) mit den anderen Bits des Registers?
SchwerWozu liest die CPU beim Interruptzyklus einen Wert vom Datenbus?

Weiterlesen in Informatik