View  Edit  Attributes  History  Attach  Print  Search

Qu'est-ce qu'un microcontrôleur ?

Définition

Un microcontrôleur, est un composant électronique qui rassemble tous les éléments d'un "mini-ordinateur" et qui se présente sous la forme d'un circuit intégré. Un microcontrôleur permet de réaliser des systèmes et montages électroniques programmés. Cela veut dire que l'on pourra, avec le même montage, réaliser des fonctions très différentes qui dépendront du programme qui aura été programmé dans le microprocesseur.

Structure

Typiquement, un microprocesseur comporte :

  • une unité arithmétique et logique ALU qui exécute les instructions et manipule les données
  • une mémoire dite vive qui stocke les données transitoires utilisées par le microprocesseur
  • une mémoire dite morte qui stocke de façon permanente les données utilisées par le microprocesseur
  • des modules aux fonctions variées : conversion analogique numérique, compteur / timer
  • des broches d'Entrée / Sortie (broches E/S)

Un microcontrôleur est cadencé par une horloge qui fixe la vitesse d'exécution des instructions de base.

Un microcontrôleur se caractérise enfin par un jeu d'instructions spécifique.

Des images pour comprendre

On peut prendre l'image d'une cuisine :

  • l'ALU est le cuisinier qui ouvre le livre de recette (la mémoire morte) et exécute une à une les étapes de la recette (le programme)
  • il pose tous les ingrédients dont il a besoin sur la table (la mémoire vive) et les combine entre-eux comme indiqué dans la recette
  • il va mettre le gateau au four (utilisation des modules), puis préparer une sauce pendant qu'il cuit, etc...

On peut aussi prendre l'image d'un jardin et d'un jardinier/paysagiste:

  • l'ALU est le jardinier qui lit sa liste des tâches à accomplir et il exécute une à une les choses à faire
  • Il sort de son cabanon ou de sa remise tous les outils dont il a besoin et les utilise en fonctions des tâches qu'il a à accomplir.
  • il va lancer un arrosage d'une parcelle, aller bécher pendant ce temps une autre parcelle, etc...

L'image du jardin est intéressante car les broches numériques d'entrées sorties peuvent très bien s'apparenter à des "tuyaux" à électrons connectées à des robinets tout ou rien ou ON/OFF.

Dès lors la carte Arduino Uno ou Duemilanove dispose de 20 "tuyaux à électrons" ou broches.

Chaque broche dispose :

  • d'un robinet de sens qui défini le sens de fonctionnement du tuyau :
    • soit l'eau entre, la broche est dite en entrée
    • soit l'eau sort, la broche est dite en sortie
  • en SORTIE, la broche dispose d'une vanne "tout-ou-rien" qui commande la circulation de l'eau :
    • soit il y a de l'eau qui coule sous pression,
    • soit il n'y en n'a pas.
  • en ENTREE, la broche dispose d'un "détecteur" qui permet de savoir :
    • si il y a de l'eau qui entre
    • soit il n'y en n'a pas

Le "jardinier" (= la carte Arduino) va pouvoir régler tout çà en fonction de ce qu'on lui demande. Et on va pouvoir lui demander de faire çà à l'aide d'instructions que l'on aura écrit sur la liste des choses à faire.

Quand on a compris çà, on comprend bien que les broches numériques peuvent fonctionner de 4 fa çons différentes :

  • En Entrée (l'eau entre) :
    • soit il y a de l'eau qui est détectée
    • soit il n'y a pas d'eau de détectée
  • En Sortie (l'eau sort) :
    • soit on ouvre la vanne
    • soit on ferme la vanne

A part : les broches Analogiques-numériques : 6 broches de la carte Arduino peuvent être connectée à un "appareil de mesure" qui va être capable de dire "combien il y a d'eau" sur une broche qui sera obligatoirement en entrée. (Il n'existe pas de broche pour mettre l'eau que l'on veut sur une broche en sortie...) Ce sont les broches "analogiques numériques" qui vont pouvoir être utilisée pour réaliser des mesures, et donc des capteurs analogiques.

Pour bien comprendre la différence Numérique et Analogique :

  • Numérique : la réponse à la question est OUI/NON 1/0 ou HAUT BAS (2 états seulement)
  • Analogique : la réponse à la question est COMBIEN IL Y EN A (de 0 à 1024...)

A distinguer : microcontrôleur et microprocesseur.

Le microprocesseur, à la différence d'un microcontrôleur, ne comporte pas en interne sa propre mémoire et nécessite une mémoire vive externe, des moyens de stockage externe, etc..

Un microcontrôleur comporte en interne un micro-processeur miniature associé à de la mémoire, de modules, etc..

Un exemple : l'ATMega 328

Ce microprocesseur est celui utilisé pour la carte Arduino Duemilanove.

schéma fonctionnel interne

Les grandes familles de microcontrôleurs programmables

AVr PIC

Voir également :

  • De quoi a-t-on besoin pour programmer un microprocesseur

Sur ce site :

Sur le Web :