Witam wszystkich forumowiczów
A więc mam problem z bascomem a zaczyna się tak że bascom nie kompiluje mi większości np.config clock
Mam jeszcze jedno pytanie co do programowania w bascom czy ten program da rade jakoś go skrócić
A więc mam problem z bascomem a zaczyna się tak że bascom nie kompiluje mi większości np.config clock
$regfile = "m8def.dat" 'Dyrektyway dla kompilatora.
$crystal = 8000000 'Oscylator wewnętrzny o częstotliwości 8MHz.
Enable Interrupts
Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , Db7 = Portd.7 , E = Portd.2 , Rs = Portd.3
Cursor Off
Config Clock = Soft 'Konfiguracja czasu.
Config Date = Dmy , Separator = / 'Konfig. daty. Dmy=dzień,miesiąc,rok. Seperator=/,albo-,albo. . 'Uruchamiamy odblokowania.
Date$ = "02/08/06" 'Ustawiamy datę od której wystartuje.
Time$ = "12:00:00" 'Ustawiamy czas od którego wystartuje.
Cls 'Czyść Lcd.
Do 'Pętla główna.
Lcd Time$ ; " " ; Date$
Waitms 100 'Pobierz aktualny czas.
Loop 'Trzymaj chwilę wyświetlony czas.
'Zamknij pętlę.
EndMam jeszcze jedno pytanie co do programowania w bascom czy ten program da rade jakoś go skrócić
$crystal = 8000000
$regfile "m8def.dat"
$sim
Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , Db7 = Portd.7 , E = Portd.3 , Rs = Portd.2
Config Lcd = 16 * 2
' Miernik prędkości obrotowej
'licznikiem 0...65535 jest Timer1
Dim Wynik As Long
Config Timer1 = Counter , Edge = Rising 'konfiguracja Timera do zliczania impulsów
Deflcdchar 0 , 16 , 16 , 16 , 16 , 16 , 16 , 16 , 16 ' replace ? with number (0-7)
Deflcdchar 1 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 ' replace ? with number (0-7)
Deflcdchar 2 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 ' replace ? with number (0-7)
Deflcdchar 3 , 30 , 30 , 30 , 30 , 30 , 30 , 30 , 30 ' replace ? with number (0-7)
Deflcdchar 4 , 31 , 31 , 31 , 31 , 31 , 31 , 31 , 31 ' replace ? with number (0-7)
Cursor Off
Cls
Lcd "Obrotomierz"
Wait 1 'powitanie
Do 'program główny - pętla
Timer1 = 0 'zeruj licznik
Start Timer1 'zacznij liczyć
Wait 1 'zliczaj impulsy przez 1 sekundę
Stop Timer1 'przestań liczyć
Wynik = Timer1 * 60 'wynik zliczania w czasie 1s mnożymy przez 60 dla otrzymania wyniku w: obr/min
Cls
If Wynik => 0 Then
Locate 1 , 1
Lcd Chr(4)
If Wynik => 100 Then
Locate 1 , 2
Lcd Chr(0)
If Wynik => 200 Then
Locate 1 , 2
Lcd Chr(1)
If Wynik => 300 Then
Locate 1 , 2
Lcd Chr(2)
If Wynik => 400 Then
Locate 1 , 2
Lcd Chr(3)
If Wynik => 500 Then
Locate 1 , 2
Lcd Chr(4)
If Wynik => 600 Then
Locate 1 , 3
Lcd Chr(1)
If Wynik => 700 Then
Locate 1 , 3
Lcd Chr(2)
If Wynik => 800 Then
Locate 1 , 3
Lcd Chr(3)
If Wynik => 900 Then
Locate 1 , 3
Lcd Chr(4)
If Wynik => 1000 Then
Locate 1 , 4
Lcd Chr(0)
If Wynik => 1100 Then
Locate 1 , 4
Lcd Chr(1)
If Wynik => 1200 Then
Locate 1 , 4
Lcd Chr(2)
If Wynik => 1300 Then
Locate 1 , 4
Lcd Chr(3)
If Wynik => 1400 Then
Locate 1 , 4
Lcd Chr(4)
If Wynik => 1500 Then
Locate 1 , 5
Lcd Chr(0)
If Wynik => 1600 Then
Locate 1 , 5
Lcd Chr(1)
If Wynik => 1700 Then
Locate 1 , 5
Lcd Chr(2)
If Wynik => 1800 Then
Locate 1 , 5
Lcd Chr(3)
If Wynik => 1900 Then
Locate 1 , 5
Lcd Chr(4)
If Wynik => 2000 Then
Locate 1 , 6
Lcd Chr(0)
If Wynik => 2100 Then
Locate 1 , 6
Lcd Chr(1)
If Wynik => 2200 Then
Locate 1 , 6
Lcd Chr(2)
If Wynik => 2300 Then
Locate 1 , 6
Lcd Chr(3)
If Wynik => 2400 Then
Locate 1 , 6
Lcd Chr(4)
If Wynik => 2500 Then
Locate 1 , 7
Lcd Chr(0)
If Wynik => 2600 Then
Locate 1 , 7
Lcd Chr(1)
If Wynik => 2700 Then
Locate 1 , 7
Lcd Chr(2)
If Wynik => 2800 Then
Locate 1 , 7
Lcd Chr(3)
If Wynik => 2900 Then
Locate 1 , 7
Lcd Chr(4)
If Wynik => 3000 Then
Locate 1 , 8
Lcd Chr(0)
If Wynik => 3100 Then
Locate 1 , 8
Lcd Chr(1)
If Wynik => 3200 Then
Locate 1 , 8
Lcd Chr(2)
If Wynik => 3300 Then
Locate 1 , 8
Lcd Chr(3)
If Wynik => 3400 Then
Locate 1 , 8
Lcd Chr(4)
If Wynik => 3500 Then
Locate 1 , 9
Lcd Chr(0)
If Wynik => 3600 Then
Locate 1 , 9
Lcd Chr(1)
If Wynik => 3700 Then
Locate 1 , 9
Lcd Chr(2)
If Wynik => 3800 Then
Locate 1 , 9
Lcd Chr(3)
If Wynik => 3900 Then
Locate 1 , 9
Lcd Chr(4)
If Wynik => 4000 Then
Locate 1 , 10
Lcd Chr(0)
If Wynik => 4100 Then
Locate 1 , 10
Lcd Chr(1)
If Wynik => 4200 Then
Locate 1 , 10
Lcd Chr(2)
If Wynik => 4300 Then
Locate 1 , 10
Lcd Chr(3)
If Wynik => 4400 Then
Locate 1 , 10
Lcd Chr(4)
If Wynik => 4500 Then
Locate 1 , 11
Lcd Chr(0)
If Wynik => 4600 Then
Locate 1 , 11
Lcd Chr(1)
If Wynik => 4700 Then
Locate 1 , 11
Lcd Chr(2)
If Wynik => 4800 Then
Locate 1 , 11
Lcd Chr(3)
If Wynik => 4900 Then
Locate 1 , 11
Lcd Chr(4)
If Wynik => 5000 Then
Locate 1 , 12
Lcd Chr(0)
If Wynik => 5100 Then
Locate 1 , 12
Lcd Chr(1)
If Wynik => 5200 Then
Locate 1 , 12
Lcd Chr(2)
If Wynik => 5300 Then
Locate 1 , 12
Lcd Chr(3)
If Wynik => 5400 Then
Locate 1 , 12
Lcd Chr(4)
If Wynik => 5500 Then
Locate 1 , 13
Lcd Chr(0)
If Wynik => 5600 Then
Locate 1 , 13
Lcd Chr(1)
If Wynik => 5700 Then
Locate 1 , 13
Lcd Chr(2)
If Wynik => 5800 Then
Locate 1 , 13
Lcd Chr(3)
If Wynik => 5900 Then
Locate 1 , 13
Lcd Chr(4)
If Wynik => 6000 Then
Locate 1 , 14
Lcd Chr(0)
If Wynik => 6100 Then
Locate 1 , 14
Lcd Chr(1)
If Wynik => 6200 Then
Locate 1 , 14
Lcd Chr(2)
If Wynik => 6300 Then
Locate 1 , 14
Lcd Chr(3)
If Wynik => 6400 Then
Locate 1 , 14
Lcd Chr(4)
If Wynik => 6500 Then
Locate 1 , 15
Lcd Chr(0)
If Wynik => 6600 Then
Locate 1 , 15
Lcd Chr(1)
If Wynik => 6700 Then
Locate 1 , 15
Lcd Chr(2)
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
Locate 2 , 1 'przejście do drugiej linii
Lcd Wynik ; " obr/min" 'wyświetlamy wynik i jednostkę
Loop 'koniec pętli głównej programu
End