BASCOM


Nadajnik alfabetu Morsa.



Przeznaczony:

Urządzenie służy do emitowania alfabetu Morsa w formie dźwiękowej, albo po dołączeniu do radiostacji, może kluczować falę nośną.

  Po dołączeniu do urządzenia klawiatury komputerowej, możemy pisać tekst w języku polskim, a urządzenie emituje dźwięki kropek i kresek,

  tłumacząc język polski na język alfabetu Morsa. Po każdym naciśnięciu klawisza klawiatury, obok dźwiękowej emisji tego znaku, jest on zapisany w pamięci.

  Pamięć kończy się po 512 znaku. Jej zapełnienie sygnalizowane jest dźwiękiem. Po naciśnięciu F1, możemy odtworzyć całą zawartość pamięci

  słuchając kresek i kropek, albo po dołączeniu do radiostacji, nadać cały tekst telegraficznie. Zawartość pamięci można wykasować przy pomocy ESC,

  a pustą pamięć ponownie zapełnić tekstem. Tekst pisany możemy obserwować na Lcd w postaci języka polskiego, albo w postaci kresek i kropek.

  Urządzenie może być zasilane z baterii 4,5V lub 6V (4x1,5V).

-----------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------
Program procesorowy

'MorsNad-iRS232_13_PTT.bas

'Nadawanie Morsa, przesyłanie tekstów przez radio.

'Możliwość wejścia w miejsce klucza telegraficznego nadajnika radiostacji i kluczowania nośnej (PTT, Portb.0).

'Wyjście sygnału telegrafii odbywa się z trzech Portów:d.5 - do głośnika, d.7 - przez pojemność, b.1 - bezpośrednio z portu.

'Zastosujemy klawiaturę AT i Lcd 2X16. Lcd pokazuje znaki podczas pisania, nie pokazuje natomiast podczas wysyłania paczek tekstu.

'Program wysyła w alfabecie Morsa pojedyńcze znaki klawiatury AT, jak również,

'po naciśnięciu klawisza F1, wysyła paczkę tekstu, do 512 znaków.

'Uwaga, ważne!, jeśli naciśniemy Shift i skorzystamy ze znaków: dwukropek, plus, nawiasy, pytajnik, małpa, itd. to ponaciśnięciu Shift-u,

'i jednego z wymienionych klawiszy, obowiązkowo ponownie nacisnąć Shift.

'Jeśli nie naciśniemy ponownie Shift, to wpis do Eprom zostanie zablokowany (potem wykonaj: Reset - Esc - Reset).

'Jeśli skończysz pisać paczkę tekstu o dowolnej liczbie znaków, zamiast jednej postaw dwie kropki, zapamiętana będzie jedna.

'Napisany tekst (do 512 znaków) możemy wysyłać (F1) nawet po ponownym włączeniu procesora.

'Przy ciągłym wciśnięciu F1, tekst możemy wysyłać na okrągło.

'Po wypełnieniu pamięci 1/4 tekstu  zaświeci się pierwsza dioda Led1, dalsze pisanie i zapełnienie pamięci spowoduje

'zaświecenie drugiej diody, trzeciej i czwartej. Na końcu, trzy znaki przed końcem całej paczki usłyszymy krótki sygnał ostrzegawczy.

'Przy pomocy ESC zerujemy zawartość paczki znaków w Eprom.

'Zerowanie: naciśnij RESET, naciśnij ESC, poczekaj aż na Lcd pojawi się napis RESET, naciśnij RESET .

'Włącznikiem w Portc.3 (W1, podajemy 0) zgadzamy się na alarm po przekroczeniu zawartości paczki znaków (512).

'Jeśli Portc.3 ma 1 to pisząc, emitujemy po jednym znaku Morsa, bez ograniczeń (bez alarmu).

'Jeśli jest alarm dźwiękowy od przepełnienia paczki znaków, kasujemy go przy pomocy RESET (tekst będzie zapamiętany).

'Podczas zapełniania paczki znaków, trzy znaki przed końcem, po pojawieniu się krótkiego sygnału dźwiękowego,

'zostały jeszcze trzy klawisze do naciśnięcia.

'Fusebit ustawiony na kwarc zewnętrzny 1110 (8MHz).

'Schemat: MorsNad-iRS232_13.png

'Opracował Henryk Wydmuch.

'Pamięć zajęta w 65%.

'Uwaga! Jeśli chcemy zwolnić szybkość nadawania, w miejsce "$crystal = 4000000" wpisujemy wyższą wartość kwarcu, aż do 8MHz,

'albo (nie zmieniając wpisu) dołączamy do procesora kwarc o niższej częstotliwości niż 8MHz.

$regfile = "m8def.dat"                                      'Informujemy kompilator.

$crystal = 4000000                                          'Informujemy kompilator o kwarcu 4MHz, ale stosujemy kwarc 8MHz.

Config Lcd = 16 * 2                                        'Konfiguracja Lcd.

Config Lcdpin = Pin , Db4 = Portd.2 , Db5 = Portd.3 , Db6 = Portd.4 , Db7 = Portd.6 , E = Portd.1 , Rs = Portd.0

