Hirdetés
Hirdetés
-
Érkezik a Redmi Watch 5 Lite
ma Szeptember 25-én Indiában lesz az aktivitáskövető premierje, és lehet, hogy marad is azon a piacon.
-
A Lian Li Strimer kábel mókolása.
lo Értelmetlenül állok az egész előtt, hogy a Lian Li minden cuccából ad ki fekete/fehér verziót csak pont a Strimer...
-
Minden információt felhasználnak rólunk a közösségi cégek
it Az amerikai hatóságok szerint a közösségi média felhasználói nem igazán rendelkeznek irányítással azon adatok fölött, amit az AI-rendszerekkel megetetnek a nagy cégek.
-
PROHARDVER!
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
Panhard
tag
Sziasztok!
Tudtok abban segíteni, ki lehet-e kapcsolni ESP32-ben a task watchdog-ot? Vagy növelni az idejét? Van egy függvényem, ami egy webszerveren lévő php fájl válaszát várja és ez valamikor több mint 5mp, ilyenkor "Task watchdog got triggered." hibaüzenetet kapom.
Próbáltam az sdkconfig fájlban módosítani az értéket 5mp-ről magasabbra, (CONFIG_TASK_WDT_TIMEOUT_S=20) és próbáltam kikapcsolni is, (CONFIG_TASK_WDT=) de ez nem volt hatással rá. Ugyanúgy 5mp után aktiválódik.
Ha az arduino probramban beincludolom a "esp_task_wdt.h" fájlt, és használom az abban lévő függvényeket, esp_task_wdt_feed() , esp_task_wdt_delete(), azok sincsenek hatással rá. Tudtok valami megoldást? Előre is köszönöm. -
Panhard
tag
válasz Janos250 #7784 üzenetére
Megoldódott. Az volt a baja, hogy az task üresjáratban megy valamikor több mint 5mp-ig. Ez egy do/while függvény, ebből nekem max 10mp után lép ki, ha addig nem jön válasz a szervertől. Ez így jó is. Betettem egy delay(1); késleltetést, így már csinál valamit, nem is indul be a task wdt.
-
Panhard
tag
válasz Janos250 #7786 üzenetére
Csak akkor azt nem értem, hogy miért fogja le a másik taskot? Összesen két task van beállítva, az egyik a core0-án, a másik a core1-en. Elvileg teljesen függetlennek kellene lenniük egymástól. Ha például az egyiket leállítom egy while(1);-el, a másiknak akkor is futnia kellene. Illetve fut is, de az miért baj a kutyának?
-
Panhard
tag
válasz Panhard #7787 üzenetére
Szerintem nem is az volt a baja a kutyának, hogy nem tudott a függvénytől futni a második task, hanem csak annyi, hogy nem csinál semmit 5mp-ig az első. Így néz ki a programban a task kezelés:
xTaskCreatePinnedToCore(loop1, "loop1", 4096, NULL, 1, NULL, 1);
xTaskCreatePinnedToCore(loop2, "loop2", 4096, NULL, 1, NULL, 0);
}
//***********************************************************************************************************
void loop() {
}
//***********************************************************************************************************
void loop1(void *pvParameters) {
while (1) {
gps();
}
}
//***********************************************************************************************************
void loop2(void *pvParameters) {
while (1) {
temp_millis = millis();
if(temp_millis>temp_millis_1 ) { temp_millis_1 = temp_millis+2000; meghiv(); }
}
}
//***********************************************************************************************************Ami fontos, hogy a gps függvénynek minden ciklusban hívódnia kell a loop1-ben, az nem állhat meg, mert akkor nem tudja beolvasni a gps vevőt a serial porton.
Minden más programrész a loop2-ben van, aminél nem számít, ha le is lassul a ciklusidő pár másodpercre. Ott amúgy is 2másodpercenként hívom meg a meghív függvényt.[ Szerkesztve ]
-
Panhard
tag
válasz Janos250 #7790 üzenetére
Köszi a részletes magyarázatot. Azt próbáltam még, hogy ha 1-nél magasabb prioritáson van a task, akkor el sem indul. Nem tudom miért. De mindegy, így most jól működik. Kicsit átvariáltam úgy, hogy az időkritikus feladatokat az alap loop-ba tettem, ami core1-en fut, minden mást az általam létrehozott loop1-be, ami core0.
Új hozzászólás Aktív témák
Hirdetés
- AKCIÓ - Ducky Billentyűzet Bazár! Ducky ONE 2 SF RGB, Ducky ONE 2 MINI RGB...
- ÚJ aktiválatalan Apple iPhone 15 Plus 128GB Black ! 1ÉV APPLE GARANCiA
- ÚJ HP 15-fc0555nh - 15,6"FHD - Ryzen 5-7520U - 8GB - 512GB SSD - Win10 - 2év garancia - MAGYAR
- ÚJ aktiválatalan Apple iPhone 15 Pro Max 512GB Natural Titanium ! 1ÉV APPLE GARANCiA
- Iphone 14 pro max 256GB space black Vodafone függő
Állásajánlatok
Cég: Ozeki Kft
Város: Debrecen
Cég: Ozeki Kft
Város: Debrecen