Микроконтроллер ESP32 со встроенными возможностями беспроводной связи по Wi-Fi и Bluetooth представляет собой довольно мощный инструмент для реализации концепции Интернета вещей. При этом немаловажным моментом является наличие двух высокопроизводительных ядер в одном корпусе.

Впрочем, их использование не слишком прозрачно и гибко. Конфигурация по умолчанию назначает первое ядро (core_0) на выполнение задач радиочастотного модуля и протоколов беспроводной связи, а код, скомпилированный, например, в Arduino IDE, назначается второму ядру (core_1). Операционная система FreeRTOS может управлять всем процессом, поэтому программисту не нужно напоминать, какое ядро что делает. Тем не менее, в некоторых практических целях или чисто из любопытства хочется по управлять обоими ядрами, и в этом материале будет показано, как это сделать.