Config Pinc.0 = Input                                      'Pinc.0 jako wejście (AT).

Config Pinc.1 = Input                                      'Pinc.1 jako wejście (AT).

Config Keyboard = Pinc.0 , Data = Pinc.1 , Keydata = Keydata       'Keyboard=klawiatura, podłączona do Portc.0 i 1.

Dim Kodklaw As Byte                                        'Deklarujemy zmienną Kodklaw, tu będzie umieszczany kod naciśniętego klawisza.

  Cls                                                      'Czyść LCD.

Config Pind.7 = Output                                     'Konfigurujemy Portd.7 jako wyjście sygnału telegrafii.

  Reset Portd.7                                            'Ustawiamy poziom niski w Portd.7.

Config Pinb.1 = Output                                     'Wyjście telegrafii.

  Set Portb.1                                              '

Config Pind.5 = Output                                     'Wyjście telegrafii.

  Reset Portd.5                                            '

Config Pinc.3 = Input                                      'Wejście do włącznika alarmu o przekroczeniu zawartości paczki znaków z AT.

  Set Portc.3                                              'Ustaw poziom wysoki.

Config Pinb.0 = Output                                     'Wyjście, mogące sterować nadajnikiem radiostacji.

  Set Portb.0                                              'Ustaw poziom wysoki.

Config Pinb.5 = Output                                     'Wyjście diody migającej.

  Set Portb.5                                              'Ustaw poziom wysoki.

Config Pinc.2 = Output                                      'Port dla sygnalizacji pierwszej części tekstu.

Config Pinc.4 = Output                                      'Port dla sygnalizacji drugiej części tekstu.

Config Pinc.5 = Output                                      'Port dla sygnalizacji trzeciej części tekstu.

Config Pinb.2 = Output                                      'Port dla sygnalizacji czwartej części tekstu.

Set Portb.2                                                 '

Set Portc.2                                                 '

Set Portc.4                                                 '

Set Portc.5                                                 '

Config Timer0 = Timer , Prescale = 8                       'Timer0 jako czasomierz z podziałem wstępnym przez 8 (oscyluje ton).

Config Timer1 = Timer , Prescale = 8                       'Timer1 jako czasomierz z podziałem wstępnym przez 8 (Led).

Stop Timer0                                                 'Zatrzymaj Timer0.

On Timer0 Ton                                               'Podprogram Ton dla Timer0

On Timer1 Mig_led                                           'Podprogram Mig_led dla Timer1

Dim Ind As Byte                                             'Deklaracja Ind, tu będzie numer kolejny znaku w Tabl.

Dim Il_dan_wtabl As Byte                                    'Deklaracja zmiennej, zawierającej info. o ilości danych w Tabl.

Dim Policzlcd As Word                                       'Policzlcd to zmienna, która będzie przechowywać liczbę zapisanych okienek w Lcd.

Dim Czas As Byte                                            'Deklarujemy 1 bajt pamięci dla zmiennej przechowującej przepełnienia Timer0.

Dim Q As Word                                               'Q, zmienna, która zawiera kolejność naciśniętego klawisza.

Dim Krok As Word                                            'Krok, zmienna, która będzie realizować kroki po komórkach Eprom w czasie odczytu.

Dim Dioda As Byte                                           'Zmienna, będzie zawierać przepełnienia Timera1.

Declare Sub Odczyt                                          'Deklarujemy procedurę odczytu z Eprom.

Declare Sub Sp                                              'Deklaracja procedury zapisu do Eprom.

Declare Sub Pttstart                                        'Deklaracja procedury startu Timera.

Declare Sub Pttstop                                         'Deklaracja procedury stopu Timera.

Declare Sub Czas40                                          'Deklaracja procedury kropki lub przerwy między znakami.

Declare Sub Czas120                                         'Deklaracja procedury kreski.

Declare Sub Czas160                                         'Deklaracja procedury przerwy między słowami.

Enable Interrupts                                           'Zgoda na wszystkie przerwania.

Enable Timer0                                               'Odblokuj przerwanie od przepełnienia Timer0.

Enable Timer1

Il_dan_wtabl = 54                                           'Tablica zawiera 54 danych.

Czas = 0                                                    'Zerujemy zmienną (przep.Tim0).

 Cls                                                       'Czyść Lcd.

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Do                                                          'Pętla.

Kodklaw = Getatkbd()                                       'Odczytaj kod klawiatury (numer znaku klawiatury w ASCI) i wpisz do zmiennej.

If Kodklaw > 0 Then                                        'Jeśli pojawi się jakaś cyfra w zmiennej...

Incr Q                                                     'Zwiększaj zawartość Q o 1 po naciśnięciu klawisza.

If Q > 0 Then                                              'Jeśli naciśnięto klawisz.

Call Sp                                                    'Skocz do programu zapisującego do Eprom.

