Галерея проектов
Любой проект можно открыть, запустить и сделать своей копией. У каждого примера есть разбор: что на схеме, какие библиотеки нужны и что делает код.
ESP32
FreeRTOS: мьютекс
Две задачи пишут в один Serial. Без мьютекса строки перемешиваются посреди слова.
ESP32
FreeRTOS: сигнал из прерывания
Обработчик должен быть коротким. Он лишь отдаёт семафор, а работу делает задача.
ESP32
FreeRTOS: две задачи
Каждая задача со своим циклом и своей задержкой. loop() при этом остаётся третьей задачей.
ESP32
FreeRTOS: задачи по ядрам
У ESP32 два ядра. xTaskCreatePinnedToCore прибивает задачу к одному из них — и это видно по xPortGetCoreID().
ESP32
FreeRTOS: запас стека задачи
Переполнение стека задачи — частая и трудноуловимая авария. Запас лучше померить заранее.
ESP32
FreeRTOS: очередь между задачами
Правильный способ передать данные из задачи в задачу. Общая переменная без защиты рано или поздно подведёт.