Qu'est-ce qu'un micro-contrôleur ?

DéfinitionLe cœur de l'Arduino : le microcontrôleur

Le microcontrôleur est le composant principal d'une carte Arduino. Il intègre :

  • de la mémoire morte ;

  • de la mémoire vive : 32 ko ;

  • un processeur cadencé à 16 MHz ;

  • plusieurs entrées/sorties analogiques et numériques.

D'une certaine façon, il peut être vu comme un petit ordinateur programmable.

Un microcontrôleur peut être câblé dans n'importe quel montage électronique mais les cartes Arduino regroupent l'ensemble de la connectique nécessaire à son utilisation et permettent un gain en terme d'ergonomie non négligeable.

Le microcontrôleur de la carte ArduinoInformations[1]

À titre de comparaison, l'ordinateur de guidage du module Apollo embarquait 72 ko de mémoire morte + 4 ko de mémoire vive, pour une fréquence de processeur de 1 MHz.

Interface utilisateur du module de guidage d'ApolloInformations[2]

Description de la carte Arduino

La carte Arduino présentée ci-contre est le modèle UNO. D'autres versions existent qui diffèrent par le nombre d'entrées/sorties, la mémoire de travail, la fréquence du processeur ou encore la diversité des interfaces de communication. Les différentes versions de cartes sont consultables avec leurs spécifications sur le site officiel Arduino à la rubrique Store.

La carte se connecte à un ordinateur via un port USB, ce qui permet de l'alimenter et de transférer les programmes.

Elle peut aussi être alimentée à l'aide d'un adaptateur délivrant une tension comprise entre 7 V et 12 V. Attention : Ne pas dépasser cette valeur de tension d'alimentation.

La connectique permettant d'utiliser une pile 9 volts existe et permet de se libérer du secteur.

Les pins d'entrée/sortie numériques (en vert) sont prévus pour délivrer ou recevoir un signal "tout ou rien", sous la forme d'une tension de 0 volt ou de 5 volts. Celles marquées par un ~ sont modulables.

Les entrées analogiques (en rouge) sont destinées à recevoir un signal compris entre 0 et 5 volts. Le convertisseur analogique/numérique fonctionne sur 10 bits, soit avec 1024 niveaux (entre 0 et 1023 bornes incluses).

L'impédance des entrées analogiques est à priori voisine de \(\mathbf{100\ M\Omega}\) mais avec une énorme incertitude selon les lots de production. Les fiches techniques du microcontrôleur de la carte Arduino recommandent par ailleurs de ne pas dépasser la valeur de \(\mathbf{10\ k\Omega}\) sur une entrée analogique.

Les tensions d'alimentation (en violet) fournies par les régulateurs de tension permettent d'alimenter un montage électronique.

Description de la carte Arduino UnoInformations[3]

AttentionLimitation en intensité des sorties

Dans l'ensemble des montages, il faut veiller à respecter les limites d'intensités suivantes :

  • Sortie 5 volts : intensité maximale qui varie selon l'alimentation de la carte : \(\mathbf{I_{max} = 500\ mA}\) ; peut être limitée à 200 mA si la carte est alimentée par un portable.

  • Pins E/S numériques : \(\mathbf{I_{max}=40\ mA}\) ;

  • Mais sur un port, soit 8 pins E/S numériques : \(\mathbf{I_{max}=200\ mA}\)