#1 Програмування Arduino » VS Code для 2 платформ одночасно » 2021-11-16 13:30:51

carmen987
відповідей: 0

Є скетч який працює на Arduino Mega2560 NodeMcu ESP8266
Використовую VS Code.
Код скетча однаковий за винятком бібліотеки доступу до мережі.
Чи можливо в VS Code одночасно писати для двох платформ.
В platformio.ini прописав

[env:megaatmega2560]
platform = atmelavr
board = megaatmega2560
framework = arduino

[env:esp12e]
platform = espressif8266
board = esp12e
framework = arduino
monitor_speed = 115200

В скетчі пробував писати:

#ifdef __AVR__
   #include <SPI.h>
   #include <Ethernet.h>
#else
   #include <ESP8266WiFi.h>
#endif

Коли збираю счетч під платформу Mega2560 все добре помилок немає, але коли під ESP8266 помилки в бібліотеці Ethernet.h (хоча вона не повинна підключатися).

Пробував і так

#if defined(__AVR_ATmega2560__)
   #include <Ethernet.h>
#else
   #include <ESP8266WiFi.h>
#endif

Візуально VS Code в коді показує вірно яка бібліотека береться до увгаги. Але при компіляції під ESP8266 всерівно помилка в бібліотеці Ethernet.h (чому підключає цю бібліотеку?)

Як писати скетч для двох різних платформ.

Підвал форуму