Guten Tag,
hab da ein kleines Problemchen.
Ich betreibe in Spanien 3 ESP.
Wenn ich zu Hause in DE bin, hab ich immer wieder was am Code zu ändern. Dazu habe ich hier meine Test ESP.
Wenn ich den Code testen will, schalte ich den entsprechenden ESP in Spanien über den dortigen Router remote ab.
Etwas nervig ist es, dass ich jedesmal im Code die router daten ändern muss, sowie z.B die print ausgabe am seriellen monitor ein, bzw ausschalten möchte.
Folgende Code Zeilen müsste ich deaktivieren bzw aktivieren können.
Gleich am Code Anfang #define BLYNK_PRINT Serial
dann die Router IP Config umschalten zwischen ES oder DE
dann noch
Serial.begin(115000);
Hallo agmue,
vielen Dank für den Link, ganz verstanden hab ich das aber noch nicht.
Würde dies funktionieren?
#define ES //ES / DE
#ifdef DE
#define BLYNK_PRINT Serial /* Comment this out to disable prints and save space */
#endif
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#include <PubSubClient.h>
#include <WidgetRTC.h>
WidgetRTC rtc;
#include <OneWire.h>
#define ONE_WIRE_BUS 2
#include <DallasTemperature.h>
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
#ifdef ES
Daten für spanischen Router
#endif
#ifdef DE
Daten für deutschen Router
#endif
Das am Ende geht. Die Debug Serial Ausgaben hast du nicht verstanden
#define ist eine direkte Text Ersetzung. Wenn man also nichts angibt wird der Text durch "nichts" ersetzt und der Code wird nicht ausgeführt
Die drei Punkte und VA_ARGS erlauben dass man beliebig viele Parameter übergeben kann. Also z.B. auch print(4.2, 3). Das Stichwort hier ist "variadisches Makro".