ESP8266 <-- warum zeigt der Pin-Status HIGH an?

Hi,

kennst sich jemand hier mit ESP8266 aus ?

Hab da ein Problem mit den Pin-Status.

Manchmal zeigt es einen konstanten HIGH an, und manchmal einen LOW.

Wisst ihr wie sowass zustande kommen kann ?

Habe dazu auch ein Video gemacht, um es euch besser zu erklären:

Pins haben ohne Code einen undefinierten Zustand. Ausnahme sind die Pins, die mit einem Widerstand vordefiniert sind.

1 Like

okay, sollte ich dann beim setup() dann wie folgt machen:

  // erstmal die Pins auf OUTPUT, um die im nächsten
  // Schritt auf LOW setzten zu können
  pinMode(12, OUTPUT);
  pinMode(13, OUTPUT);
  pinMode(16, OUTPUT);
  pinMode(4, OUTPUT);
  
  // jetzt eben auf LOW setzten
  digitalWrite(12, LOW);
  digitalWrite(13, LOW);
  digitalWrite(16, LOW);
  digitalWrite(4, LOW);

  // und jetzt wieder als INPUT festelegen, da mein
  // eigentliches Vorhaben ja ist, Status abzulesen
  pinMode(12, INPUT);
  pinMode(13, INPUT);
  pinMode(16, INPUT);
  pinMode(4, INPUT);

Im Versuch hat das funktioniert. Oder hast du ne bessere Lösung ?

Du brauchst es ja nur bei den Pins machen, die du auch verwendest.
Aber beachte, einige Pins am ESP haben eine bestimmte Belegung die beim Start nicht geändert werden dürfen. Im Setup dann schon, so wie du es machst.

Und einen Eingangspin kannst du mit INPUT_PULLUP auf HIGH vorbelegen.

1 Like

Ja, genau. So hatte ich mir das auch gedacht. Nur die PINS die ich verwende. Danke.

Gerne, alles klar.

1 Like

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.