Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| microcontrollertechnik:9._uart_und_terminal [2021/11/02 03:10] – tfischer | microcontrollertechnik:9_uart_und_terminal [2024/03/11 00:04] (aktuell) – mexleadmin | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== 9. UART und Terminal ====== | + | ====== 9 UART und Terminal ====== |
| < | < | ||
| Zeile 24: | Zeile 24: | ||
| </ | </ | ||
| ==== Video ==== | ==== Video ==== | ||
| - | + | ||
| + | {{youtube> | ||
| + | |||
| + | <WRAP hide> | ||
| {{youtube> | {{youtube> | ||
| {{youtube> | {{youtube> | ||
| + | </ | ||
| </ | </ | ||
| Zeile 36: | Zeile 40: | ||
| < | < | ||
| </ | </ | ||
| - | {{drawio> | + | {{drawio> |
| </ | </ | ||
| --> I. Vorarbeiten # | --> I. Vorarbeiten # | ||
| - Laden Sie folgende Datei herunter: | - Laden Sie folgende Datei herunter: | ||
| - | - {{microcontrollertechnik: | + | - {{microcontrollertechnik: |
| - {{microcontrollertechnik: | - {{microcontrollertechnik: | ||
| - | - {{microcontrollertechnik: | + | - {{microcontrollertechnik: |
| - | - ''# | + | |
| - | - ''# | + | |
| - | <-- | + | <callout type=" |
| + | **Beachten Sie folgendes** | ||
| + | * Es wird nun ein ATmega328 genutzt, d.h. das Programm ist nicht mehr kompatibel mit dem MiniMEXLE! | ||
| + | * Überprüfen Sie die Pins und Ports des Displays. | ||
| + | * Überprüfen Sie die Taktfrequenz. | ||
| + | </ | ||
| + | |||
| + | <-- | ||
| + | |||
| + | --> Code mit Polling # | ||
| ==== Code mit Polling ==== | ==== Code mit Polling ==== | ||
| Zeile 56: | Zeile 67: | ||
| Variante mit Polling: {{microcontrollertechnik: | Variante mit Polling: {{microcontrollertechnik: | ||
| - | <sxh c; first-line: | + | <sxh c; first-line: |
| /* ---------------------------------------------------------------------------- | /* ---------------------------------------------------------------------------- | ||
| Zeile 149: | Zeile 160: | ||
| // Festlegung der Quarzfrequenz | // Festlegung der Quarzfrequenz | ||
| #ifndef F_CPU // | #ifndef F_CPU // | ||
| - | #define F_CPU 8000000L //12288000UL // | + | #define F_CPU 8000000L |
| # | # | ||
| Zeile 467: | Zeile 478: | ||
| </ | </ | ||
| + | <-- | ||
| + | --> Code mit Interrupt # | ||
| ==== Code mit Interrupt==== | ==== Code mit Interrupt==== | ||
| Zeile 648: | Zeile 660: | ||
| initAdc(); | initAdc(); | ||
| - | initUart(); | + | initUart(); |
| sei(); | sei(); | ||
| + | UDR0 = 0; // Work around für Probleme bei Simulide <= R941 : ohne diese Zeile is kein Senden möglich | ||
| // Hauptprogrammschleife __________________________________________________ | // Hauptprogrammschleife __________________________________________________ | ||
| Zeile 890: | Zeile 903: | ||
| } | } | ||
| }</ | }</ | ||
| + | |||
| + | <-- | ||
| Zeile 896: | Zeile 911: | ||
| </ | </ | ||
| + | |||
| + | Bitte arbeiten Sie folgende Aufgaben durch: | ||
| + | |||
| + | --> Aufgabe# | ||
| + | |||
| + | Versuchen Sie die folgenden Zeitverlauf des UART Signals zu entschlüsseln - es kam vom vorliegenden Programm. \\ Welche neun Zeichen wurden gesendet? | ||
| + | |||
| + | <-- | ||
| + | |||
| + | |||