End If                                                     'Koniec warunku.

  If Kodklaw > 31 And Kodklaw < 127 Then                   'Jeśli ta cyfra będzie większa od 31 lub mniejsza od 127...

     Incr Policzlcd                                        'Powiększaj zawartość zmiennej Policzlcd.

     Select Case Policzlcd                                 'Sprawdzaj jaka jest liczba okienek Lcd w zmiennej Policzlcd.

      Case 17 :                                            'Jeśli zmienna zawiera 17 okienek (17 razy naciśnięto klawisz), to...

      Locate 2 , 1                                         'Przejdź do drugiej linii, pierwsze okienko Lcd.

      Case 33 : Cls                                        'Po 33 klawiszach,czyść.

      Locate 1 , 1                                         'Przejdź do pierwszej linii, pierwsze okienko 1.

      Case 49 :                                            '

      Locate 2 , 1                                         '

      Case 65 : Cls                                        '

      Locate 1 , 1                                         '

      Case 81 :                                            '

      Locate 2 , 1                                         '

      Case 97 : Cls                                        '

      Locate 1 , 1                                         '

      Case 113                                             '

      Locate 2 , 1                                         '

      Case 129 : Cls                                       '

      Reset Portc.2                                        'Zaświeć Led, po pierwszej części tekstu.

      Locate 1 , 1                                         '

      Case 145 :                                           '

      Locate 2 , 1                                         '

      Case 161 : Cls                                       '

      Locate 1 , 1                                         '

      Case 177 :                                           '

      Locate 2 , 1                                         '

      Case 193 : Cls                                       '

      Locate 1 , 1                                         '

      Case 209 :                                           '

      Locate 2 , 1                                         '

      Case 225 : Cls                                       '

      Locate 1 , 1                                         '

      Case 241 :                                           'Jeśli zmienna zawiera 241 okienek (241 razy naciśnięto klawisz), to...

      Reset Portc.4                                        'Zaświeć Led, po drugiej części tekstu.

      Locate 2 , 1                                         'Przejdź do drugiej linii, pierwsze okienko Lcd.

      Case 257 : Cls                                       'Po 257 klawiszach,czyść.

      Locate 1 , 1                                         'Przejdź do pierwszej linii, pierwsze okienko 1.

      Case 273 :                                           '

      Locate 2 , 1                                         '

      Case 289 : Cls                                       '

      Locate 1 , 1                                         '

      Case 305 :                                           '

      Locate 2 , 1                                         '

      Case 321 : Cls                                       '

      Locate 1 , 1                                         '

      Case 337                                             '

      Locate 2 , 1                                         '

      Case 353 : Cls                                       '

      Locate 1 , 1                                         '

      Case 369 :                                           '

      Reset Portc.5                                        'Zaświeć Led, po trzeciej części tekstu.

      Locate 2 , 1                                         '

      Case 385 : Cls                                       '

      Locate 1 , 1                                         '

      Case 401 :                                           '

      Locate 2 , 1                                         '

      Case 417 : Cls                                       '

      Locate 1 , 1                                         '

      Case 433 :                                           '

      Locate 2 , 1                                         '

      Case 449 : Cls                                       '

      Locate 1 , 1                                         '

      Case 465 :                                           'Jeśli zmienna zawiera 465 okienek (465 razy naciśnięto klawisz), to...

      Locate 2 , 1                                         'Przejdź do drugiej linii, pierwsze okienko Lcd.

      Case 481 : Cls                                       'Po 481 klawiszach,czyść.

      Locate 1 , 1                                         'Przejdź do pierwszej linii, pierwsze okienko 1.

      Case 497 :                                           '

      Reset Portb.2                                        'Zaświeć Led, po czwartej części tekstu.

      Locate 2 , 1                                         '

      Case 509 :                                           '

      Sound Portb.1 , 300 , 400                            'Podaj krótki sygnał dźwiękowy z Portb.1.

      Sound Portd.5 , 300 , 400                            'Podaj krótki sygnał dźwiękowy z Portd.5.

      Case 512 :                                           'Jeśli naciśniemy 512 raz klawisz klawiatury, to...

       If Pinc.3 = 0 Then                                  'Jeśli włącznik w Portc.3 włączony...

       Gosub Ber                                           'Skocz do podprogramu Ber (alarm dźwiękowy).

       End If                                              'Koniec warunku: jeśli włącznik w Portc.3 włączony.

      Policzlcd = 0                                        'Zeruj zmienną.

      Cls                                                  'Czyść.

      End Select                                           'Koniec selekcji.

  Lcd Chr(kodklaw) ;                                       'Pokaż który klawisz naciśnięto.

  Ind = Lookdown(kodklaw , Tabl , Il_dan_wtabl)            'Ind=która pozycja w Tabl znaku z Kodklaw.

  Gosub Bor                                                'Skocz do podprogramu, który sprawdzi, w którym miejscu tablicy jest numer klawisza.

  End If                                                   'Koniec warunku.

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

'Automatyczny odczyt z pamięci i nadawanie.

