Arduino Uno Pins - Un guide pratique complet

La carte Arduino Uno possède plus de 20 broches que vous pouvez utiliser pour de nombreuses applications différentes. Dans cet article, je vais vous donner un aperçu complet et pratique des principales broches Arduino Uno.

Si vous débutez avec Arduino, ou si vous êtes déjà développeur de logiciels et que vous souhaitez en savoir plus sur le pont entre logiciel et matériel sur une carte Arduino, alors vous êtes au bon endroit !

Dans cet article vous verrez :

  • Quelles sont les broches que vous pouvez utiliser
  • Ce que vous pouvez faire avec eux
  • Et quelques conseils sur la façon de connecter d'autres appareils à vos broches Arduino

Je vais également vous donner quelques exemples de capteurs/actionneurs que vous pouvez utiliser avec chaque fonctionnalité de broche.

Cet article se concentre sur la carte Arduino Uno, mais la plupart des explications (à l'exception des numéros de broches sur la carte de circuit imprimé) sont également valables pour toute autre carte Arduino.

>> Regardez cette vidéo comme ressource supplémentaire à cet article :

Vous apprenez à utiliser Arduino pour construire vos propres projets ?

Découvrez Arduino pour les débutants et apprenez étape par étape.

Après avoir regardé la vidéo, abonnez-vous à la chaîne Youtube Robotics Back-End pour ne pas rater les prochains tutoriels !

Table des matières

Schéma des broches Arduino Uno

Voici une description visuelle globale de toutes les broches que vous pouvez trouver sur une carte Arduino Uno.

Vous pouvez trouver cela assez difficile à comprendre au début. Alors, décomposons chaque type de broche, une par une.

Broches de terre

S'il y a une chose, et une seule chose dont vous devez vous souvenir avec la terre, c'est : connectez toujours toutes les masses de vos circuits ensemble et assurez-vous que tous les composants sont correctement reliés à la terre. Les broches de masse sont souvent représentées par GND sur les schémas.

La terre est essentielle pour que la carte Arduino puisse mesurer et régler n'importe quelle tension. En gros une tension est une différence de potentiel entre 2 points : ici vous prenez la masse et un autre point.

Ainsi, si tout dans votre circuit est connecté à la même terre, toutes les tensions peuvent être comparées et leur valeur est pertinente. Si vous n'avez pas de terrain d'entente, que signifie 3,3 V ? Est-ce supérieur à une valeur de 5V que vous avez mesurée à partir d'un autre point de votre circuit ?

C'est comme mesurer la différence de hauteur entre 2 personnes : si l'une d'elles est debout sur une caisse, alors la référence au sol n'est pas la même. Et vous ne pouvez pas obtenir une mesure valable si vous ne placez pas les 2 personnes au même niveau.

Bon, je n'entrerai pas dans les détails, mais vous voyez l'intérêt.

Broches d'alimentation Arduino

La puissance va de 2 manières :

  • Vous devez alimenter votre carte Arduino Uno depuis une source externe
  • Vous pouvez également alimenter certains composants branchés sur votre carte

Alimentation de la carte Arduino Uno

Pour alimenter la carte Arduino Uno, vous avez différentes options. La première consiste simplement à connecter votre carte Arduino à votre ordinateur à l'aide d'un câble USB – vous en obtenez généralement un lorsque vous commandez une carte Arduino.

Vous pouvez également utiliser la prise d'alimentation CC pour alimenter votre carte Arduino en 7-12V. Si vous utilisez des servomoteurs de loisir alimentés par votre Arduino, vous pouvez utiliser la prise d'alimentation CC. La puissance provenant du câble USB est plus faible. C'est génial pour la communication entre votre carte et votre ordinateur (ou d'autres cartes Arduino), mais peut ne pas être suffisant pour alimenter de vrais moteurs.

Donc, vous avez déjà 2 façons d'alimenter votre carte Arduino Uno. Maintenant, si vous regardez les broches d'alimentation sur le circuit, vous verrez une broche Vin.

