Combien de courant puis-je utiliser des broches de l'Arduino?

55

Quelle est la quantité maximale de courant que je peux tirer de chacune des broches de l'Arduino sans déclencher aucun des fusibles internes? Y a-t-il une limite par broche ainsi qu'une limite globale pour l'ensemble du conseil?

berry120
la source

Réponses:

91

C'est un peu complexe. Fondamentalement, il existe un certain nombre de facteurs limitants:

Les lignes d'E / S du microcontrôleur (c.-à-d. Les broches analogiques et numériques) ont à la fois une limite de courant cumulée (par exemple, totale) et une limite par broche:

entrez la description de l'image ici
De la fiche technique ATmega328P .

Cependant, selon la définition que vous donnez aux "épingles" Arduino, ce n’est pas tout.

La broche 5V de l'arduino n'est pas connectée via le microcontrôleur . En tant que tel, il peut générer beaucoup plus d’énergie. Lorsque vous alimentez votre arduino à partir de l’USB, l’interface USB limite votre consommation totale à 500 mA. Ceci est partagé avec les périphériques de la carte arduino, donc la puissance disponible sera légèrement inférieure.
Lorsque vous utilisez une alimentation externe, via le connecteur d'alimentation cylindrique, vous êtes limité par le régulateur 5V local, qui est conçu pour un maximum de 1 Ampère . Cependant, cela est également limité thermiquement , ce qui signifie que lorsque vous tirez du courant, le régulateur chauffera. Quand il surchauffe, il s'éteindra temporairement.

La sortie régulée à 3,3 V peut fournir 150 mA max, limite du régulateur à 3,3 V.


En résumé

  • Le maximum absolu pour une seule broche IO est de 40 mA ( c'est le maximum . Vous ne devez jamais extraire une pleine 40 mA d'une broche. En gros, c'est le seuil auquel Atmel ne peut plus garantir que la puce ne sera pas endommagée. Vous devez toujours vous assurer que vous êtes bien en dessous de cette limite de courant. )
  • Le courant total de toutes les broches IO ensemble est de 200 mA max.
  • La broche de sortie 5V convient pour ~ 400 mA sur USB, ~ 900 mA avec un adaptateur secteur externe
    • Le 900 mA est pour un adaptateur qui fournit ~ 7V. À mesure que la tension de l'adaptateur augmente, la quantité de chaleur que le régulateur doit traiter augmente également, de sorte que le courant maximal diminue lorsque la tension augmente. Ceci est appelé limitation thermique
  • La sortie 3,3V est capable de fournir 150 mA .
    • Remarque - Toute alimentation tirée du rail 3,3 V doit passer par le rail 5V . Par conséquent, si vous avez un appareil 100 mA sur la sortie 3.3V, vous devez également le compter par rapport au courant total de 5V.

Remarque: cela ne s'applique pas à l'Arduino Due et il existe probablement des différences pour l'Arduino Mega. C'est généralement le cas pour tout Arduino basé sur le microcontrôleur ATmega328.

Connor Wolf
la source
2
Beau résumé! N'oubliez pas que même si le courant maximal sur une broche peut être évalué à 40 mA, c'est le maximum absolu. Et comme le dit la fiche technique, fonctionner au maximum absolu peut être dommageable. Il est généralement recommandé de limiter à <35mA.
Baldengineer
Le Due dispose d'une pompe de charge pour fournir la tension centrale qui n'est pas exposée directement sous forme de broche, mais sur laquelle elle pourrait être soudée.
naven87
6
Il y a en réalité TROIS facteurs limitants, les deux énumérés dans la réponse ci-dessus, plus le fait que la fiche technique indique que la somme de tous les courants provenant des ports C0-C5, D0-D4, ADC7 et RESET ne doit pas dépasser 150 mA. De même, le courant total généré pour les ports B0-B5, D5-D7, ADC6, XTAL1, XTAL2 ne doit pas dépasser 150 mA. En ce qui concerne l'évier actuel, la somme des ports C0-C5, ADC7, ADC6 ne doit pas dépasser 100 mA; la somme des ports B0-B5, D5-D7, XTAL1, XTAL2 ne doit pas dépasser 100 mA; et la somme des ports D0-D4, RESET ne doit pas dépasser 100 mA. Tout cela est indiqué dans la fiche technique.
Pour la personne qui a suggéré dans un montage que le rail 3.3V venait du FT232, cela ne se trouvait dans aucune des versions du tableau que j'ai consultées.
Connor Wolf
8

Les valeurs de courant maximales sont répertoriées ici pour l'Uno, Duemilanove:

Courant CC par broche d'E / S: 40,0 mA

Courant CC par VCC et broches GND: 200,0 mA

Limite globale du courant continu pour toutes les broches IO assemblées: 200 mA

Notez que s'il y a plus d'une broche VCC / Vin / GND, l'Arduino peut prendre plus de courant. (Chaque broche correspond à une broche sur le ATMega328)

Celles-ci semblent être plus ou moins standard pour la plupart des Arduinos, car ces limitations actuelles concernent le microcontrôleur.

Manishearth
la source
8

Quelle est la quantité maximale de courant que je peux tirer de chacune des broches de l'Arduino sans déclencher aucun des fusibles internes ?

Il n'y a qu'un seul fusible sur les cartes Arduino. Il existe un polyfuse réinitialisable sur le port USB qui limite le courant à partir de 500 mA . Ce fusible n’est efficace que lorsqu’il est alimenté par USB et que lorsque la consommation totale sur le rail 5V est supérieure à 500 mA. (Notez que ce type de fusible ne «ferme pas simplement».)

Si vous tirez trop de courant (40 mA ou plus) d'une broche d'E / S, la broche sera endommagée. Il n'y a pas de fusibles sur les broches d'E / S.

ingénieur
la source
1
les cartes Nano et Micro ont-elles également ce polyfuse? Ici, on dit que le Nano n’a pas de polyfuse (et donc pas de limiteur de courant sur la broche 5V)
eadmaster
2

Selon le schéma v2.3, le régulateur Arduino Nano 3.3v est le FTDI usb to serial ic. Cela a un courant nominal maximum de 50mA.

Passant
la source
2

Si vous examinez les schémas du Nano, vous constaterez que la broche de 3,3 V est fournie par la puce FT232RL. Selon sa fiche technique, cette broche peut fournir un maximum de 50 mA.

Pour exécuter votre module, vous devrez fournir une alimentation externe de 3,3V. Peut-être fournie par un régulateur LDO 3.3V alimenté par la broche 5V alimentée soit par le régulateur USB, soit par le régulateur 5V, un UA78M05 , tous deux d’une puissance maximale de 500mA (moins le courant requis par le Nano)

Majenko
la source
Repenser cela: je crois que je pourrais simplement utiliser la broche 5V avec un diviseur de tension (2 résistances) pour obtenir le pic ~ 250mA dont j'ai besoin à 3,3V.
Rufo
4
Vous repensez mal. Les diviseurs de tension ne peuvent pas fournir de grands courants. Ils sont pour des courants très infimes (tensions de référence) uniquement.
Majenko
Je ne le savais pas - vous m'avez économisé beaucoup de temps et d'aggravation. Merci.
Rufo
1
Pour ceux qui voient cette réponse particulière à l’avenir: c’était une réponse à une autre question spécifiquement liée à la broche 3v3 de l’Arduino Nano. Un administrateur a décidé de fusionner cette question ici (convertissant ainsi une excellente réponse à la question initiale en une réponse incomplète à la question).
Rufo