• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Вопрос ESP32 - используются ли оба ядра процессора под Arduino IDE?

kotyara12

New member
Добрый день, уважаемые!

Вопрос собственно в заголовке - насколько полно используются ядра процессора в обычном ( setup + loop ) скетче для ArduinoIDE? Один или два?

В примерах для ESP32 есть такой пример - ...\ESP32\examples\FreeRTOS\FreeRTOS.ino. В нем рассмотрено, как можно запустить несколько задач в несколько отдельных потоков, и при этом явно задается процессор (0 или 1) и приоритет. Это все ясно-понятно (не совсем пока понятно только, как эти потоки должны между собой взаимодействовать, но думаю разобраться можно). Но возникает вопрос - а для обычного скетча как (где весь код в одной void loop())?

ЗЫ: вопрос скорее теоретический, просто интересно. Стоит ли переходить на этот самый FreeRTOS?
 

kotyara12

New member
Случайно нашел ответ на свой вопрос...

Используются оба ядра.
По умолчанию в ESP32 CORE_0 отдается под обслуживание радиоканала (WiFi) и самого контроллера, а CORE_1 - под выполнение скетча ардуино. То есть "обычные" скетчи будут выполняться всегда на CORE_1, но и влияние скетча на "служебные" обязанности ESP сведено к минимуму.
 
Сверху Снизу