Netzwerkprogramme mit Python
socketserver - A framework for network servers
Beispiel Morse-Server
Teil I
-
Unter Verwendung des Beispiels mit dem StreamRequestHandler soll ein TCP-Server erstellt werden.
-
Die Portnummer, auf der der Morseserver lauscht, soll beim Aufruf in der Kommandozeile als erstes Argument mitgegeben werden:
./morseserver.py 1234 -
Der Server gibt den vom Client empfangenen String (Zeichen 0…9 und a…f, alle anderen ignorieren!) auf der Konsole im Morsecode aus (Beispiel "1affe"):
pi@bulmix:~/FSST/34AKWIB/MorseServer $ ./morseserver.py 1234 127.0.0.1 wrote: .---- .- ..-. ..-. .Tipp: Verwenden Sie für die Codetabelle den Datentyp dictionary.
Teil II
- Der Server aus Teilaufgabe I soll nun so erweitert werden, dass eine der LEDs am Zusatzboard (GPIO 18 / 23 / 24 / 25) den Code der empfangenen Zeichen nacheinander als Lichtsignal morst.
- Timing: Basis ist die Dauer eines Punktes - hier 0.2 Sekunden. Infos zum Morsecode
- Die Verwendung der Python-Library gpiozero wird dringend angeraten. Tipp: Die Erzeugung von langen und kurzen Lichtpulsen lässt sich kompakt in einer Zeile bewerkstelligen:
led.blink(TDOT * 3, TDOT, 1, False)