Hi, ich habe folgendes Programm geschriben.

Code:
$regfile = "m16def.dat"
$crystal = 16000000

Config Porta.0 = Output
Config Portd.7 = Output
Config Pina.2 = Input
Dim Zeit As Byte
Dim Main1 As Long
Dim Main2 As Long
Dim Main3 As Long

Main1:
Zeit = 0
Portd.7 = 1
Waitms 300
Portd.7 = 0
Waitms 300
Portd.7 = 1
Waitms 300
Portd.7 = 0
Goto Main2

Main2:
Porta.0 = 1
If Pina.2 = 0 Then
Porta.0 = 0
Goto Main3
End If

Main3:
Zeit = Zeit + 1


If Zeit = 10 Then
Porta.0 = 1
Portd.7 = 1
Waitms 3000
Porta.0 = 0
Portd.7 = 0
End If

If Zeit = 15 Then
Porta.0 = 1
Portd.7 = 1
Waitms 3000
Porta.0 = 0
Portd.7 = 0
End If


End
Wobei Pina.2 einem Taster (Öffner) entspricht.

Wenn ich das Programm nun compilieren lasse, gibt es keine Fehlermeldungen von Basecom. Das Programm scheint aber nicht richtig zu laufen. An PORTD.7 hängt ein pieper. Der piept auch 2 mal wenn das Programm abläuft. Allerdings geht das programm danach nicht mehr weiter. Sprich wenn ich den Taster drücke passiert nichts mehr.

Woran kann das liegen ?

mfg Blamaster