If Kodklaw = 5 Then                                        'Jeśli naciśnięto F1...

   For Krok = 1 To 512                                     'Krocz od 1 do 512.

   Call Odczyt                                             'Wywołaj procedurę odczytującą.

   Waitms 280                                              'Czas, który w czasie odczytu z pamięci potrzebny jest odbiornikowi do rozdzielenia znaków.

   Next Krok                                               'Powtarzaj pętlę For.

End If                                                     'Koniec warunku (gdy wciśnięto F1).

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

If Kodklaw = 127 Then                                      'Jeśli w zmiennej pojawi się nr 127 (Delete), to...

Cls                                                        'Czyść LCD.

End If                                                     'Koniec warunku.

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''Kasowanie.

'Kasowanie.

  If Kodklaw = 1 Then                                      'Jeśli wciśnięto ESC...

  Ind = 0                                                  'Zeruj zmienną.

  For Q = 1 To 512                                         'Pętla krocząca. Ładuj do Q od... do...(ponowne wykorzystanie Q).

   Writeeeprom Ind , Q                                     'Zapisz pustą zmienną do Eprom (adres Q).

   Waitms 10                                               'Kasuj co 10mS.

  Next Q                                                   'Wykonuj dalsze kroki.

  Cls                                                      'Po skasowaniu pamięci czyść Lcd.

  Lcd " Reset"                                             'Pokaż komunikat.

 End If                                                    'Koniec warunku (gdy wciśnięto ESC).

End If                                                      'Koniec warunku If Kodklaw > 0 Then (na początku pętli Do).

Loop                                                        'Powtarzaj pętlę.

End                                                         'Koniec zawartości pętli.

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Mig_led:                                                    'Podprogram diody migającej (Timer1).

Incr Dioda                                                 'Po zapełnieniu Timer1, wpisz do zmiennej 1.

If Dioda = 20 Then                                         'Jeśli w zmiennej uzbiera się 20 przepełnień, to...

Dioda = 0                                                  'Zeruj zmienną.

Toggle Portb.5                                             'Zmień stan Portb.5.

End If                                                     'Koniec warunku przepełnienia.

Return                                                     'Wróć do Timer1.

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

 Ton:                                                      'Podprogram dla Timer0 (od 170 - 256 = częstotliwość tonu telegrafii).

  Load Timer0 , 190                                        'Załaduj do Timer0 liczbę 190.

  Incr Czas                                                'Po cyklu powiększ liczbę przepełnień w zmiennej Czas.

  If Czas = 1 Then                                         'Jeśli liczba przepełnień jest większa niż 1, to...

  Czas = 0                                                 'Wyzeruj zmienną.

  Toggle Portb.1                                           'Zmień stan wyjścia Portb.1 na przeciwny.

  Toggle Portd.7                                           'Zmień stan wyjścia Portd.7 na przeciwny.

  Toggle Portd.5                                           'Zmień stan wyjścia Portd.5 na przeciwny.

  End If                                                   'Koniec warunków.

  Return                                                   'Wróć do programu.

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

'Z tej pętli wychodzimy przy pomocy RESET.

Ber:                                                        'Podprogram sygnału dźwiękowego, przepełnienia paczki znaków.

  Do                                                       'Pętla.

  Sound Portb.1 , 300 , 400                                'Podaj krótki sygnał dźwiękowy z Portb.1.

  Sound Portd.5 , 300 , 400                                '

  Waitms 80                                                'Czekaj 80mS.

  Sound Portb.1 , 300 , 350                                'Podaj krótki sygnał dżwiękowy z Portb.1.

  Sound Portd.5 , 300 , 350                                '

  Waitms 80                                                '

  Sound Portb.1 , 300 , 450                                '

  Sound Portd.5 , 300 , 450                                '

  Waitms 80                                                '

  Loop                                                     'Powtarzaj pętlę.

  End                                                      '

