12-23-2016, 08:00 AM
Kod ti nije dobar iz razloga što vrednost START/STOP tastera čitaš samo jednom na početku petlje.
Ulaziš u problem ukoliko je aktiviran iz bilo kog razloga STOP, pre toga si uključio neki motor a tvoj se program vrti u delu programa koji radi delay(x) sekundi. Motor mora da se isključi odmah nakon što je aktiviran taster STOP a ne da čeka da prođe neki delay. Treba da program drugačije organizuješ i razmotriš ovo što je Vojin naveo. START/STOP taster odvedi na neki pin koji može da generiše spoljašnji prekid a kašnjenja reši preko prekida (interrupt) tajmera. Ne poznajem arduino platformu ali kreni sa nekim kodom pa ćemo ti pomoći.
Code:
startstopState = digitalRead(startstop);
Ulaziš u problem ukoliko je aktiviran iz bilo kog razloga STOP, pre toga si uključio neki motor a tvoj se program vrti u delu programa koji radi delay(x) sekundi. Motor mora da se isključi odmah nakon što je aktiviran taster STOP a ne da čeka da prođe neki delay. Treba da program drugačije organizuješ i razmotriš ovo što je Vojin naveo. START/STOP taster odvedi na neki pin koji može da generiše spoljašnji prekid a kašnjenja reši preko prekida (interrupt) tajmera. Ne poznajem arduino platformu ali kreni sa nekim kodom pa ćemo ti pomoći.