Vous pouvez utiliser cette broche pour fournir 7-12V à votre carte. Très pratique lorsque vous devez utiliser une source d'alimentation externe et la connecter directement à votre carte. Et, comme vous pouvez le deviner, si vous utilisez le Vin, vous devez également utiliser la terre correctement, en la connectant à la terre de la source d'alimentation externe.

Notez que les prises d'alimentation USB et DC ont déjà la masse intégrée et qui se connecte à tout ce que vous branchez dessus. En effet, la partie métallique que l'on peut toucher autour du connecteur USB est directement reliée à la masse !

Alimentation des composants à partir des broches d'alimentation Arduino Uno

Comme vous pouvez le deviner, chaque fois que vous connectez un composant externe à votre carte Arduino Uno, vous devez d'abord le connecter à la terre.

Ensuite, vous pouvez utiliser plusieurs broches différentes pour l'allumer. Parmi eux se trouvent les broches d'alimentation 3,3V et 5V.

Notez - c'est important - que l'Arduino Uno fonctionne sous 5V . Donc, pour chaque broche de sortie que nous verrons dans la suite de cet article, assurez-vous de vous en souvenir. Si vous branchez un composant 3,3 V à une source d'alimentation 5 V, vous risquez d'endommager le composant.

Il existe 2 alternatives à cela: utilisez la source d'alimentation 3,3V de l'Arduino (pont de tension intégré), ou utilisez 5V avec un décaleur de niveau de tension. Vous pouvez facilement connecter un composant 3,3V à un composant 5V, à condition de transformer la tension entre eux, à l'aide de résistances ou directement d'un composant de décalage de niveau.

Broches numériques Arduino

Vous pouvez trouver 14 broches numériques sur une carte Arduino Uno. Ils sont facilement reconnaissables, de 0 à 13 sur le circuit imprimé.

Lecture/écriture sur des broches numériques

Vous utiliserez des broches numériques pour lire les données de certains composants (capteurs) et écrire des données sur d'autres composants (actionneurs).

Une broche numérique ne peut avoir que 2 états : LOW ou HIGH. Vous pouvez les considérer comme des broches binaires.

LOW signifie que la tension sur la broche est de 0V. HIGH signifie Vcc, qui est ici de 5V pour Arduino Uno.

Avant de pouvoir réellement utiliser une broche numérique, vous devez configurer son mode. Une broche numérique peut être en mode INPUT more ou OUTPUT. En mode INPUT, vous l'utiliserez pour lire les données. En mode OUTPUT, vous l'utiliserez pour écrire des données.

Après avoir défini un mode pour la broche – généralement dans la fonction setup() de votre programme Arduino avec pinMode() – vous pourrez lire/écrire l'état de la broche avec digitalRead()/digitalWrite().

Si vous avez réglé la broche sur le mode INPUT, vous pouvez lire son état, qui sera soit HIGH, soit LOW.

Lors de la lecture, toute tension appliquée à la broche inférieure à 0,8 V sera considérée comme FAIBLE, et toute tension supérieure à 2 V sera considérée comme ÉLEVÉE. Ainsi, j'insiste à nouveau sur le fait que vous devez connecter correctement toutes les masses de votre circuit ensemble, sinon l'Arduino Uno ne pourra pas lire une information précieuse ! Si vous n'obtenez pas de données fiables et stables, vérifiez toujours d'abord le terrain, il est très probable que le problème vienne de là.

Pour des exemples d'utilisation de broches numériques pour contrôler un composant, consultez ce didacticiel LED Arduino .

Pour savoir comment utiliser des broches numériques pour lire les données d'un capteur, consultez ce didacticiel sur le bouton-poussoir Arduino .

Et si vous souhaitez passer à un niveau plus avancé avec les broches numériques, découvrez comment accélérer digitalWrite() .

PWM

Certaines des broches numériques peuvent être utilisées pour écrire un PWM.