Return                                                      'Wróć do pierwszej pętli.

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Bor:                                                        'Podprogram Bor. Sprawdza zawartość Ind (kolejność osadzenia w Tabl).

  Select Case Ind                                          'Sprawdzaj zmienną Ind.

  Case 1 : Gosub A                                         'Jeśli Ind ma 1, to skocz do podprogramu A i nadaj Morsem znak A.

  Case 2 : Gosub B                                         '

  Case 3 : Gosub C                                         '

  Case 4 : Gosub D                                         '

  Case 5 : Gosub E                                         '

  Case 6 : Gosub F                                         '

  Case 7 : Gosub G                                         '

  Case 8 : Gosub H                                         '

  Case 9 : Gosub I                                         '

  Case 10 : Gosub J                                        '

  Case 11 : Gosub K                                        '

  Case 12 : Gosub L                                        '

  Case 13 : Gosub M                                        '

  Case 14 : Gosub N                                        '

  Case 15 : Gosub O                                        '

  Case 16 : Gosub P                                        '

  Case 17 : Gosub Q                                        '

  Case 18 : Gosub R                                        '

  Case 19 : Gosub S                                        '

  Case 20 : Gosub T                                        '

  Case 21 : Gosub U                                        '

  Case 22 : Gosub V                                        '

  Case 23 : Gosub W                                        '

  Case 24 : Gosub X                                        '

  Case 25 : Gosub Y                                        '

  Case 26 : Gosub Z                                        '

  Case 27 : Gosub C1                                       '1

  Case 28 : Gosub 2                                        '

  Case 29 : Gosub 3                                        '

  Case 30 : Gosub 4                                        '

  Case 31 : Gosub 5                                        '

  Case 32 : Gosub 6                                        '

  Case 33 : Gosub 7                                        '

  Case 34 : Gosub 8                                        '

  Case 35 : Gosub 9                                        '

  Case 36 : Gosub 0                                        '

  Case 37 : Gosub Kropka                                   '.

  Case 38 : Gosub Przecinek                                ',

  Case 39 : Gosub Dwukropek                                ':

  Case 40 : Gosub Rownasie                                 '=

  Case 41 : Gosub Spacja                                   'Spacja

  Case 42 : Gosub Myslnik                                  '-

  Case 43 : Gosub Plus                                     '+

  Case 44 : Gosub Nawiaso                                  'Nawias ot.(

  Case 45 : Gosub Nawiasz                                  'Nawias zamk.)

  Case 46 : Gosub Pytajnik                                 '?

  Case 47 : Gosub Apostrof                                 '" ' "

  Case 48 : Gosub Malpa                                    '@

  Case 49 : Gosub Ukosnik                                  '/

  Case 50 : Gosub Dolar                                    '$

  Case 51 : Gosub Ander                                    '&

  Case 52 : Gosub Gwiazdka                                 '*

  Case 53 : Gosub Hasz                                     '#

  Case 54 : Gosub Procent                                  '%

  End Select                                               'Koniec selekcji.

Return                                                      'Wróć do pierwszej pętli.

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

