Question

J'ai un bouton START et STOP. Quand je frappe sur START, je lance un tas de code dans mon rappel. Il est essentiellement un « script » séquentiel qui ouvre les vannes, distribue de l'eau et se ferme alors les vannes ... il n'y a pas de boucle while () et il ne se répète pas. Je veux être en mesure d'arrêter ce processus à tout moment en utilisant la touche STOP. La plupart des réponses connexes que j'ai vu sont dans les cas où une boucle while () est utilisée. Certaines personnes ont également suggéré de vérifier périodiquement si le bouton STOP a été pressée (à l'aide d'une variable ou variable poignée).

Depuis que je n'ai pas en boucle, je ne peux pas le résoudre de cette façon. De plus, je voudrais être en mesure de sortir immédiatement, sans avoir à vérifier périodiquement (car vérifier plusieurs fois dans mon code serait laid et confus). Est-il possible de mettre fin à la fonction de rappel qui a été interrompue par la touche STOP? Sinon, est-il possible d'avoir le bouton START exécuter un fichier .m et ensuite sur le bouton STOP mettre fin à ce fichier .m?

Le pire scénario serait de vérifier une variable périodiquement.

Mise à jour: Eh bien, on dirait que le scénario du pire est ce qui est suggéré par ... Matlab http: // www .mathworks.com / support / solutions / fr / data / 1-33IK85 / index.html? product = ML & solution = 1-33IK85

Merci.

Était-ce utile?

La solution

Que ce soit une boucle ou non, vous serez obligé d'insérer « checkpoints » dans votre code où l'exécution du programme doit continuer ou arrêter. En regardant , la commande return va reprendre l'exécution à un point désiré.

Tout ce que vous pouvez choisir est la propagation 'méthode' de 'Stop Trigger' en utilisant

scroll top