Bei deinem Ansatz wird der Alarm auch ausgelöst, wenn 3mal das Auto abgeschlossen wurde oder so...
Code:
$regfile = "m16def.dat"
$crystal = 4000000
$baud = 19200
Dim Sek As Byte
Dim Ms As Integer
Dim Zaehler As Byte
Config Pinb.0 = Input
Config Portb.1 = Output
Config Portb.2 = Output
Alarmeing Alias Pinb.0
Ausgang Alias Portb.1
Led Alias Portb.2
Do
Gosub Msek
If Alarmeing = 1 Then
If Zaehler = 0 Then
Ms = 0
Sek = 0
End If
Zaehler = Zaehler + 1
If Zaehler = 3 Then
Gosub Alarm
End If
Do
Gosub Msek
Loop Until Alarmeing = 0
End If
Loop
End
Msek: 'Jede Millisekunde
Waitms 1
Ms = Ms + 1
If Ms = 1000 Then
Sek = Sek + 1
Ms = 0
End If
If Sek > 10 Then 'zaehler zurücksetzen, wenn innerhalb 10 Sek die 3 Töne nicht erreicht worden
Zaehler = 0
Sek = 0
Toggle Led 'LED zur Signalisierung, dass das Programm arbeitet.
Reset Ausgang
End If
Return
Alarm:
Sek = 0
Set Ausgang 'z.B. für LED Anzeige oder einem Relais, welches das Handy einschaltet
Wait 1 'evtl länger warten, falls Handy "Hochfährt"
Print "atd+49xxxxxxx;"
'Input "atd+49xxxxxxx;"
Wait 40
'evtl einlesen, ob ein OK vom Handy kommt.
Reset Ausgang 'abschalten der LED oder des Handys
Return
edit: Bei deinem Codeansatz wird immer Alarm ausgelöst
Lesezeichen