'Podprogramy liter cyfr i znaków w alfabecie Morsa.

  A:                                                       '

  Call Pttstart                                            'Nadawanie "A" w alfabecie Morsa.

  Call Czas40                                              '

  Call Pttstop                                             ' ._

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas120                                             '

  Call Pttstop                                             '

  Call Czas160                                             '

  Return                                                   '

       B:                                                  '

       Call Pttstart                                       'Nadawanie "B" w alfabecie Morsa.

       Call Czas120                                        '

       Call Pttstop                                        '  _...

       Call Czas40                                         '

       Call Pttstart                                       '

       Call Czas40                                         '

       Call Pttstop                                        '

       Call Czas40                                         '

       Call Pttstart                                       '

       Call Czas40                                         '

       Call Pttstop                                        '

       Call Czas40                                         '

       Call Pttstart                                       '

       Call Czas40                                         '

       Call Pttstop                                        '

       Call Czas160                                        '

       Return                                              '

  C:                                                       '

  Call Pttstart                                            'Nadawanie "C"

  Call Czas120                                             '

  Call Pttstop                                             '  _._.

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas40                                              '

  Call Pttstop                                             '

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas120                                             '

  Call Pttstop                                             '

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas40                                              '

  Call Pttstop                                             '

  Call Czas160                                             '

  Return                                                   '

     D:                                                    '

     Call Pttstart                                         'Nadawanie "D"

     Call Czas120                                          '

     Call Pttstop                                          '  _..

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

  E:                                                       '

  Call Pttstart                                            'Nadawanie "E"

  Call Czas40                                              '

  Call Pttstop                                             ' .

  Call Czas160                                             '

  Return                                                   '

        F:                                                 '

        Call Pttstart                                      'Nadawanie "F"

        Call Czas40                                        '

        Call Pttstop                                       ' .._.

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas160                                       '

        Return                                             '

  G:                                                       '

  Call Pttstart                                            'Nadawanie "G"

  Call Czas120                                             '

  Call Pttstop                                             '  _ _.

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas120                                             '

  Call Pttstop                                             '

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas40                                              '

  Call Pttstop                                             '

  Call Czas160                                             '

  Return                                                   '

     H:                                                    '

     Call Pttstart                                         'Nadawanie "H"

     Call Czas40                                           '   ....

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

  I:                                                       '

  Call Pttstart                                            'Nadawanie "I"

  Call Czas40                                              '   ..

  Call Pttstop                                             '

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas40                                              '

  Call Pttstop                                             '

  Call Czas160                                             '

  Return                                                   '

     J:                                                    '

     Call Pttstart                                         'Ndawanie "J"

     Call Czas40                                           '

     Call Pttstop                                          '    ._ _ _

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

  K:                                                       '

  Call Pttstart                                            'Nadawanie "K"

  Call Czas120                                             '

  Call Pttstop                                             '  _._

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas40                                              '

  Call Pttstop                                             '

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas120                                             '

  Call Pttstop                                             '

  Call Czas160                                             '

  Return                                                   '

     L:                                                    '

     Call Pttstart                                         'Nadawanie "L"

     Call Czas40                                           '   ._..

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

  M:                                                       '

  Call Pttstart                                            'Nadawanie "M" w alfabecie Morsa.

  Call Czas120                                             '

  Call Pttstop                                             '_ _

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas120                                             '

  Call Pttstop                                             '

  Call Czas160                                             '

  Return                                                   '

     N:                                                    '

     Call Pttstart                                         'Nadawanie "N" w alfabecie Morsa.

     Call Czas120                                          '

     Call Pttstop                                          '  _.

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

  O:                                                       '

  Call Pttstart                                            'Nadawanie "O"

  Call Czas120                                             '

  Call Pttstop                                             '  _ _ _

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas120                                             '

  Call Pttstop                                             '

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas120                                             '

  Call Pttstop                                             '

  Call Czas160                                             '

  Return                                                   '

     P:                                                    '

     Call Pttstart                                         'Nadawanie "P"

     Call Czas40                                           '

     Call Pttstop                                          ' ._ _.

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

  Q:                                                       '

  Call Pttstart                                            ' Nadawanie "Q"

  Call Czas120                                             '

  Call Pttstop                                             '  _ _._

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas120                                             '

  Call Pttstop                                             '

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas40                                              '

  Call Pttstop                                             '

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas120                                             '

  Call Pttstop                                             '

  Call Czas160                                             '

  Return                                                   '

     R:                                                    '

     Call Pttstart                                         'Nadawanie "R"

     Call Czas40                                           '

     Call Pttstop                                          '  ._.

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           ''

     Call Pttstop

     Call Czas160                                          '

     Return                                                '

  S:                                                       '

  Call Pttstart                                            'Nadawanie "S"

  Call Czas40                                              '

  Call Pttstop                                             '    ...

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas40                                              '

  Call Pttstop                                             '

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas40                                              '

  Call Pttstop                                             '

  Call Czas160                                             '

  Return                                                   '

     T:                                                    '

     Call Pttstart                                         'Nadawanie "T"

     Call Czas120                                          '  _

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

  U:                                                       '

  Call Pttstart                                            'Nadawanie "U"

  Call Czas40                                              '

  Call Pttstop                                             '  .._

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas40                                              '

  Call Pttstop                                             '

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas120                                             '

  Call Pttstop                                             '

  Call Czas160                                             '

  Return                                                   '

     V:                                                    '

     Call Pttstart                                         'Nadawanie "V"

     Call Czas40                                           '   ..._

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

  W:                                                       '

  Call Pttstart                                            'Nadawanie "W"

  Call Czas40                                              '

  Call Pttstop                                             '  ._ _

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas120                                             '

  Call Pttstop                                             '

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas120                                             '

  Call Pttstop                                             '

  Call Czas160                                             '

  Return                                                   '

        X:                                                 '

        Call Pttstart                                      'Nadawanie "X"

        Call Czas120                                       '

        Call Pttstop                                       ' _.._

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas160                                       '

        Return                                             '

     Y:                                                    '

     Call Pttstart                                         'Nadawanie "Y"

     Call Czas120                                          '

     Call Pttstop                                          '  -.- -

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

        Z:                                                 '

        Call Pttstart                                      'Nadawanie "Z"

        Call Czas120                                       '

        Call Pttstop                                       '  _ _..

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas160                                       '

        Return                                             '

     C1:                                                   '

     Call Pttstart                                         'Nadawanie "1"

     Call Czas40                                           '

     Call Pttstop                                          '    ._ _ _ _

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

        2:                                                 '

        Call Pttstart                                      'Nadawanie "2"

        Call Czas40                                        '

        Call Pttstop                                       ' .._ _ _

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas160                                       '

        Return                                             '

     3:                                                    '

     Call Pttstart                                         'Nadawanie "3"

     Call Czas40                                           '

     Call Pttstop                                          '    ..._ _

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

        4:                                                 '

        Call Pttstart                                      'Nadawanie "4"

        Call Czas40                                        '

        Call Pttstop                                       '    ...._

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas160                                       '

        Return                                             '

     5:                                                    '

     Call Pttstart                                         'Nadawanie "5"

     Call Czas40                                           '

     Call Pttstop                                          '    .....

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

        6:                                                 '

        Call Pttstart                                      'Nadawanie "6"

        Call Czas120                                       '

        Call Pttstop                                       '     _....

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas160                                       '

        Return                                             '

     7:                                                    '

     Call Pttstart                                         'Nadawanie "7"

     Call Czas120                                          '

     Call Pttstop                                          '     _ _...

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

        8:                                                 '

        Call Pttstart                                      'Nadawanie "8"

        Call Czas120                                       '

        Call Pttstop                                       '     _ _ _..

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas160                                       '

        Return                                             '

     9:                                                    '

     Call Pttstart                                         'Nadawanie "9"

     Call Czas120                                          '

     Call Pttstop                                          '    _ _ _ _.

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

        0:                                                 '

        Call Pttstart                                      'Nadawanie "0"

        Call Czas120                                       '

        Call Pttstop                                       '   _ _ _ _ _

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas160                                       '

        Return                                             '

     Kropka:                                               '

     Call Pttstart                                         'Nadawanie "kropki"

     Call Czas40                                           '

     Call Pttstop                                          '    ._._._

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

        Przecinek:                                         '

        Call Pttstart                                      'Nadawanie "przecinka"

        Call Czas120                                       '

        Call Pttstop                                       '   _ _.._ _

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas160                                       '

        Return                                             '

     Plus:                                                 '

     Call Pttstart                                         '+

     Call Czas40                                           '

     Call Pttstop                                          '   ..._ _._

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

  Spacja:                                                  '

  Call Pttstart                                            'Nadawanie "spacjii"

  Call Czas40                                              '

  Call Pttstop                                             '   .._ _._.

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas40                                              '

  Call Pttstop                                             '

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas120                                             '

  Call Pttstop                                             '

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas120                                             '

  Call Pttstop                                             '

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas40                                              '

  Call Pttstop                                             '

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas120                                             '

  Call Pttstop                                             '

  Call Czas40                                              '

  Call Pttstart                                            '

  Call Czas40                                              '

  Call Pttstop                                             '

  Call Czas160                                             '

  Return                                                   '

                                                            '

        Dwukropek:                                         '

        Call Pttstart                                      'Nadawanie "dwukropka"

        Call Czas120                                       '

        Call Pttstop                                       '   _ _ _...

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas160                                       '

        Return                                             '

     Pytajnik:                                             '

     Call Pttstart                                         'Ndawanie "znaku zapytania"

     Call Czas40                                           '

     Call Pttstop                                          '   .._ _..

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

       Rownasie:                                           '

        Call Pttstart                                      'Nadawanie "="

        Call Czas120                                       '

        Call Pttstop                                       '  _..._

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas160                                       '

        Return                                             '                                          '

     Ukosnik:                                              '

     Call Pttstart                                         'Nadawanie "ukośnika"

     Call Czas120                                          '

     Call Pttstop                                          '   _.._.

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop

     Call Czas160                                          '

     Return                                                '

        Nawiaso:                                           '

        Call Pttstart                                      'Nadawanie "("

        Call Czas120                                       '

        Call Pttstop                                       '   _._ _.

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas160                                       '

        Return                                             '

     Nawiasz:                                              '

     Call Pttstart                                         'Nadawanie ")"

     Call Czas120                                          '

     Call Pttstop                                          '   _._ _._

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

        Malpa:                                             '

        Call Pttstart                                      'Nadawanie "@"

        Call Czas40                                        '

        Call Pttstop                                       '  ._ _._.

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas160                                       '

        Return                                             '

           Apostrof:                                       '

           Call Pttstart                                   'Nadawanie "'"

           Call Czas40                                     '

           Call Pttstop                                    '  ._ _ _ _.

           Call Czas40                                     '

           Call Pttstart                                   '

           Call Czas120                                    '

           Call Pttstop

           Call Czas40                                     '

           Call Pttstart                                   '

           Call Czas120                                    '

           Call Pttstop                                    '

           Call Czas40                                     '

           Call Pttstart                                   '

           Call Czas120                                    '

           Call Pttstop                                    '

           Call Czas40                                     '

           Call Pttstart                                   '

           Call Czas120                                    '

           Call Pttstop                                    '

           Call Czas40                                     '

           Call Pttstart                                   '

           Call Czas40                                     '

           Call Pttstop                                    '

           Call Czas160                                    '

           Return                                          '

     Myslnik:                                              '

     Call Pttstart                                         'Nadawanie "-"

     Call Czas120                                          '

     Call Pttstop                                          '  _ .... _

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return                                                '

        Dolar:                                             '

        Call Pttstart                                      'Nadawanie "$"

        Call Czas40                                        '

        Call Pttstop                                       '  ._ _._..

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas160                                       '

        Return

     Ander:                                                '

     Call Pttstart                                         'Nadawanie "&"

     Call Czas40                                           '

     Call Pttstop                                          '  ._ _._...

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return

        Gwiazdka:                                          '

        Call Pttstart                                      'Nadawanie "*"

        Call Czas40                                        '

        Call Pttstop                                       '  ._ _._....

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas160                                       '

        Return

     Hasz:                                                 '

     Call Pttstart                                         'Nadawanie "#"

     Call Czas40                                           '

     Call Pttstop                                          '  ._ _._.....

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas120                                          '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40                                           '

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas40

     Call Pttstart                                         '

     Call Czas40                                           '

     Call Pttstop                                          '

     Call Czas160                                          '

     Return

        Procent:                                           '

        Call Pttstart                                      'Nadawanie "%"

        Call Czas40                                        '

        Call Pttstop                                       '  ._ _._._

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas40                                        '

        Call Pttstart                                      '

        Call Czas40                                        '

        Call Pttstop                                       '

        Call Czas40

        Call Pttstart                                      '

        Call Czas120                                       '

        Call Pttstop                                       '

        Call Czas160                                       '

        Return                                             '                               '                                                                                                                            '

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Sub Sp                                                      'Procedura zapisu.

  Writeeeprom Ind , Q                                      'Zapisanie do pamięci zmiennej Ind pod adres Q (kolejny numer naciśniętego klawisza).

