Czy poniższy program jest poprawny?
Na symulatorze wszystko działa lecz nie w rzeczywistości.
Zadanie programu:
Po Zwarciu PinC.1 do masy ma wygenerować 2s impuls na PinC.0
następnie po rozwarciu zacząć odliczać czas ustalony przy urzyciu zmiennej T, po upływie którego poda impuls 2s na PinC.0.
Jeśli przed upływem czasu ustalonego zmienną T1 PinC.1 zostanie zwarty do masy wtedy po rozwarciu PinC.1 znowu zacznie odliczać czas od nowa.
Post raportowany, należy stosować znaczniki code, oraz stosować tagi w tematach.
And!
Na symulatorze wszystko działa lecz nie w rzeczywistości.
Zadanie programu:
Po Zwarciu PinC.1 do masy ma wygenerować 2s impuls na PinC.0
następnie po rozwarciu zacząć odliczać czas ustalony przy urzyciu zmiennej T, po upływie którego poda impuls 2s na PinC.0.
Jeśli przed upływem czasu ustalonego zmienną T1 PinC.1 zostanie zwarty do masy wtedy po rozwarciu PinC.1 znowu zacznie odliczać czas od nowa.
$regfile = "m8def.dat"
Config Pind.0 = Input
Config Pind.1 = Input
Config Pinc.1 = Input
Config Pinc.0 = Output
Set Pind.1
Set Pinc.1
Set Pinb.5
Dim C As Integer
Dim T As Integer
Wy Alias Pinc.0
We Alias Pinc.1
T1 Alias Pind.1
T2 Alias Pinb.5
If T1 = 0 Then
T = 360
Elseif T2 = 0 Then
T = 480
Else
T = 240
End If
Startprog:
Do
Debounce Pinc.1 , 0 , Prog
Loop
End
Prog:
Set Wy
Wait 2
Reset Wy
Gosub Prog1
Prog1:
Do
Debounce Pinc.1 , 1 , Mierz_czas
Loop
Mierz_czas:
C = 0
Do
C = C + 1
Wait 1
If C = T Then
Set Wy
Wait 2
Reset Wy
Gosub Startprog
Elseif We = 0 Then
Gosub Prog1
End If
LoopPost raportowany, należy stosować znaczniki code, oraz stosować tagi w tematach.
And!
