Bei mir funktioniert das wie erwartet:
Code:
$regfile = "m8def.dat" 'Setup asuro
$crystal = 8000000
Config Timer0 = Timer , Prescale = 64
Config Pind.2 = Output
Config Pind.3 = Output
Config Pind.4 = Output
Config Pind.5 = Output
Mg1 Alias Portd.2
Mg2 Alias Portd.3
Mg3 Alias Portd.4
Mg4 Alias Portd.5
Dim Mg1flag As Byte
Dim Mg2flag As Byte
Dim Mg3flag As Byte
Dim Mg4flag As Byte
Dim Mg1time As Integer
Dim Mg2time As Integer
Dim Mg3time As Integer
Dim Mg4time As Integer
Dim I As Integer
Const Timervorgabe = 131
On Timer0 Timer_irq
Enable Timer0
Enable Interrupts
Mg1flag = 0
Mg2flag = 0
Mg3flag = 0
Mg4flag = 0
Mg1time = 0
Mg2time = 0
Mg3time = 0
Mg4time = 0
Dim Led2 As Byte
Led2 = 0
Mg1 = 1 'LEDs aus
Mg2 = 1
Mg3 = 1
Mg4 = 1
Do
Loop
End
Timer_irq:
Timer0 = Timervorgabe
If Mg1time = 0 Then
If Mg1flag = 1 Then
Mg1time = 250 ' Anzeit
Mg1 = 1
Mg1flag = 0
Else
Mg1time = 250 ' Auszeit
Mg1 = 0
Mg1flag = 1
End If
End If
Decr Mg1time
If Led2 > 0 Then
Decr Led2
Else
Toggle Portd.3
If Pind.3 = 0 Then
Led2 = 249 ' Anzeit-1!
Else
Led2 = 249 ' Auszeit-1
End If
End If
Return
Lesezeichen