Consommation arduino nano en mode delay

Bonjour,

J'ai besoin d'utiliser un Arduino nano avec un programme simple utilisant une succession de fonctions delay assez longues (quelques heures). Toutes les sorties de l'arduino seront a 0V durant tout ce temps.

Est ce que vous avez une idée sur la consommation de la carte durant l’exécution de la fonction delay. L'information m'est très utile car mon montage doit fonctionner par batteries et l’espace dont je dispose est extrêmement réduit

merci

Bonjour, Avant de continuer, tu peux ce topic. Une recherche sur le net avec pour mots clefs "consommation arduino nano" te donnera également quelques réponses.

As tu une idée des fonctions que l'on peut activer ou mettre en sommeil pour diminuer la consommation du micro-controleur ? As tu une idée des différents mode "sommeil" du micro-controleur ? -> ce n'est pas la même chose que la question précédente. Non je pense, une lecture de la datasheet me semble recommandée.

Ce n'est pas mettre une I/O en sortie à 0V qui l'a fera consommer le moins mais ce sera la mettre en entrée.

PS Si tu ne fait qu'un delais il n'y a pas besoin d'USB donc tu peux économiser sa consommation en basculant sur une carte mino-pro. PS 2 : J'espère que tu as penser à retirer les leds qui consomment plus que le micro en sommeil.

68tjs: As tu une idée des fonctions que l'on peut activer ou mettre en sommeil pour diminuer la consommation du micro-controleur ? As tu une idée des différents mode "sommeil" du micro-contrôleur ? -> ce n'est pas la même chose que la question précédente. Non je pense, une lecture de la datasheet me semble recommandée.

J'ai fais quelques recherche sur le net, mais tous nécessitent de changer le timer interne, chose que non seulement je ne peux pas faire mais en plus, si j'ai bien compris les valeurs du delay (en msecondes) ne seront plus les bonnes, donc il faudra calculer a chaque fois, or justement je vais sans doute avoir a modifier beaucoup la valeur de delay de mon programma a chaque fois.

Je n'ai pas besoin de connaitre la valeur exacte de consommation, mais juste un ordre d'idée, quqlques centaines de µA, quelque mA, quelques disaines de mA ?

La fonction delay ne modifie pas la consommation. Elle exécute du code en permanence.

Pour diminuer la consommation, il faut utiliser les modes de mise en veille et la désactivation des périphériques inutilisés par ton application.

mais en plus, si j'ai bien compris les valeurs du delay (en msecondes) ne seront plus les bonnes,

Il existe une autre fonction delay dans l'avr-lic qui n'utilise pas les timers. Cette fonction (ou macro je ne sais pas pas) a été conçue par Atmel et non pas par arduino. L'avantage d'Atmel c'est que comme ce sont les concepteurs du micro ils savent exactement ce qu'il y a dedans et ils se sont basés sur le nombre exact de cycle horloge que prennent les opérations.

voir ici : http://www.nongnu.org/avr-libc/user-manual/group__util__delay.html Il me sembe que la capacité de delais "Atmel" est plus faible que la capacité "arduino" mais avec une boucle on peut l'augmenter. Le timer 0 pourra être arrêté.

Pour avoir la liste de la librairie Atmel à partir de la page que j'ai indiqué il suffit de cliquer sur " Library Reference".

Edit : Regarde ce lien il traire des mises en sommeil et des arret de périphérique http://www.gammon.com.au/forum/?id=11497