Problème dans mon programme Arduino
Résolu
Utilisateur anonyme
-
baladur13 Messages postés 47849 Date d'inscription Statut Modérateur Dernière intervention -
baladur13 Messages postés 47849 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Je travaille sur un projet avec une carte Arduino qui consiste à gérer l'ouverture et la fermeture d'un portail automatique.
Mais le moteur n'exécute pas tous les ordres et je ne comprends pas ce qui fonctionne pas.
L'objectif est de faire fonctionner le moteur dans un sens, puis lorsqu'on appuie sur un premier bouton, le moteur s'arrête, temporise puis redémarre dans l'autre sens jusqu'à ce qu'on appuie sur un deuxième bouton pour que le moteur s'arrête définitivement.
Seulement, en lançant le programme, le premier bouton fonctionne, mais appuyer ensuite sur le deuxième ne fait rien.
J'ai besoin de votre aide !
Voilà le programme :

Je travaille sur un projet avec une carte Arduino qui consiste à gérer l'ouverture et la fermeture d'un portail automatique.
Mais le moteur n'exécute pas tous les ordres et je ne comprends pas ce qui fonctionne pas.
L'objectif est de faire fonctionner le moteur dans un sens, puis lorsqu'on appuie sur un premier bouton, le moteur s'arrête, temporise puis redémarre dans l'autre sens jusqu'à ce qu'on appuie sur un deuxième bouton pour que le moteur s'arrête définitivement.
Seulement, en lançant le programme, le premier bouton fonctionne, mais appuyer ensuite sur le deuxième ne fait rien.
J'ai besoin de votre aide !
Voilà le programme :

A voir également:
- Arduino for loop
- Downloader for pc - Télécharger - Téléchargement & Transfert
- Idm for mac - Télécharger - Téléchargement & Transfert
- Instagram for pc - Télécharger - Divers Communication
- Fruity loop - Télécharger - Édition & Montage
- Microsoft store download for pc - Guide
1 réponse
Salut,
Je connais pas ce langage, mais d'après ce que j'imagine, la fonction loop(), comme son nom l'indique, tourne en boucle.
Le problème je pense est que tu fais l'initialisation à chaque loop. C'est à dire que quand tu va cliquer sur le bouton 2 : le moteur s'arrete et la led s'éteignent. Mais ensuite la fonction loop() est rappelée, et en début de fonction tu démarre le moteur et allume la led. Donc je pense que ton bouton 2 fonctionne, mais tu n'as pas le temps de voir le fonctionnement car c'est directement écrasé par tes 3 lignes d'initialisation.
Je mettrais ces 3 lignes dans le setup, voir ce que ca donne.
Je connais pas ce langage, mais d'après ce que j'imagine, la fonction loop(), comme son nom l'indique, tourne en boucle.
Le problème je pense est que tu fais l'initialisation à chaque loop. C'est à dire que quand tu va cliquer sur le bouton 2 : le moteur s'arrete et la led s'éteignent. Mais ensuite la fonction loop() est rappelée, et en début de fonction tu démarre le moteur et allume la led. Donc je pense que ton bouton 2 fonctionne, mais tu n'as pas le temps de voir le fonctionnement car c'est directement écrasé par tes 3 lignes d'initialisation.
Je mettrais ces 3 lignes dans le setup, voir ce que ca donne.
A toutes fins utiles ==> https://www.commentcamarche.net/infos/25917-marquer-un-fil-de-discussion-comme-etant-resolu/