Un PWM (Pulse Width Modulation) est essentiellement un moyen d'obtenir une tension spécifique (ex: 4.1V) avec uniquement des états HIGH/LOW (5V/0V). Le PWM crée une impulsion fonctionnant à une fréquence donnée – 500 Hz pour Arduino Uno. Ensuite, un paramètre de cycle de service indiquera quel pourcentage de chaque impulsion est à l'état HAUT ou à l'état BAS.

Le changement fréquent des états HAUT/BAS produit une sortie de tension moyenne. Par exemple, à un cycle de service de 50 % (50 % du temps HAUT, 50 % du temps BAS), la tension de sortie serait de 2,5 V.

Bien sûr, cette explication est vraiment simplifiée, mais c'est tout ce que vous devez savoir pour démarrer avec l'Arduino PWM.

Désormais, vous ne pouvez utiliser le PWM que sur certaines broches numériques, qui ont un "~" à côté de leur numéro. Les broches Arduino Uno compatibles avec PWM sont les broches 3, 5, 6, 9, 10 et 11. Vous disposez donc de 6 broches sur lesquelles vous pouvez créer un PWM, en utilisant la fonction analogWrite().

Cela peut être très utile pour contrôler certains actionneurs qui nécessitent un réglage fin de la tension et qui ne sont pas seulement allumés ou éteints.

Si nous prenons l'exemple d'une LED, vous pouvez utiliser la fonction analogWrite() pour modifier la luminosité de la LED.

Broches d'interruption

Et… Il y a une autre fonctionnalité disponible pour les broches numériques ! Vous pouvez utiliser certaines d'entre elles comme broches d'interruption dans votre programme Arduino.

Pour Arduino Uno, le choix de ces broches est assez limité. Seules les broches numériques 2 et 3 peuvent être utilisées comme broches d'interruption.

Alors, comment ça marche ?

Lorsque vous créez un programme Arduino, vous devez savoir que votre code s'exécute ligne par ligne, sans multithreading possible.

Disons que vous connectez un bouton poussoir à une broche d'interruption (et à la terre !). Dans votre programme Arduino, vous pouvez attacher une fonction spécifique à déclencher chaque fois que vous appuyez sur le bouton. Ainsi, au lieu d'avoir à lire en permanence l'état du bouton, vous pouvez directement utiliser le comportement d'interruption pour lancer votre fonction. Considérez-le comme une notification push, tout comme sur votre téléphone. Il vous indique quand il y a du nouveau contenu, ou une action spécifique à faire. Apprenez à utiliser les interruptions Arduino dans votre code.

Cependant, cela ne signifie pas que vous avez résolu le problème du multithreading. Lorsque l'exécution du programme bascule sur votre fonction appelée par une interruption, elle arrêtera également l'exécution du programme en cours et n'y reviendra qu'une fois la fonction d'interruption terminée.

Si vous souhaitez en savoir plus sur le multitâche avec Arduino, consultez ce tutoriel complet sur ce sujet .

Broches analogiques Arduino

Vous pouvez trouver 6 broches analogiques sur une carte Arduino Uno. Vous les trouverez près des broches d'alimentation, et ils sont facilement reconnaissables, de A0 à A5.

Lire une valeur à partir d'une broche analogique

Une broche analogique est utile pour lire des valeurs qui ne peuvent pas être simplement 0 ou 1. Disons que vous avez un potentiomètre et que vous souhaitez obtenir le pourcentage de la valeur du potentiomètre. Avec une broche numérique, vous pouvez savoir quand le potentiomètre est en position minimale et maximale, mais rien d'autre. Avec les broches analogiques, vous avez toutes les valeurs intermédiaires.

Notez que la fonctionnalité analogique sur ces broches est uniquement destinée à la lecture. Habituellement, ils sont même appelés « pins d'entrée analogiques ». Vous ne pouvez pas écrire une valeur analogique à travers ces broches, ne l'oubliez pas !

Alors, comment fonctionne une broche d'entrée analogique ?

