-Taster abfragen
-wenn nicht gedrückt, dann Led jede Sekunde invertieren, ansonsten nichts machen
Ob man das mit "if" oder mit "do - while" oder mit "switch / case" oder anderweitig umsetzt, ist für die Logik egal.
Hauptsache, der Code enthält kein "delay".
Als erstes Mal steht eine Funktion nicht in der loop, die kannst du hinschreiben wo du willst.
Und trotzdem verstehe ich dich nicht, es ist völlig unlogisch, in einer Funktion zu verweilen
bis man z.B. einen Taster drückt.
Wenn du unbedingt eine Funktion brauchst dann bau in der loop eine Abfrage ein und spring
immer wieder in die Funktion bis eben dein Taster gedrückt wird und dann nicht mehr
"There are 20K pullup resistors built into the Atmega chip that can be accessed from software. These built-in pullup resistors are accessed by setting the pinMode() as INPUT_PULLUP. This effectively inverts the behavior of the INPUT mode, where HIGH means the sensor is off, and LOW means the sensor is on. "
Aduadu:
Also, es geht mir darum, dass ich in der Funktion funktion() bleibe und erst bei betätigen des Tasters zurück in den loop() gesprungen wird!!!!!
Gerade das macht man nicht. Gewöhne es dir am besten gar nicht erst an.
Lasse die Funktion einen bool zurückgeben. Dann gebe true zurück wenn das Ereignis eingetreten ist und false wenn nicht. Dann kannst du in loop() darauf abfragen und dann etwas machen wenn true zurück kommt. Aber während es false ist kannst du noch andere Dinge erledigen!
Und Müll ist das mit INPUT und HIGH nicht unbedingt. Es gab mal Zeiten wo es kein INPUT_PULLUP gab und da wurde das genau so gemacht.