Witam
Przerobiłem program znaleziony gdzieś w internecie aby pracował z lampami NIXI i mam problem ponieważ nie chce mi się kompilować.
Wywala bład 212 "Low level, Rising or Falling expected [TIMER] w lini
Config Int0 = Timer , Prescale = 128
Prosił bym o wmiare łopatologiczne tłumaczenie ponieważ dopiero się uczę

Reszta programu
' Zegar, termometr, budzik NIXIE 74141
$crystal = 8000000
Dim Sekjed As Byte
Dim Sekdzies As Byte
Dim Minjed As Byte
Dim Mindzies As Byte
Dim Godzjed As Byte
Dim Godzdzies As Byte
Dim Multi As Byte
Dim Miganie As Bit
Dim Wlaczeniebudzika As Bit
Dim Ustawianie As Byte
Dim Trybustawianiabudzika As Bit
Dim Trybustawianiaczasu As Bit
Dim Uniwers As Byte
Dim Maxi As Byte
Dim Minjedb As Byte
Dim Mindziesb As Byte
Dim Godzjedb As Byte
Dim Godzdziesb As Byte
Dim Alarm As Bit
Dim Odczyttemp As Bit
Dim Ulamek As Byte
Dim Jednosci As Byte
Dim Dziesiatki As Byte
Dim Tmp As Single
Dim Temp As Byte
Dim Odczyt(2) As Byte
Dim T As Integer
Dim Liczba As Byte
Config Portb = &B11111111
Config Portc = &B11110111
Config Portd = &B11111111
Config 1wire = Pinc.4
Config Int0 = Timer , Prescale = 128
Config Timer0 = Timer , Prescale = 8
Enable Interrupts
Enable Int0
Enable Timer0
On Timer0 2ms
On Int0 1s
Sekjed = 0 : Sekdzies = 0 : Minjed = 0 : Mindzies = 0 : Godzjed = 0 : Godzdzies = 0
Uniwers = 4 : Alarm = 0 : Wlaczeniebudzika = 0 : Trybustawianiabudzika = 0
Trybustawianiaczasu = 0
Do
If Odczyttemp = 1 Then
Disable Interrupts
'odczytaj temperaturę
1wreset 'reset
1wwrite &HCC 'jedna kostka, więc wykorzystujemy rozkaz SKIP ROM
1wwrite &H44 'dokonaj konwersji
Waitms 750 'przeczekaj czas konwersji
1wreset 'reset
1wwrite &HCC 'rozkaz adresowy SKIP ROM
1wwrite &HBE 'rozkaz funkcyjny - polecenie odczytu DS18x20
Odczyt(1) = 1wread(2)
T = Odczyt(2)
Shift T , Left , 8
T = T + Odczyt(1)
Tmp = T / 16
Liczba = Int(tmp)
'oblicz ułamek
Tmp = Frac(tmp)
Tmp = Tmp * 10
Ulamek = Int(tmp)
Temp = Makebcd(liczba)
Jednosci = Temp And &B00001111
Shift Temp , Right , 4
Dziesiatki = Temp
Enable Interrupts
End If
Loop : End
1s:
Incr Sekjed
Toggle Miganie
Return
If Pinc.2 = 0 Then
Incr Ustawianie
Else
Ustawianie = 0
End If
If Wlaczeniebudzika = 1 Then
If Godzdzies = Godzdziesb And Godzjed = Godzjedb And Mindzies = Mindziesb And Minjed = Minjedb Then
Alarm = 1
End If
End If
If Alarm = 1 Then 'alarm gra 1 sek i nie gra 1 sek
Toggle Portb.5
Else
Portb.5 = 1
End If : Return
2ms:
If Pinb.4 = 0 Then
Odczyttemp = 1
Else
Odczyttemp = 0
End If
If Pinb.0 = 1 And Pinb.1 = 1 Then
Maxi = 100 : Uniwers = 4
End If
If Ustawianie = 0 Then
Toggle Trybustawianiabudzika ' Wybieranie trybu ustawiania budzika po przytrzymaniu <1s
End If
If Ustawianie = 5 Then 'Wybieranie ustawiania czasu po przytrzymaniu ok 5s
Toggle Trybustawianiaczasu
End If
If Pinb.3 = 0 Then
Toggle Wlaczeniebudzika
End If
If Trybustawianiabudzika = 1 Then
If Pinb.0 = 0 Then
Decr Uniwers
End If
If Uniwers = 0 Then
Uniwers = Maxi : Maxi = Maxi - 8 : If Maxi < 8 Then Maxi = 8
End If 'coraz szybciej
Incr Minjedb
If Minjedb = 10 Then
Minjedb = 0 : Incr Mindziesb
End If
If Mindziesb = 6 Then
Mindziesb = 0 : Incr Godzjedb
End If
If Godzjedb = 10 Then
Godzjedb = 0 : Incr Godzdziesb
End If
If Godzdziesb = 2 And Godzjedb = 4 Then
Godzdziesb = 0 : Godzjedb = 0
End If
If Pinb.1 = 0 Then
Decr Uniwers
End If
If Uniwers = 0 Then
Uniwers = Maxi : Maxi = Maxi - 8 : If Maxi < 8 Then Maxi = 8
End If 'coraz szybciej
Incr Godzjedb
If Godzjedb = 10 Then
Godzjedb = 0 : Incr Godzdziesb
End If
If Godzdziesb = 2 And Godzjedb = 4 Then
Godzdziesb = 0 : Godzjedb = 0
End If
If Trybustawianiaczasu = 1 Then
Miganie = 1
If Pinb.0 = 0 Then
Decr Uniwers
End If
If Uniwers = 0 Then
Uniwers = Maxi : Maxi = Maxi - 8 : If Maxi < 8 Then Maxi = 8
End If 'coraz szybciej
Incr Minjed : Sekjed = 0 : Sekdzies = 0
End If
If Pinb.1 = 0 Then
Decr Uniwers
End If
If Uniwers = 0 Then
Uniwers = Maxi : Maxi = Maxi - 8 : If Maxi < 8 Then Maxi = 8
End If 'coraz szybciej
Incr Godzjed
End If
If Miganie = 1 Then 'Część o świeceniu diody
Portd = &B00001111
Else
Portd = &B00001111
End If
If Sekjed = 10 Then 'Procedury liczenia czasu
Sekjed = 0 : Incr Sekdzies
End If
If Sekdzies = 6 Then
Sekdzies = 0 : Incr Minjed
End If
If Minjed = 10 Then
Minjed = 0 : Incr Mindzies
End If
If Mindzies = 6 Then
Mindzies = 0 : Incr Godzjed
End If
If Godzjed = 10 Then
Godzjed = 0 : Incr Godzdzies
End If
If Godzdzies = 2 And Godzjed = 4 Then
Godzdzies = 0 : Godzjed = 0
End If
Incr Multi
If Multi = 4 Then
Multi = 0
End If
If Trybustawianiabudzika = 0 Then
Portb = &B11111111
Select Case Multi
Case 0:
Portb = Lookup(godzdzies , Tabela) : Portd = &B01011111
Case 1:
Portb = Lookup(godzjed , Tabela) : Portd = &B01101111
Case 2:
Portb = Lookup(mindzies , Tabela) : Portd = &B00101111
Case 3:
Portb = Lookup(minjed , Tabela) : If Wlaczeniebudzika = 1 Then Portd = &B00001111 : Portd = &B00011111
End Select
Else
If Miganie = 1 Then
Select Case Multi
Case 0:
Portb = Lookup(godzdziesb , Tabela) : Portd = &B01011111
Case 1:
Portb = Lookup(godzjedb , Tabela) : Portd = &B01101111
Case 2:
Portb = Lookup(mindziesb , Tabela) : Portd = &B00101111
Case 3:
Portb = Lookup(minjedb , Tabela) : If Wlaczeniebudzika = 1 Then Portd = &B00001111 : Portd = &B00011111
End Select
End If
End If
If Odczyttemp = 1 Then
Select Case Multi
Case 0:
Portb = Lookup(godzdziesb , Tabela) : Portd = &B01011111
Case 1:
Portb = Lookup(dziesiatki , Tabela) : Portd = &B01101111
Case 2:
Portb = Lookup(jednosci , Tabela) : Portd = &B00001111 : Portd = &B00101111
Case 3:
Portb = Lookup(ulamek , Tabela) : Portd = &B00011111
End Select
End If : Return
Tabela:
Data &B00110000 , &B11111001 , &B01010010 , &B11010000 , &B10011001 , &B10010100 , &B00010100 , &B11110001 , &B00010000 , &B10010000