Tout d'abord, il recevra une tension d'entrée et lira cette tension. Disons que la broche lit 2.5V. Ensuite, un ADC (Analog Digital Converter) changera cette valeur analogique en quelque chose que votre programme Arduino peut comprendre - une valeur numérique.

La carte Arduino Uno a un ADC 10 bits. La résolution peut être différente si vous utilisez d'autres cartes Arduino. Alors, que signifie 10 bits ? Simplement que la résolution est de 2^10 = 1024. Ainsi, la valeur que vous obtenez lorsque vous lisez des données à partir d'une broche d'entrée analogique est comprise entre 0 et 1024.

Revenant à notre exemple 2.5V : 2.5V est 50% de 5V (Vcc). Dans votre programme Arduino, vous obtiendrez alors la valeur 512. A partir de cette valeur, vous pouvez facilement inverser le calcul et obtenir les informations sur la tension qui a été appliquée.

De plus, et cela peut être assez déroutant au début, rappelez-vous que la fonction analogWrite() pour PWM n'est disponible que pour certaines des broches numériques, et pas du tout pour les broches analogiques.

Utiliser une broche analogique comme broche numérique

Même si vous ne pouvez lire qu'à partir d'une broche analogique, vous pouvez également choisir de l'utiliser comme une "simple" broche numérique. (mais le contraire n'est pas vrai)

Si la broche peut lire n'importe quelle valeur entre 0 et 5 V, elle ne pourra lire que les valeurs inférieures à 0,8 V (LOW) et les valeurs supérieures à 2 V (HIGH).

Pour utiliser une broche analogique comme broche numérique, il vous suffit de définir le mode de la broche, comme vous le feriez pour les broches numériques dans la fonction setup() de votre programme Arduino. Ensuite, vous pouvez utiliser les fonctions digitalWrite() et digitalRead() et cela fonctionnera parfaitement.

Protocoles de communication via les broches Arduino

C'est ici que les choses commencent à devenir intéressantes. Les protocoles de communication sur les broches Arduino Uno vous permettront d'utiliser des capteurs et des actionneurs plus avancés. Vous créerez des applications plus complexes et utiles.

Il existe 3 protocoles de communication principaux que vous pouvez utiliser avec une carte Arduino Uno, via les broches du circuit : UART, I2C et SPI.

Mais… Rien n'est affiché sur le circuit !

Pas de panique, les protocoles de communication utilisent les broches existantes sur le circuit.

En fait, la plupart des broches sont configurables pour utiliser des fonctions alternatives, parfois jusqu'à 4 fonctions alternatives pour une seule broche. Mais gardons les choses simples ici.

Broches pour UART - Série

UART est le protocole le plus utilisé pour Arduino - du moins lorsque vous commencez.

Lorsque vous connectez votre carte Arduino Uno à votre ordinateur, et communiquez via la bibliothèque Serial , eh bien… Vous utilisez UART !

Vous pouvez également trouver les 2 broches requises pour UART directement sur la carte Arduino Uno, sur les broches 0 et 1 : RX et TX. R signifie « réception » et T pour « transmission ». Il s'agit d'une communication bidirectionnelle.

Notez que le Serial utilisé par USB est le même que celui utilisé avec les broches 0 et 1. Ainsi, si vous souhaitez connecter un autre appareil aux broches RX/TX de votre carte, pensez à ne pas utiliser le Serial via USB.

Dans certaines autres cartes Arduino, comme Mega, il existe plusieurs UART disponibles. Mais pour Arduino Uno, vous n'en avez qu'un.

Si toutefois, vous souhaitez utiliser plus d'UART, vous pouvez toujours le faire avec la bibliothèque SoftwareSerial . Cette bibliothèque vous permet d'utiliser n'importe quelle autre broche numérique à des fins UART. Bien qu'il y ait une grande différence ici : le « vrai » Serial utilise les fonctionnalités matérielles de la carte Arduino Uno, qui est très rapide et ne consomme pas beaucoup de puissance de calcul. Le SoftwareSerial est à l'opposé : il compense le matériel par la puissance de calcul. Donc, commencez d'abord par l'UART matériel standard, puis vous verrez si vous avez besoin de plus de ports série pour votre application (dans ce cas, je vous recommande de passer à un Arduino Mega pour obtenir de nombreux UART matériels).

