Odpowiedz 
 
Ocena wątku:
  • 0 Głosów - 0 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
Bascom AVR
SQ9MDD Offline
Rysiek
****

Liczba postów: 380
Dołączył: 01-02-2009
Post: #49
RE: Bascom AVR
Zrobiłem sobie kopie na zapas Smile Zobaczymy może nikt tego nie zepsuje Smile

Ja to robię tak ze znamiennikiem:

Kod:
Znamiennik:
'uruchamiam sobie TX
Ptt = 1
Tx_led = 1
Wentylator = 1
'blokujemy timer na czas wysylania znamiennika bo chrypi
Stop Timer0
Waitms 300
   Stringlength = Len(inputtekst)
'tutaj przesuwamy się po ciągu znaków i będziemy odtwarzać każdą literę z osobna
   For Charindex = 1 To Stringlength
   Sendchar = Mid(inputtekst , Charindex , 1)
   Charcode = Asc(sendchar)

    Dataindex = Charcode - 48
    Charstring = Lookupstr(dataindex , Alfabet)
    Codelength = Len(charstring)

'ta pętla generuje kazda litere znaku
         For Codeindex = 1 To Codelength
               Codeelement = Mid(charstring , Codeindex , 1)
            If Codeelement = "." Then
'Zagraj kropke
               Sound Morsepin , Kropka , Czestotliwosc
            Else
'Zagraj kreske
               Sound Morsepin , Kreska , Czestotliwosc
            End If
            If Codeindex < Codelength Then
               Waitms Kropka
            End If
         Next Codeelement
'odstęp pomiedzy znakami 3 x kropka
      Waitms Kreska
'i wracamy do początku pętli po następną literę
   Next Charindex
'resetujemy flagi
   Ptt = 0
   Tx_led = 0
   'Wentoff = 1
'skonczylismy nadawac znamiennik odpalamy timer 1
   Start Timer0
Return


i do tego tablica ze znakami:

Kod:
Alfabet:
Data "-----"                                                '0  Znaki pokolei tak jak są ustawione w tablicy ASCII
Data ".----"                                                '1  przy wywoływaniu musimy tylko przestawić indeks o 48
Data "..---"                                                '2  ponieważ cyfra 0 ma kod ASCII 48
Data "...--"                                                '3
Data "....-"                                                '4
Data "....."                                                '5
Data "-...."                                                '6
Data "--..."                                                '7
Data "---.."                                                '8
Data "----."                                                '9
Data "."                                                    ': do generowania znamienników znaki specjalne nie są potrzebne
Data "."                                                    ';
Data "."                                                    '<
Data "."                                                    '=
Data "."                                                    '>
Data "."                                                    '?
Data "."                                                    '@
Data ".-"                                                   'A  Literki
Data "-..."                                                 'B
Data "-.-."                                                 'C
Data "-.."                                                  'D
Data "."                                                    'E
Data "..-."                                                 'F
Data "--."                                                  'G
Data "...."                                                 'H
Data ".."                                                   'I
Data ".---"                                                 'J
Data "-.-"                                                  'K
Data ".-.."                                                 'L
Data "--"                                                   'M
Data "-."                                                   'N
Data "---"                                                  'O
Data ".--."                                                 'P
Data "--.-"                                                 'Q
Data ".-."                                                  'R
Data "..."                                                  'S
Data "-"                                                    'T
Data "..-"                                                  'U
Data "...-"                                                 'V
Data ".--"                                                  'W
Data "-..-"                                                 'X
Data "-.--"                                                 'Y
Data "--.."                                                 'Z

Część kodu zapożyczyłem, już nie pamiętam od kogo

...przede wszystkim nie zakłócać...
06-05-2012 16:41
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
Odpowiedz 


Wiadomości w tym wątku
Bascom AVR - SP5FCS - 15-08-2010, 22:43
RE: Bascom AVR - SP3SWJ - 06-10-2010, 21:56
RE: Bascom AVR - SQ2EER - 25-10-2010, 21:07
RE: Bascom AVR - SP3SWJ - 25-10-2010, 21:17
RE: Bascom AVR - SQ2EER - 25-10-2010, 21:23
RE: Bascom AVR - SP3SWJ - 25-10-2010, 21:35
RE: Bascom AVR - SQ2EER - 25-10-2010, 21:39
RE: Bascom AVR - SP3SWJ - 25-10-2010, 22:05
RE: Bascom AVR - SQ2EER - 25-10-2010, 22:28
RE: Bascom AVR - SP3SWJ - 27-10-2010, 1:49
RE: Bascom AVR - SQ2EER - 18-03-2011, 21:39
RE: Bascom AVR - SP3SWJ - 18-03-2011, 22:02
RE: Bascom AVR - SQ2EER - 18-03-2011, 22:22
RE: Bascom AVR - SQ9MDD - 18-03-2011, 22:31
RE: Bascom AVR - SQ2EER - 18-03-2011, 23:03
RE: Bascom AVR - SP3SWJ - 18-03-2011, 23:05
RE: Bascom AVR - SQ2EER - 18-03-2011, 23:15
RE: Bascom AVR - SQ2EER - 04-09-2011, 22:04
RE: Bascom AVR - SP3SWJ - 04-09-2011, 22:09
RE: Bascom AVR - SQ2EER - 04-09-2011, 22:22
RE: Bascom AVR - SP3SWJ - 04-09-2011, 22:36
RE: Bascom AVR - SQ9MDD - 06-05-2012, 16:10
RE: Bascom AVR - SP3SWJ - 06-05-2012, 16:10
RE: Bascom AVR - SQ9MDD - 06-05-2012, 16:21
RE: Bascom AVR - SP3SWJ - 06-05-2012, 16:34
RE: Bascom AVR - SQ9MDD - 06-05-2012 16:41
RE: Bascom AVR - SP3SWJ - 06-05-2012, 16:41

Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości