pinMode vor Setup möglich?

Sollte es einen Unterschied machen, ob ich die pinDeklaration (input_pullup) im Setup oder vor dem Setup innerhalb eines Konstruktors mache?
Tatsache ist, wenn ich die folgende zwei Zeilen in den Konstruktor schreibe(welcher vor dem setup() platziert ist), dann kann ich die Pins nicht nutzen, wenn ich die zwei Zeilen in das setup() schreibe, dann geht alles wie gewohnt.

Gerne gebe ich bei Bedarf den Gesamtcode, aber lasst mich bitte erstmal wissen, was ihr von der Sachlage anhand der gegebenen Informationen haltet.
pinMode(21, INPUT_PULLUP);
pinMode(10, OUTPUT);

ArduinoIDE: 2.3.3
Boad-Verwaltung: esp32 (von Espressif Systems) 3.0.7 (neueste)
Mikrocontroller: ESP32C3 von seeed studio

Bitte stellen Sie Ihre Frage auf Englisch im englischen Bereich des Forums. Thema in den deutschen Bereich verschoben.


Ja, es macht einen Unterschied. Sie sollten pinMode() nicht in einem Konstruktor verwenden; die Hardware wird nach dem Aufruf des Konstruktors initialisiert in main() und könnte die pinMode()-Einstellung rückgängig machen. Sie können Ihrer Klasse eine begin()-Methode hinzufügen, um den Pin-Modus einzustellen.

Ja!
Es kann sein, dass der Konstuktor aufgerufen wird, bevor die Hardware initialisiert wurde.

Was auf AVR noch geht ist auf 32Bit Kesselchen eine Falle,