Wie man mit dem Präprozessor herausfindet, ob das Arduino-Framework verwendet wird (PlatformIO)

English Deutsch

Sie können Wie man alle Präprozessor-Flags in PlatformIO ausgibt verwenden, um Präprozessor-Flags auszugeben. Beachten Sie, dass diese die Flags einschließen, die in #includes wie Arduino.h #defined sind. Sie können jedoch alles aus main.cpp entfernen, sodass nur die von der Build-Umgebung definierten Flags sichtbar sind.

Die Arduino-bezogenen Flags sind

arduino_preprocessor_check.txt
#define ARDUINO_VARIANT "esp32"
#define ARDUINO_ARCH_ESP32 1
#define ARDUINO_PARTITION_default 1
#define ARDUINO 10812
#define ARDUINO_ESP32_DEV 1
#define ARDUINO_BOARD "Espressif ESP32 Dev Module"

Wenn Sie also eine plattformunabhängige Überprüfung auf Arduino durchführen möchten, verwenden Sie

arduino_preprocessor_check.cpp
#ifdef ARDUINO
  // Arduino code goes here
#else
  // Non-Arduino code goes here
#else

Check out similar posts by category: Arduino