Wie man ESP32-Fehler repariert: 'portTICK_PERIOD_MS' was not declared in this scope

Problem:

Beim Versuch, Ihre ESP-IDF-Firmware zu kompilieren (mit oder ohne PlatformIO), sehen Sie eine Fehlermeldung wie

espidf_porttick_error.txt
src/main.cpp:13:27: error: 'portTICK_PERIOD_MS' was not declared in this scope
    13 |         vTaskDelay(1000 / portTICK_PERIOD_MS);

Lösung

Binden Sie FreeRTOS ein, indem Sie die folgenden Zeilen oben in der Datei hinzufügen, in der der Fehler aufgetreten ist (src/main.cpp in diesem Beispiel):

freertos_includes.cpp
#include <freertos/FreeRTOS.h>
#include <freertos/task.h>


Check out similar posts by category: ESP8266/ESP32, FreeRTOS, PlatformIO