Interrupt-Quellen und -Arten (extern, intern, hardware, software)
Interruptsverwaltung
Interupt-Vektor-Tabelle
Interrupts-Service-Routine
zeitlicher Ablauf der Interruptsbearbeitung
Mechanismen zur Bearbeitung konkurrierender Interrupts
Priorisierung
Unterbrechung
Problenspezifischer Einsatz dieser Mechanismen
Nutzung von I/O-Schnittstellen mittels Interrupt unter C
Laufzeitsystem für C-Programme
Unterprogrammaufruf in Assembler
Stack und Assemblerbefehle zur Stackmanipulation
Programmzustandsrettung und -wiederherstellung mittels Stack
C-Funktions-Parameterübergabe mittels Stack
Verwaltung lokalen C-Variablen mittels Stack
dynamischer Stackauf und -abbau bei geschaltelten C-Funktionsaufrufen
manuelle Interpretation des Stackinhalts mittels Debugger
Fertigkeiten
Verstehen und erläutern der Arbeitsweise eines Kleinrechnersystems inkl. seiner I/O-Schnittstellen
Detaillierten technischen Spezifikationen von I/O-Schnittstellen interpretieren, so dass zielgerichtete sinnvolle Konfigurationen erstellt werden können
Erstellen von Treiberbibliotheken in C für verschiedene I/O-Schnittstellen mit Unterstützung ihrer Interruptfähigkeit
digitale Ports
Timer/Counter
Analog-Digital-Wandler
serielle Schnittstellen
Systemverhalten aus spezifizierenden Texten herleiten
technische Texte erfassen
implizite Angaben erkennen und verstehen
fehlende Angaben
erkennen
ableiten
erfragen
Erarbeitung von Problemlösungen aus dem Bereich Messen-Steuern-Regeln, die sich mit C-Programmen realisieren lassen
Systemverhalten aus spezifizierenden Text herleiten
Auswahl und Konfiguration der benötigten I/O-Schnittstellen
Erarbeitung eines Interruptskonzeptes
Aufstellen des Zustandsüberführungsdiagramms
Auswahl der geeigneten Spezifikationsform (Moore versus Mealy)
Bewertung der Spezifikation
Vollständigkeit
Determiniertheit
Lebendigkeit
Implementierung mittels C unter Verwendung von Treiberbibliotheken
Laufzeitsystem für C-Programme analysieren und beschreiben
dynamischer Stackauf und -abbau bei geschachtelten C-Funktionsaufrufen ermitteln und beschreiben
dynamischen Stackaufbau mittels Debugger analysieren und bescheiben
Begleitmaterial
elektronische Vortragsfolien zur Vorlesung
elektronische Übungsaufgabensammlung
elektronische Software-Entwicklungsumgebung zum Compilieren, Linken, Debuggen, Simulieren
elektronische Sammlung von Beispiel-Programmen
elektronische Tutorials für Selbststudium
Handhabung der Entwicklungsumgebung
Besondere Voraussetzungen
keine
Besondere Literatur
keine
Besonderer Kompetenznachweis
keiner
Praktikum
Lernziele
Fertigkeiten
siehe Fertigkeiten, die unter "Vorlesung/Übung->Lernziele->Fertigkeiten" aufgeführt sind
zielgerichtetes Handhaben der Software-Entwicklungsumgebung
Handlungskompetenz demonstrieren
komplexere Aufgaben in einem Kleinteam bewältigen
Erarbeitung von komplexeren Problemlösungen aus dem Bereich Messen-Steuern-Regeln, die sich mit C-Programmen realisieren lassen
komplexere Problemstellungen verstehen und analysieren
Systemverhalten aus spezifizierenden Texten herleiten
System strukturiert analysieren
sinnvolle Teilsysteme erkennen
Schnittstellen zwischen Teilsystemen erfassen
Gesamtsystem auf Basis von Teilsystemes modellieren
Teilsysteme modellieren. Hierbei soweit möglich auf zur Vefürgung stehende Komponenten (I/O-Schnittstellen) abbilden, d.h. Komponentenauswahl und Konfiguration.
Problemlösung mittels Software-Entwicklungsumgebung in C implementieren, testen und am Zielsystem in Betrieb nehmen
Spezifiation von Teilsystemen in C
Treiberfunktion für zur Verfügung stehende Komponenten (I/O-Schnittstellen)
Interrupt-Service-Funktionen
Funktionen zur Implementierung von Zustandübergangsdiagrammen