Pour connecter un composant aux broches Arduino Uno et utiliser la communication série, vous aurez besoin de 4 câbles :

  • Un entre le RX du composant et le TX de l'Arduino
  • Un entre le TX du composant et le RX de l'Arduino
  • Si le composant n'est pas alimenté en externe, un câble pour l'alimenter à partir des broches d'alimentation de l'Arduino
  • Et… Un pour connecter la terre

Si vous souhaitez communiquer entre une carte Raspberry Pi et une carte Arduino via Serial, consultez ce tutoriel Raspberry Pi Arduino Serial .

Broches pour I2C

I2C est un protocole de bus, avec une architecture multi-maître/multi-esclave. Mais pour garder les choses simples - et la plupart de vos applications en auront juste besoin - parlons uniquement de la partie mono-maître/multi-esclave de l'architecture.

En gros, imaginez un bus de données où transitent toutes les données. Le chef du bus est le maître. Maintenant, vous pouvez ajouter n'importe quel nouveau composant au bus, configuré comme esclave. De plus, chaque composant a son propre ID.

L'appareil maître enverra des données et des requêtes à un appareil esclave, par communication sur le bus et en fournissant l'ID de l'esclave. Si le maître a besoin d'une réponse, l'esclave renverra la réponse au bus. Une fois que le maître a reçu une réponse, il peut envoyer la prochaine instruction/demande.

Habituellement, vous utiliserez votre carte Arduino Uno comme maître et vous connecterez un ou plusieurs composants (généralement des capteurs) au bus I2C, avec chacun un ID différent. Côté logiciel, vous utiliserez la bibliothèque open source Arduino Wire .

Mais, à quelles broches Arduino Uno devez-vous connecter tous ces composants ?

Pour I2C, vous ne pouvez voir aucune indication directement sur le circuit imprimé.

Vous aurez besoin de 4 câbles pour utiliser un bus I2C :

  • Un pour connecter la broche SCL (horloge)
  • Un autre pour la broche SDA (données)
  • Un pour mettre sous tension les composants sur le bus
  • Et un pour faire le terrain d'entente

Quelques exemples de composants compatibles I2C :

  • Capteur de température MPL3115A2
  • Gyroscope MPU6050 + capteur accéléromètre
  • Capteur de couleur TCS34725

Broches pour SPI

SPI est un autre protocole basé sur une architecture maître-esclave.

Vous pouvez l'utiliser pour connecter votre carte Arduino à plusieurs appareils. A noter que la vitesse de communication est plus rapide que pour I2C et UART, mais elle n'est pas adaptée à la communication mi-longue distance (plus de quelques centimètres pour le câble). Comme pour les autres protocoles de communication, vous pouvez directement utiliser la bibliothèque open source SPI sur vos programmes Arduino.

Lorsque vous utilisez un périphérique SPI et que vous souhaitez le connecter à certaines broches de votre carte Arduino, voici les broches que vous devez utiliser :

Le système de câble pour connecter des appareils avec des broches SPI est un peu plus complexe. Vous avez besoin de 6 câbles minimum :

  • Broche SCK (horloge)
  • Broche MISO (Master In, Slave Out)
  • Broche MOSI (Master Out, Slave In)
  • Un pour chaque CS/SS (Chip Select/Slave Select). Pour chaque esclave supplémentaire, vous devrez ajouter une connexion supplémentaire à une broche Arduino.
  • Un pour alimenter les composants
  • Et un pour le terrain d'entente

Quelques exemples d'appareils compatibles SPI :

  • Capteur de position magnétique AS5047D
  • Capteur thermocouple-numérique MAX31855



Créé avec HelpNDoc Personal Edition: Générateur complet de livres électroniques Kindle