Also zu der Debatte um delay() gibt es sicherlich einige Meinungen, und viel zu lernen. Ich habe einige Hobby Programmierer in meinem Bekanntenkreis, und ja, einer sagte mir auch das delay() der Grund für den Absturz meines Programmes sei. Zu diesem Zeitpunkt hatte ich nur ein delay() im Programm, und das im setup() Teil, welcher ja nur ein mal durchlaufen wird...
Nachdem ich dieses delay() raus genommen habe, hat das Programm nicht mehr funktioniert. Rein logisch hätte der Verbindungsaufbau und das drucken des Punktes ja auch ohne klappen müssen. Hat es aber nicht. Delays sind also anscheinend ab und an notwendig.Code:while (WiFi.status() != WL_CONNECTED) // Schleife läuft so lange, bis eine Verbindung zum W-LAN aufgebaut ist. { Serial.print("."); digitalWrite(led_WIFI_rot, HIGH); //Zeigt an das keine Netzwerkverbindung besteht delay(500); }
Ich hatte es bislang so gehandhabt, dass ich ein delay() rein genommen habe wenn ich Angst hatte das die Hardware nicht hinterher kommt. Der ESP ist unterm Strich auch ein Stück Hardware. Mir fehlt es noch an Erfahrung zu sagen wie schnell die einzelnen Bestandteile des Chips sind. Pauschal zu sagen das sich Chips nicht totrechnen können finde ich gewagt. In meiner einfachen Welt braucht jede Rechenoperation Energie. Dieser Energieverbrauch schlägt sich unter anderem in Wärme nieder. Und da wären wir dann beim Überhitzungsproblem. Auch denke ich wie angedeutet, das nicht alle Teile des ESP gleich schnell sind, was zu Problemen führen kann.
Wie erwähnt bin ich Anfänger, und hoffe das ich hier noch viel lerne. Ich hoffe das es niemanden stört das ich es mir trotzdem leiste Aussagen kritisch zu hinterfragen.
Gruß,
Philippp
Lesezeichen