Bei ineinander verschachtelten Schliefen, also wonach Du gefragt hattest, ist das abstoppen eigentlich recht einfach. Da braucht man keine lokalen Veriablen, und der Stop-Taster kann weiterhin auf Latch-Verhalten eingestellt bleiben:
Ein Problem ist auch, wenn in einer Schleife lange waits, z.B 10sec, vorkommen, so wie hier:
Dann kann man die Zeit in kleine Häppchen unterteilen, hier z.b 100*0.1 sec, und hat damit die Möglichkeit, jederzeit sofort zu stoppen:
Aber das ist nur ein Beispiel für Anfänger. Denn die weitaus besere Löung ist in diesem Fall eine Ereignisstruktur in der Schleife mit Stop-Behandlung und Timeout von 10 sec.