Morse-Decoder


Elektronik-Labor  Notizen  Projekte  Labortagebuch  Elexs-USB





Morseempfänger.exe starten

Dieses Programm decodiert selbstständig Morsezeichen, die über eine Morsetaste eingegeben werden. Gleichzeitig wird ein Mithörton erzeugt. Das Programm ist ideal für ein intensives Morsetraining geeignet. Die Eingabegeschwindigkeit beträgt 60 Bpm, das Programm toleriert jedoch Geschwindigkeiten zwischen 40 Bpm und 80 Bpm. Die decodierten Zeichen werden in einer Laufschrift am Bildschirm angezeigt.

Die Morsetaste wird zwischen der durch den internen Pullup hochgezogenen Leitung CTS und Masse angeschlossen. Der Mithörton erscheint an DTR. Hier kann ein Piezo-Schallwandler oder ein Lautsprecher angeschlossen werden.

 

Das Programm führt Zeitmessungen für die Strich- und Pausenlänge durch. Längen bis 200 ms werden als Punkt gewertet, Längen über 200 ms als Strich. Ein Zeichen gilt als beendet, wenn die Pause zum nächsten Ton 200 ms überschreitet. Aus den einzelnen Zeitmessungen wird der bereits verwendete Zwischencode generiert, der dann in das zugehörige Textzeichen umgesetzt wird.

  Zeichen = 254 '11111110b            'Zeichen initialisieren
  RTS 1
  timeout = 0
  While (CTS = 0) And (timeout < 300)  'Warten auf Taste
    DELAY 10
    timeout = timeout + 10
    DoEvents
  Wend
  If timeout > 299 Then Label1.Caption = Right$(Label1.Caption, 40) + " ": Exit Sub
  fertig = False
  While Not fertig
    ANzeit = 0
    While CTS = 1    'Strichlänge messen
      SENDBYTE 85
      DELAY 1
      ANzeit = ANzeit + 8.33
    Wend
    Zeichen = Zeichen * 2
    If ANzeit > 200 Then Zeichen = Zeichen + 1
    AUSzeit = 0     'Pausenlänge messen
    timeout = 0
    While (CTS = 0) And (timeout < 250)'Warten auf Taste
      DELAY 10
      timeout = timeout + 10
      AUSzeit = AUSzeit + 10
    Wend
    If AUSzeit > 200 Then fertig = True
    If Zeichen > 32000 Then fertig = True
  Wend
  Zeichen = Zeichen And 255
  Ausgabe = "."
  If Zeichen = &HF9 Then Ausgabe = "a"   ' 11111001 .-
  If Zeichen = &HE8 Then Ausgabe = "b"   ' 11101000 -
...



zurück
weiter
zur Startseite