End Sub                                                     'Koniec procedury.

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Sub Odczyt                                                  'Procedura odczytu.

 Readeeprom Ind , Krok                                     'Odczytaj z Eprom numer Ind (adres=krok)...

 Gosub Bor                                                 'Skocz do Bor, by odszukać, jaki to numer klawisza.

End Sub                                                     'Koniec procedury.

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Sub Pttstart                                                'Procedura startu Timer0 i resetowania portu.

 Start Timer0                                              '

 Reset Portb.0                                             '

End Sub                                                     '

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Sub Pttstop                                                 'Procedura stopu Timer0 i podania poziomu wysokiego do portu.

 Stop Timer0                                               '

 Set Portb.0                                               '

End Sub                                                     '

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Sub Czas40                                                  'Procedura kropki lub przerwy między znakami.

 Waitms 40                                                 '

End Sub                                                     '

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Sub Czas120                                                 'Procedura kreski.

 Waitms 120                                                '

End Sub                                                     '

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Sub Czas160                                                 'Procedura czasu pomiędzy słowami.

 Waitms 160                                                '

End Sub                                                     '

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

'Tablica numerów przycisków klawiatury AT w kodzie ASCI:

 Keydata:                                                  'Podprogram tablicy.

 'Małe litery

  Data 0 , 5 , 0 , 3 , 4 , 5 , 6 , &H07 , 5 , 5 , 5 , &H0B , &H0C , 0,       ''''''''''''A

  Data 39 , 39 , 39 , 39 , 39 , 39 , 39 , 113 , 49 , 39 , 39 , 39 , 122,       ''''''''''B

  Data 115 , 97 , 119 , 50 , 39 , 39 , 99 , 120 , 100 , 101 , 52 ,       ''''''''''''''''C

  Data 51 , 39 , 39 , 32 , 118 , 102 , 116 , 114 , 53 , 39 , 39 , 110 ,       '''''''''''D

  Data 98 , 104 , 103 , 121 , 54 , 39 , 39 , 39 , 109 , 106 , 117 , 55 ,       ''''''''''E

  Data 56 , 0 , 0 , 44 , 107 , 105 , 111 , 48 , 57 , 0 , 0 , 46 , 47 ,       ''''''''''''F

  Data 108 , 59 , 112 , 95 , 0 , 0 , 0 , 39 , 0 , 0 , 61 , 0 , 0 , 0,       '''''''''''''G

  Data 63 , 13 , 63 , 63 , 124 , 63 , 63 , 63 , 63 , 63 , 63 , 63 , 63 , 63 , 63,       'H

  Data 63 , 49 , 63 , 52 , 55 , 63 , 63 , 63 , 48 , 127 , 50 , 53 , 54 , 56,       ''''''I

  Data 1 , 63 , 5 , 43 , 51 , 45 , 42 , 57 , 63 , 63       ''''''''''''''''''''''''''''''J

 'Duże litery

 Data 0 , 0 , 0 , 5 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0,       ''''''''''K

 Data 0 , 0 , 0 , 0 , 0 , 0 , 81 , 33 , 03 , 0 , 0 , 90 , 83 , 65,       ''''''''L

 Data 87 , 64 , 0 , 0 , 67 , 88 , 68 , 69 , 36 , 35 , 0 , 0 , 0 , 86,       '''''M

 Data 70 , 84 , 82 , 37 , 0 , 0 , 78 , 66 , 72 , 71 , 89 , 94 , 0,       ''''''''N

 Data 0 , 0 , 77 , 74 , 85 , 38 , 42 , 0 , 0 , 60 , 75 , 73 , 79,       '''''''''O

 Data 41 , 40 , 0 , 0 , 62 , 63 , 76 , 58 , 80 , 0 , 0 , 0 , 0 , 0,       '''''''P

 Data 0 , 123 , 43 , 0 , 0 , 0 , 0 , 0 , 125 , 0 , 0 , 0 , 0 , 0 , 0,       '''''Q

 Data 0 , 0 , 0 , 0 , 0 , 0 , 49 , 49 , 0 , 52 , 55 , 0 , 0 , 0 , 48,       '''''R

 Data 44 , 50 , 53 , 54 , 56 , 0 , 0 , 0 , 43 , 51 , 45 , 42 , 57 , 0 , 0       'S

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

'Tablica zawiera znaki klawiatury AT w kodzie ASCI. Kolejność ich osadzenia zawarta jest w zmiennej Ind.

Tabl:

Data 97 , 98 , 99 , 100 , 101 , 102 , 103 , 104 , 105 , 106 , 107 , 108 , 109 , 110 , 111 , 112,       '1 - 16 - od zera.

Data 113 , 114 , 115 , 116 , 117 , 118 , 119 , 120 , 121 , 122 ,       '17 - 26.

Data 49 , 50 , 51 , 52 , 53 , 54 , 55 , 56 , 57 , 48,       '27 - 36.

Data 46 , 44 , 58 , 43 , 32 , 95 , 61 , 40 , 41 , 63 , 39 , 64 , 47       '37 - 49

Data 36 , 38 , 42 , 35 , 37                                 '50 - 54


ENDE