[esp32]

[ESP32] ESP-IDF FreeRTOS

Gernii K 2024. 1. 23. 18:07

ESP-IDF에서의 FreeRTOS는 기본 바닐라 freeRTOS와는 다르게 듀얼코어를 중점적으로 지원한다.

지원되는 기능이 사용은 가능하나 비공개인 것들이 많다.

 

RTOS는 기본적으로 여러 Task에 대해서 priority에 맞춰 time slice단위로 running시키는 것

(나중에 확실하게 머릿속에서 정리되면 수정하겠다)

 

내가 사용하고있는 esp보드에서는 cpu0, cpu1 두개가 돌아간다.

 

주의해야 할 점은, idle task가 기저에 계속 돌고있는데 app_main에서 while이라도 돌면 wdt error로 발광을 하기때문에 

while이 돌 일이 있으면 delay를 10tick씩이라도 주도록 하자.

 

아, 또한 esp-idf freeRTOS에서는 main이 void app_main(void) 이고

사용자가 따로 스케줄러를 시작하지 않아도 자동으로 시작시켜준다.

(로그 참고)