kramann.info
© Guido Kramann

Login: Passwort:










8 Übung zu Datenpufferung Sommer 2017

8 Exercise on data buffering summer 2017 (EN google-translate)

8 Ćwiczenie z buforowaniem danych latem 2017 r (PL google-translate)

Überblick

overview

Przegląd

Es soll ein Moresesystem entwickelt werden.

It should be developed a Moresesystem.

Powinien zostać opracowany system MoreSystem.

Texte, die im Serial-Monitor eingegeben und an den Arduino-Micro geschickt werden, sollen Zeichen für Zeichen in Morsepulse umgesetzt werden.

Texts that are entered in the serial monitor and sent to the Arduino Micro, should be implemented character by character in Morsepulse.

Teksty wprowadzane do monitora szeregowego i wysyłane do Arduino Micro, powinno być realizowane osobno po znaku w Morsepulse.

Dabei entsteht insbesondere folgendes Problem:

The following problem arises in particular:

W szczególności pojawia się następujący problem:

Das Verschicken eines längeren Textes geht viel schneller, als das Umsetzen des Textes in Morsepulse.

Sending a longer text is much faster than implementing the Text in Morsepulse.

Wysłanie dłuższego tekstu jest znacznie szybsze niż wdrożenie Tekst w Morsepulse.

Lösung:

Solution:

rozwiązanie:

Der Text wird in einen Puffer-Speicher abgelegt und nach und nach abgearbeitet.

The text is stored in a buffer memory and processed progressively.

Tekst jest przechowywany w pamięci buforowej i przetwarzany progresywnie.

Wie hat man sich einen Pufferspeicher und den zugehörigen Mechanismus vorzustellen?

How do you imagine a cache and its mechanism?

Jak wyobrażasz sobie pamięć podręczną i jej mechanizm?

Bild 8-1:

  • Solange der Seriell-Merker auf einen leeren Speicherplatz trifft, schreibt er das nächste Zeichen in den Puffer.
  • Der Index des Seriell-Merkers wird danach inkrementiert.
  • Solange der Index vom Morseübertrager nicht die gleiche Position hat, wie der Index vom Seriell-Merker, wird das vorleigende Zeichen in Morsepulse umgesetzt, gelöscht und dann der Index erhöht.
  • Kommt ein Index ans Ende des Pufferspeichers, wird er wieder auf Null gesetzt.
Aufgabe 1
Task 1
Zadanie 1
  • Realisieren Sie mit den Arduino-Libraries einen Morseumsetzer für die Ziffern 0 bis 9.
  • Verwenden Sie die Arduino-Library Serial und die Funktuion delay(...).
  • Das Morsesignal wird durch eine grüne LED angezeigt.
Aufgabe 2
exercise 2
Zadanie 2
  • Erzeugen Sie das Morsesignal als Piepton mit Hilfe der Arduinofunktion "tone".
  • Wenn der Puffer voll ist, soll eine rote LED aufleuchten.

Achtung: Verwenden Sie für den Lautsprecher einen Vorwiderstand von mindestens 1000 Ohm zur Strombegrenzung und Schonung der Ohren ;-)


Aufgabe 3
Task 3
Zadanie 3
  • Realisieren Sie den Piepton mit Hilfe des Timers 1 im CTC-Mode.
Zusatzaufgabe
additional task
dodatkowym zadaniem

Entwickeln Sie auf Basis des Morsecodes ein Bussystem.

Develop a bus system based on the Morse code.

Opracuj system autobusowy oparty na kodzie Morse'a.

Hinweise:

Hints:

Uwagi:

  • Statt Lang und kurz können digitale Signale auf zwei Leitungen verwendet werden.
  • Eine dritte Leitung kann anzeigen, dass ein neues Zeichen gesendet wird.