Liczba postów: 35
Liczba wątków: 26
Dołączył: Jun 2021
Reputacja:
0
Czy to prawda, że przerwanie nie może być wywołane, gdy w arduino działa delay()?
Liczba postów: 880
Liczba wątków: 19
Dołączył: Jun 2018
Reputacja:
42
Nie prawda przerwania działają.. Timery, pwm, rs, itd.. Wszystko działa w czasie delay
Arduino zostało wymyślone po to, by robić dobrze jedną prostą rzecz – migać diodą.
Liczba postów: 2,368
Liczba wątków: 0
Dołączył: Oct 2017
Reputacja:
240
Są przerwania wewnętrzne i zewnętrzne, oba działają w czasie delay(). Blokowane jest wykonywanie poleceń i funkcji w setup/loop, dlatego lepiej używać konstrukcji opartych na np. millis().
Tak samo zresztą każde polecenie czy wywołana funkcja zablokuje loop na czas swojego wykonania. Delay jest w tym o tyle szczególne, że czas trwania działania jest określony w argumencie funkcji i ten czas "blokady" programu jest jedynym celem działania.