worin besteht der Unterschied zwischen „if“ und „while“ in meinem Script (siehe unten).
Was für Unterschiede gibt es bzw. was können diese verursachen?
Kann man überhaupt "if" anstelle "while" dort einsetzen?
Hier mal mein einfaches Sketch:
Mehr ist es einfach nicht.
Ich habe das Gefühl, wenn mein Motor (230V AC) ein bestimmten Peak erzeugt
(Snubber und alles was man sich zu EMV Entstörung vorstellen kann ist schon verbaut, BITTE nichts mehr in die Richtung vorschlagen),
dass er irgendwo hängen bleibt und dann muss ich den RESET drücken.
das ist keine Analyse.
Bau dir Serial print Ausgaben in deine If / else Zweige und while schleifen ein dann siehst du was dein Code wirklich macht. Dann sagst du uns wo er genau verbleibt.
dann bring mal daher:
einen Schaltplan
einen Link auf deine Komponeten
Echtbilder vom Aufbau aus denen wir den Aufbau erkennen. Jede einzelne Komponente, jedes Kabel muss erkennbar sein.
Ich habe I²C schon mal zum Blockieren gebracht und I²C ist nur für ein paar cm Leitungslänge konzipiert. Eine Schleife mit while kann ein Programm blockieren. Meine Variante mit ìf hat zumindest theoretisch bessere Chancen.
Bei 230V AC sind spezielle Vorkehrungen zu treffen.
Da du aber offensichtlich unsere Hilfe in diese Richtung ablehnst, macht eine Hilfe hier wenig Sinn. Warum meinst du, dass unsere Infos dir nicht helfen werden ?