Wykonanie pętli for resetuje ESP - Wersja do druku +- Arduino Polska Forum (https://forum.arduinopolska.pl) +-- Dział: Korzystanie z Arduino (https://forum.arduinopolska.pl/dzial-korzystanie-z-arduino) +--- Dział: Piaskownica (https://forum.arduinopolska.pl/dzial-piaskownica) +--- Wątek: Wykonanie pętli for resetuje ESP (/watek-wykonanie-p%C4%99tli-for-resetuje-esp) |
Wykonanie pętli for resetuje ESP - BorokaMan - 04-02-2020 Hej. Pracująć nad pewnym projektem natknąłem na taki oto problem. W funkcji setup chciałbym aby pewien kod wykonywał się w pętli przez określoną ilość sekund. Do tego celu posłużyła mi pętla for oraz odczyt aktualnego czasu za pomocą komendy millis() Niestety, ale za każdym razem kiedy pętla dochodzi do końca, ESP resetuje się: Kod: void setup() { A oto odczyt z portu szeregowego: Kod: 2397 RE: Wykonanie pętli for resetuje ESP - elvis - 05-02-2020 Jak łatwo się domyślić po komunikacie "Soft WDT reset" zadziałał watchdog. Poszukaj w google o tym jak działa i do czego służy watchdog na esp8266, jeden z pierwszych linków: https://www.sigmdel.ca/michel/program/esp8266/arduino/watchdogs_en.html RE: Wykonanie pętli for resetuje ESP - BorokaMan - 06-02-2020 Dzięki bardzo za wskazówkę. Jest tylko jedna informacja której nie udało mi się znaleźć, a która pomogłaby mi lepiej zrozumieć zagadnienie. W jakich sytuacjach ESP czy Arduino resetuje WDT automatycznie, a kiedy muszę to zrobić ręcznie? RE: Wykonanie pętli for resetuje ESP - Jarewa0606 - 06-02-2020 WDT ci wrzuca bo zablokowałeś WIFI nie możesz blokować długo ESP Ewentualnie przy blokadzie musisz dorzucić delay by zajmował się Wifi. for (int i = millis() - a; i <= 2400; i = millis() - a) { Serial.println(i); Delay(0); } |