ich bin soon hobby Bastler und arbeite an einer kleinen Steurung für ein UV - Einheit .
Der Sketch soll über drei Knöpfe einen Steppermotor antreiben oder eben nicht. Mein Problem steckt im externen VOID START der wird zwar ausgeführt aber die While Schleife läuft ewig und ich verstehe seid 2 Stunden nicht warum.
Setze Deinen Code bitte in Codetags (</>-Button oben links im Forumseditor oder [code] davor und [/code] dahinter oder gehe in der IDE auf Bearbeiten - Für Forum kopieren und füge es hier ein).
Dann ist er auch auf mobilen Geräten besser lesbar.
Das kannst Du auch noch nachträglich ändern.
Roedel:
Mein Problem steckt im externen VOID START der wird zwar ausgeführt aber die While Schleife läuft ewig und ich verstehe seid 2 Stunden nicht warum.
Ich kann die Schleife auch stoppen mit Taster aber Sie läuft nicht ab.
Nö.
Das ist auch richtig.
Mit jedem Aufruf machst Du:
starttime = millis();
Damit bekommst nie ein Ende...
Und was ist das hier:
while (millis <= (starttime + timer)){
Das geht nicht.
Schalte bitte die Kompilermeldungen ein.
DATEI-VOREINSTELLUNGEN-Ausführliche Ausgabe während [x] Kompilierung
Und unter Kompilerwarnungen: ALLE
Und dann schau Dir mal in der IDE unter Beispiele - Digital das blinkwithoutdelay an.
Du läufst in die Überlauf-Falle
Das mit den Codetags war schon - dann schaun wa weita
o ja, einen Funktionsaufruf muß man immer so schreiben: millis().
Eine Funkton kann Werte mitbekommen (Werte in der Klammer) und einen Rückgabewert haben.
Grüße Uwe
Der Dieter kann mir sicherlich auch helfen mit der onebutton Libary. ich habe Sie soweit eingebunden funst auch alles.
Ich habe einen meiner 3 Button in einer While Schleife drin als Stop. Das funst prima. Ich würde aber gern nach dem While
wissen ob der Button in der While Schleife gedrückt wurde. Ich hab das auf github nicht verstanden den da steht.
You can specify a logic level when calling tick(bool), which will skip reading the pin and use that level instead.