pinMode nach dem Kompilieren erst sätzen

Hallo miteinander,

darf ich und kann ich einen pinMode nach dem Kompeliren erst sätzen? oder muss mir das schon beim Kompeliren bekannt sein welcher Digitale PIN ein ausgang oder eingang ist?

ich habe volgenden Code:

  int schritte = sizeof(hardware) / sizeof(hardware[0]);
  for (int i=0;i<schritte;i++)
   {
    pinMode(hardware[i].pin,OUTPUT);                             // Pin auf OUTPUT setzen
    hardware[i].vorlaufzeit*=1000;                               // Millisekunden zu Mikrosekunden
    hardware[i].dauer*=1000;                                     // Millisekunden zu Mikrosekunden
    hardware[i].dauer+=hardware[i].vorlaufzeit; 

    if (hardware[i].dauer>gesamtDauer)                           // Wenn vorlaufzeit + dauer > gesamtDauer
      { gesamtDauer=hardware[i].dauer;}                          // Dann Speichere vorlaufzeit + dauer in gesamtDauer
   }

denn ich gerne erst nach dem Compeliren duchlaufen lassen würde.
Leier habe ich damit probleme da meine Hadware dann nicht geht :frowning:
meine Frage ist jetzt kann es sein das ich nur im

void setup() 
 { ...   }

disen Code aufrufen kann und sollte? oder mache ich andere Fehler? vileciht?

Das kann man auch zur Laufzeit ändern. Du kannst während der Laufzeit beliebig Pins zwischen Eingang, Ausgang und Tristate hin-und-her schalten. Rein von der Software her zumindest. Ob das die Hardware mag ist was anderes.

OK,
das verwundert mich jetzt, denn ich versuche gerade das vorherige gelernte (Seriele Schnitstelle Arrey erweitern ( anhängen ...) in mein Programm einzubauen, und wenn ich denn teil in das Laufende Programm nehme bekomme ich keine Hadware Reagzion mehr :frowning:

ich mache das immer Stückchen weise und Teste dann das ich wenn cih einen Fehler habe was sehr Warscheinlich bei mir immer ist Ihn gleich Lokalisiren kann :wink:

dann werde ich noch etwas Probiren müssne.

OK, warum auch immer jetzt hat es geklappt :slight_smile:

ich glaube nur das ich mit der Abfrage bei der Seriellen Schnittstelle bei meinem Methoden etwas Durcheinander komme, und das Prog auch :frowning: dafür mache ich einen Extra Thema aber das gehört hier nicht rein.

Damit die serielle Schnittstelle funktioniert darfst Du die Pins 0 und 1 (beim Arduino UNO) nicht selbst setzen.
Grüße Uwe