Comment fait-on pour arrêter la boucle ?

vohu:

Chrysystem:
Bonjour a tous, je suis un amateur dans le domaine de la programmation par contre je maîtrise la programmation d'automates.

J'ai du mal à comprendre comment c'est possible... La logique de programmation d'un automate ou d'un arduino est totalement identique.
M'enfin, pour répondre, soit tu fais comme l'a dit Geeker soit tu utilises break combiné à un if ou un switch à l'intérieur de la boucle.

Justement non, il y'a pleins de choses que fait l'OS de l'automate

D'abords la com' avec ses cartes, puis la console, puis la supervision.
Ensuite la recopie des entrées en mémoire, la gestion des temporisation internes, parfois la gestion des fronts (pour les API qui savent faire, et si le programme les utilise (perso je les programme a la main mes fronts. Des fois je programme aussi mes tempos a la main, c'est plus pratique pour la supervision))
Ensuite l’exécution du programme de l'utilisateur.
Ensuite seulement la mise a jour des sorties physiques (via parfois un coup de com avec les cartes, mais en évitant le doublon avec ce qu'il fait en début de cycle)
Puis enfin un rebouclage.

Ajoute a cela les taches sous interruptions qui ont une gestion particulière, et la prog d'initialisation au premier cycle.

On peut utiliser un arduino pour remplacer un automate, mais il faut y rajouter un mini OS qui gère les trucs en plus dont on a besoin (on a pas forcement besoin de toutes les fonctions d'un automate).