'EmisjaImpulsow.bas

 'Wyemitowanie określonej ilości impulsów przez pętlę For..

 'Opis pod programem.

 'Opracował Henryk Wydmuch

 'Program zajmuje 9% pamięci.

 

 $regfile = "m8def.dat"                                     'Info dla kompilatora.

$crystal = 4000000                                          'Informujemy kompilator o kwarcu 4MHz.

 

 Config Lcd = 16 * 2                                        'Konfiguracja Lcd.

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

 

 

 Dim I As Byte                                              'Zmienna operacyjna dla pętli For.

 Dim Ad As Byte                                             'Zmienna, która zawierać będzie podwójną liczbę emitowanych impulsów.

 Dim Wp As Byte                                             'Zmienna do której wpiszemy potrzebną ilość impulsów.

 

 Config Pinb.1 = Output                                     'Port wyjściowy impulsów.

  Set Portb.1                                               '

  Config Pind.6 = Input                                     'Port startowy.

  Set Portd.6                                               '

 

 Cls

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

 Do                                                         'Pętla Do.

  Wp = 9                                                    'Tutaj wpisz potrzebną liczbę impulsów do wyemitowania.

  Ad = Wp * 2                                               'Razy dwa.

 If Pind.6 = 0 Then                                         'Jeśli przyciśnięto Start.

 For I = Ad To 1 Step - 1                                   'Krocz w dół po jednym od wpisanej liczby.

   Toggle Portb.1                                           'Zmieniaj wyjście portu.

   Home                                                     'W jednym miejscu.

   Lcd Wp                                                   'Pokaż liczbę, którą ma wyemitować.

   Waitms 500                                               'Szybkość emisji, kroki.

  If Ad = 0 Then                                            'Jeśli wpisana liczba została wyczerpana.

 Exit Do                                                    'Wyjdź z pętli.

 End If                                                     '

 Next I                                                     'Krocz For

 End If                                                     '

Loop                                                        '

End                                                         '

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

 'Objaśnienie:

 'Program pozwala wyemitować określoną ilość impulsów. Liczbę impulsów

 'wpisujemy do pętli Do (Wp=).

 'Po naciśnięciu Start (Pind.6=0) pętla ruszy i wyemituje założoną liczbę impulsów

 'z szybkością Waitms 500.