Bonjour, y a-t-il des utilisateurs de cette fonction Aceroutine?
Si oui, comment la mettre en œuvre?
Comment fonctionne t'elle? ...
Ce que j'imagine:
Avoir une loop sur la fonction temps avec affichage (date, heure/mn/sec),
et EN PARALLELE,
-Avoir une ou des loops sur différentes actions (leds et/ou relais , etc) ( j'ai compris la void loop qui renvoie vers différents sous-programme)
Second point, à traiter après coup,
-A certaines heures, je souhaite avoir une action sur une des action/loop précédente, par exemple les relais.
Pour mémoire, je suis encore balbutiant sur Arduino/Elegoo.
Matériels utilisés: Elegoo Mega 2560R3, Module LCD1602, ...
Merci.
Oui, parce qu'il n'est peut-être pas indispensable d'être un utilisateur de la fonction mystère pour répondre à la question et ce ne serait pas la première fois que cela arriverait.
Peut être a-t-il jugé que dans son cas, cela est indispensable
Ces personnes peuvent aussi alors surement demandait gentiment si il peut préciser sa question.
Ou voir si vraiment ils sont très sympathique et motivé si cela correspond bien à la première ligne renvoyer par google lorsque on lui spécifie cette fameuse fonction et qui arrive sur le même nom de domaine que ce forum.
C'est d'ailleurs ce que j'ai fait, bien que je ne me qualifierais pas de gentil et sympathique et lorsque j'ai vu que ce n'est pas une fonction mais une librairie sur le multitâche, j'ai laissé un connaisseur essayer de répondre, sans demandé plus de précision
L'exemple HelloScheduler montre bien le principe de fonctionnement.
Dans loop() il n'y a rien à part CoroutineScheduler::loop();.
Les différentes tâches sont définies dans des coroutines, le scheduler leur donne la main périodiquement.
Il n'est pas proprement interdit d'avoir du code qui tourne en tâche de fond dans loop() mais il faut faire attention à ce que cette tâche de fond ne ralentisse pas trop le temps d'exécution de la boucle sinon les coroutines risquent d'être ralenties.
Il ne semble pas y avoir de mécanisme de communication entre les coroutines mais tu peux le faire au travers de drapaux et de variables dédiées. Il faudra sans doute les déclarer volatile sinon l'optimisation du code risque de te jouer des tours.
@pileroy
La moindre des choses quand on pose une question est de la commenter correctement et non pas de faire comme si c’etait une evidence que tout le monde connait tout.
Le forum ne fonctionne pas a sens unique et certains ici qui ne connaissent pas cette bibliothèque, merci fdufnews pour la correction, peuvent être intéressés de connaître son existance.
Bjr, je comprends vos interrogations, qui tende un peu vers une forme d'agacement.
En même temps, quand on fait une recherche sur
"Arduino, plusieurs loop en même temps" on trouve des propositions ... de type coroutine, Aceroutine... ???
Avec une recherche sur "coroutine arduino" je viens de tomber sur une page "aceroutine..."
Après, tout cela est un peu compliqué pour moi et c'est souvent en anglais!
Personnellement sur ce coup là, je vous trouve un peu de mauvaise fois, sachant que même si il avait mis que c'était pas une fonction mais une librairie, les forumeurs auraient du faire une recherche google!
Surtout qu'il donne au final pas mal d'information comme quoi il s'agit du multitâche.
D'ailleurs comme je l'évoquais, quand google m'a renvoyer sur la librairie, je me suis dit qu'effectivement, il valait mieux laisser un utilisateur de cette librairie y répondre.
Je tente de comprendre le contenu de ce lien GitHub.
C'est trop compliqué pour moi. Je vais tenter des contournements par des redondances dans mon code de mes différents sous-programmes.
Merci pour vos participations.
Finalement, je pense que certains ont découvert quelque chose...
Je croyais que tu passais ton chemin puisque tu n'avais rien à dire sur le sujet....
Parce que là tu ne fais pas vraiment avancer ce fil de discussion.
C'est le nom "aceroutine" qui fait l'objet de ma "râlerie".
C'est si dur que ça que de mettre un lien cliquable vers la bibliothèque dès le début de la question ?
En plus c'est demandé dans le message d'accueil qu'apparemment pas grand monde ne lit.