Probeklausur 3
Aufgaben. Lösungen: Probeklausur 3 - Lösungen.
- Dauer: 90 Minuten
- Hilfsmittel: 1 doppelseitig handbeschriebenes DIN-A4-Blatt, kein Taschenrechner
- Gesamt: 100 Punkte
| Nr. | Thema | Punkte |
|---|---|---|
| 1 | Grundlagen | 16 |
| 2 | Timer | 22 |
| 3 | Parallele I/O | 14 |
| 4 | Signalverarbeitung | 18 |
| 5 | CRC | 14 |
| 6 | Seriell & Leitungscodes | 10 |
| 7 | Interrupts | 6 |
Aufgabe 1 - Grundlagen (16 P)
Kreuzen Sie an, welche Aussagen richtig sind.
1.1 Ein Mikrocontroller integriert Prozessorkern, Speicher und Peripherie auf einem Chip.
1.2 volatile weist den Compiler an, eine Variable in ein Register zu legen und nicht mehr aus dem Speicher zu lesen.
1.3 Bei Memory-Mapped I/O werden Peripherieregister über normale Lese-/Schreibzugriffe auf Adressen angesprochen.
1.4 DMA überträgt Daten zwischen Peripherie und Speicher ohne Beteiligung des Prozessorkerns.
1.5 Harte Echtzeit bedeutet eine statistische, aber nicht garantierte Einhaltung der Reaktionszeit.
1.6 Ein Watchdog löst einen Reset aus, wenn das Programm nicht regelmäßig ein Lebenszeichen liefert.
Aufgabe 2 - Timer (22 P)
Ein Timer des AT91/SAM3X (16-Bit-Zähler, ) am Board mit soll ein Wave-Signal an TIOA erzeugen: Frequenz 500 Hz, Tastverhältnis 20 %. Prescaler wählbar aus 2, 8, 32, 128, 1024.
2.1 (2 P) Wie groß ist die Periodendauer des Signals? 2.2 (4 P) Wählen Sie den optimalen Prescaler (Rechenweg). 2.3 (3 P) Wie viele Nanosekunden dauert ein Inkrement des Zählregisters? 2.4 (4 P) Welchen Wert erhält RC? 2.5 (4 P) Welchen Wert erhält RA für die 20 %? 2.6 (3 P) Mit welchem Wert für RB erzeugen Sie an TIOB dieselbe Frequenz mit 50 %? 2.7 (2 P) In welchem Modus (Compare/Wave/Capture) arbeiten Sie, und welche Bedingung setzt den Zähler zurück?
Aufgabe 3 - Parallele I/O (14 P)
Eine high-aktive 7-Segment-Anzeige ist an PIOA verdrahtet: a=PA0, b=PA1, c=PA2, d=PA3, e=PA4, f=PA5, g=PA6. Zu Beginn sind alle Segmente aus.
3.1 (5 P) Welche Ziffer erscheint nach:
PIOA->PIO_SODR = 0x5B;
3.2 (5 P) Anschließend wird ausgeführt:
PIOA->PIO_CODR = 0x10; // e
PIOA->PIO_SODR = 0x04; // c
Welche Ziffer erscheint nun?
3.3 (4 P) Warum verwendet man getrennte SODR/CODR-Register statt eines einzigen Datenregisters, in das man den kompletten Wert schreibt?
Aufgabe 4 - Signalverarbeitung (18 P)
Ein Signal .
4.1 (3 P) Zeichnen bzw. beschreiben Sie das Amplitudenspektrum (Frequenz + Amplitude je Komponente). 4.2 (2 P) Ist die Komponente enthalten? Mit welcher Amplitude? 4.3 (4 P) Mit welcher minimalen Abtastfrequenz kann artefaktfrei rekonstruiert werden? 4.4 (3 P) Sie tasten die 300-Hz-Komponente mit ab. Welche Alias-Frequenz entsteht? 4.5 (3 P) Ein 10-Bit-ADC hat einen Eingangsbereich von 5 V. Wie groß ist die Auflösung? 4.6 (3 P) Sie tasten mit und 12 Bit über 5 s ab. Wie viele Byte entstehen?
Aufgabe 5 - CRC (14 P)
Generatorpolynom .
5.1 (2 P) Geben Sie in binärer Form an.
5.2 (6 P) Berechnen Sie die Prüfbits (FCS) für die Nachricht 1101 (Modulo-2-Division).
5.3 (3 P) Auf der Empfängerseite kommt 1101001 an. Ist die Übertragung gültig?
5.4 (3 P) Welche Hardware realisiert die CRC-Berechnung, und wie viele Iterationen benötigt die Division für 5.2?
Aufgabe 6 - Seriell & Leitungscodes (10 P)
6.1 (2 P) Erklären Sie die Angabe „19200 8E1". 6.2 (2 P) Wie viele Bit umfasst ein Zeichenrahmen bei 8E1? 6.3 (3 P) Wahr/Falsch: Bei asynchroner Übertragung synchronisiert sich der Empfänger auf das Startbit. 6.4 (3 P) Ein Manchester-Signal (IEEE 802.3: fallend = 0, steigend = 1) zeigt in vier Taktintervallen die Flanken: steigend, fallend, fallend, steigend. Welche Bitfolge ist codiert?
Aufgabe 7 - Interrupts (6 P)
7.1 (3 P) Nennen Sie zwei Vorteile von Interrupts gegenüber Polling. 7.2 (3 P) Was ist das Shared-Data-Problem und wie löst man es?