Re: CC PRO: RTTY / Baudot erzeugen Kategorie: Programmierung Basic (von DL1ASL - 8.02.2017 19:55) | |
Als Antwort auf CC PRO: RTTY / Baudot erzeugen von DL1ASL - 4.02.2017 13:35
| |
> > ' nach --> > 'Benötigte Libs´s: IntFunc_lib.cc > 'Routinen: BEEP.cbas > 'Autor: Ulli Sommer > 'Datum: 21.12.2007 > 'Funktion: Tonausgabe mit der C-Control Pro > 'Benötigt wird: Piezzo Schallwandler an Portd.5 gegen GND > 'ACHTUNG: Tonhöhe besitzt eine Tolleranz von ~ +/-1% > '--------------------------- > ' Idee von -- > DL1ASL > ' Projektname : RTTY-Baudot-Signal erzeugen > ' Bemerkung : �nderungen von DL1ASL , Klaus > ' Nutzung von BEEP zur Aussendung von RTTY-Signalen > ' : ohne Piezo ! dafür von Portd.5 ein Widerstand > ' : mit ca 50kOhm(Pegel) an LINE-IN des PC > ' Decoder-SW : MixWin: RTTY , 50 baud, shift, 170 , Lowercase > ' Beginn : 12.1.2017 > ' Version : V1 > ' Anmerkung : der Baudot-Code benutzt 5 Bit , > ' Buchstaben und Ziffern/Zeichen benutzen selben Code > ' Unterscheidung erfolgt durch einen Umschalt code > ' > ' -------------------------------------------------------- > 'Shift 170 > #define Tone_mark 145 '784Hz > #define Tone_shift 185 '622Hz > #define delay 20 ' 50 baud > '--------- Start Main-------------------- > Sub main() > Dim i As Integer > Do While True > AbsDelay(1000) ' ok am 19.01.2017 > For i = 0 To 9 > bit_Buchstaben() > bit_TonR() > bit_TonY() > Next > Zeilenvorschub() > End While > End Sub ' -- Ende Main ---------------- > '==========================================/ > ' die folgende Codierung für einen Buchstaben > ' ist zu aufwendig , also erstmal als Demo > ' gedacht > ' Ausgabe von RY dient zur Abstimmung > ' bei der Funkübertragung > > Sub bit_TonR() '01010 R 4 > BEEP(Tone_shift , delay ) ' Startbit > BEEP(Tone_shift , delay ) > BEEP(Tone_mark , delay ) > BEEP(Tone_shift , delay ) > BEEP(Tone_mark , delay ) > BEEP(Tone_shift , delay ) > BEEP(Tone_mark , delay ) ' Stopbit > End Sub > Sub bit_TonY() '10101 Y 6 > BEEP(Tone_shift , delay ) ' Startbit > BEEP(Tone_mark , delay ) > BEEP(Tone_shift , delay ) > BEEP(Tone_mark , delay ) > BEEP(Tone_shift , delay ) > BEEP(Tone_mark , delay ) > BEEP(Tone_mark , delay ) ' Stopbit > End Sub > Sub bit_Buchstaben() 'Buchstaben 11111 > BEEP(Tone_shift , delay )' Startbit > BEEP(Tone_mark , delay ) > BEEP(Tone_mark , delay ) > BEEP(Tone_mark , delay ) > BEEP(Tone_mark , delay ) > BEEP(Tone_mark , delay ) > BEEP(Tone_mark , delay) 'Stopbit > End Sub > Sub Zeilenvorschub() '00010 > BEEP(Tone_shift , delay ) ' Startbit > BEEP(Tone_shift , delay ) ' 1.Bit > BEEP(Tone_mark , delay ) ' 2.Bit > BEEP(Tone_shift , delay ) ' 3.Bit > BEEP(Tone_shift , delay ) ' 4.Bit > BEEP(Tone_shift , delay ) ' 5.Bit > BEEP(Tone_mark , delay) ' 2 Stopbits > End Sub > 'Ton erzeugen von Ulli Sommer > Sub BEEP(Tone As Word, Periode As Word) > Timer_T1FRQ(Tone,PS_64) > AbsDelay(Periode) > End Sub > '---------------------------------------------------- Hallo C-C Pro 32 User ! Hier die Verbesserung des voher gezeigten Programms ! '--------- Start Main-------------------- Sub main() Do While True AbsDelay(1000) baudwert = 31 ' Umschalten Buchstaben schieben(baudwert) For i = 0 To 9 bit_TonR() ' R bit_TonY() ' Y Next baudwert = 2 ' neue Zeile schieben(baudwert) AbsDelay(1000) baudwert = 27 ' Umschalten Ziffern/Zeichen schieben(baudwert) For i = 0 To 9 bit_TonR() ' 4 bit_TonY() ' 6 Next baudwert = 2 ' neue Zeile schieben(baudwert) End While End Sub ' -- Ende Main ----------------/ '==========================================/ | |
Antwort schreiben Antworten: |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum