- Milyen alaplapot vegyek?
- Milyen TV-t vegyek?
- És akkor a memóriapánik után beköszöntött a HDD-pánik
- Azonnali informatikai kérdések órája
- Androidos fejegységek
- DUNE médialejátszók topicja
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Pánik a memóriapiacon
- Házimozi belépő szinten
- Gaming notebook topik
-
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
-
Janos250
őstag
válasz
Panhard
#7788
üzenetére
Igen, erről érdemes még néhány szót szólni, hátha másnak is lesz ilyen problémája.
Nem a másik core-on futó taskot fogta meg, hanem ugyanazon a core-on a többi taskot.
Ugyanis a freeRTOS futtat még pár egyéb rendszer-taskot is, amit pontosan nem tudunk mit, mert elvileg a
vTaskList() lenne hivatott kilistázni, de az Arduino alatt valamiért nem működik.
Írjuk be a következő programot:void loop() {
Serial.println("loop begin");
uint8_t i = uxTaskGetNumberOfTasks( );
Serial.print("uxTaskGetNumberOfTasks = "); Serial.println(i);
delay(60000) ;
Serial.println("loop end");
} ; // end loopA WDT nem okoz gondot, hiába a hosszú várakozás, mert a scheduler által beállított prioritások miatt futhat a többi task is.
Ezt a kiírást kapjuk:
uxTaskGetNumberOfTasks = 7Tehát a mi loop taskunkon kívül még vannak a core-on hatan, akik szintén futni akarnak.
Ezért lényeges a prioritás.Ha megnézzük a main.cpp-t :
void loopTask(void *pvParameters)
{
setup();
for(;
{
micros(); //update overflow
loop();
}
}extern "C" void app_main()
{
initArduino();
xTaskCreatePinnedToCore(loopTask, "loopTask", 8192, NULL, 1, NULL, ARDUINO_RUNNING_CORE);
}
Itt a loop prioritása 1, így igazából én sem teljesen értem, hogy miért nem futhatnak a többiek is, hiszen a loop prioritása is 1, meg Te is ugyanezt a prioritást adtad, de valahogy mégis megfogja a többit.
Tehát mégis az van, hogy ha valaki hatalomra jut, és olyan hangosan kiabál, hogy senki mást nem hagy szóhoz jutni, akkor egy idő után a WDT miatt összeomlik a rendszer. Szükséges egy delay!Még egy megjegyzés:
Ha a loopodat akarod a másik core-ra tenni, azt a mainben tudod átírni, az xTaskCreatePinnedToCore paraméterében. Én néha átteszem a core0-ra, ha a core1-en elég időkritikus taskot futtatok.
Új hozzászólás Aktív témák
- Milyen alaplapot vegyek?
- Milyen TV-t vegyek?
- Brogyi: CTEK akkumulátor töltő és másolatai
- És akkor a memóriapánik után beköszöntött a HDD-pánik
- Eredeti játékok OFF topik
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Star Wars rajongók
- Milyen légkondit a lakásba?
- Battlefield 6
- Facebook és Messenger
- További aktív témák...
- Asus RGB gamer pc Z790 i5/i7/i9 13600k 32GB DDR5 6400MHz nvidia RTX 5050 + garancia
- BESZÁMÍTÁS! Samsung S27D850T 27 75Hz PLS QHD 5ms monitor garanciával hibátlan működéssel
- BESZÁMÍTÁS! Asus VG27AQL3A 27 180Hz IPS QHD 1ms monitor garanciával hibátlan működéssel
- Lexar Ares RGB 32GB (2x16GB) DDR5 6000MHz CL28 - Élettartam garancia
- HP E2620 J9626A-48port - Managed switch
- AKCIÓ! Apple Watch SE 2024 44mm Cellular okosóra garanciával hibátlan működéssel
- BESZÁMÍTÁS! Gigabyte B360 i7 8700 16GB DDR4 512GB SSD RX 6600XT 8GB Rampage SHIVA Cooler Master 650W
- HIBÁTLAN iPhone 13 Pro Max 256GB Gold -1 ÉV GARANCIA - Kártyafüggetlen, MS3685
- Bomba ár! HP Elitebook 840 G1 - i5-4GEN I 8GB I 500GB I 14" HD I Cam I W10 I Gari!
- HP 150W töltők (19.5V 7.7A) kis kék, kerek, 4.5x3.0mm
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopszaki Kft.
Város: Budapest
{
ekkold

