Witam,
Napisałem program, który po wciśnięciu switcha (podaniu napięcia na PinB. 1 i PinB. 2 przez kilka sekund) ma migać diodami w kolejności 123 lub 321 w zależności od wciśniętego switcha.
Po naciśnięciu switcha 1. diody przez cały czas zaświecają się po kole 123 i tak przez cały czas. Przerwać może tylko wciśnięcie switcha numer 2 i włączenie funkcji migania diodami w kolejności 321. Czy program jest napisany poprawnie?
Napisałem program, który po wciśnięciu switcha (podaniu napięcia na PinB. 1 i PinB. 2 przez kilka sekund) ma migać diodami w kolejności 123 lub 321 w zależności od wciśniętego switcha.
Po naciśnięciu switcha 1. diody przez cały czas zaświecają się po kole 123 i tak przez cały czas. Przerwać może tylko wciśnięcie switcha numer 2 i włączenie funkcji migania diodami w kolejności 321. Czy program jest napisany poprawnie?
Spoiler:
$regfile = "attiny2313.dat"
$crystal = 1000000
Config Portb = Input
Portb = &B0000000
Config Portd = Output
Portd = &B0000000
Do
If Pinb.0 = 1 Then Gosub 123
If Pinb.1 = 1 Then Gosub 321
Loop
End
123:
Do
Toggle Portd.1
Waitms 1000
Toggle Portd.1
Toggle Portd.2
Waitms 1000
Toggle Portd.2
Toggle Portd.3
Waitms 1000
Toggle Portd.3
Loop
321:
Do
Toggle Portd.3
Waitms 1000
Toggle Portd.3
Toggle Portd.2
Waitms 1000
Toggle Portd.2
Toggle Portd.1
Waitms 1000
Toggle Portd.1
Loop
$regfile = "attiny2313.dat"
$crystal = 1000000
Config Portb = Input
Portb = &B0000000
Config Portd = Output
Portd = &B0000000
Do
If Pinb.0 = 1 Then Gosub 123
If Pinb.1 = 1 Then Gosub 321
Loop
End
123:
Do
Toggle Portd.1
Waitms 1000
Toggle Portd.1
Toggle Portd.2
Waitms 1000
Toggle Portd.2
Toggle Portd.3
Waitms 1000
Toggle Portd.3
Loop
321:
Do
Toggle Portd.3
Waitms 1000
Toggle Portd.3
Toggle Portd.2
Waitms 1000
Toggle Portd.2
Toggle Portd.1
Waitms 1000
Toggle Portd.1
Loop

