C - Programmation d'un système embarqué

Le processeur

Un processeur (ou CPU, pour Central Processing Unit en anglais) est le composant électronique qui exécute les instructions des programmes. Il s'agit d'une puce minuscule capable d'effectuer des milliards d'opérations par seconde.

On le surnomme souvent le cerveau du système embarqué, et pour cause : comme le cerveau humain, il reçoit des informations, les traite et commande des actions. Concrètement, il lit les instructions les unes après les autres, effectue les calculs nécessaires (additions, comparaisons, etc.) et coordonne les échanges de données entre les différents composants (mémoire, capteurs, actionneurs).

Sans processeur, un système embarqué ne serait qu'un ensemble de composants électroniques inertes. C'est lui qui donne vie au programme et qui permet à l'objet de réagir de manière intelligente à son environnement.

Un processeur Intel C4004Informations[1]

Les cartes programmables

Une carte programmable est un circuit électronique qui intègre tous les éléments nécessaires pour créer ses propres systèmes embarqués. Elle contient un ou plusieurs microcontrôleurs (qui intègrent eux-mêmes un processeur, de la mémoire et des entrées-sorties), ainsi que des connecteurs permettant de relier facilement des capteurs et des actionneurs.

Pour utiliser une carte programmable, on commence par la relier à un ordinateur via un câble USB. Sur l'ordinateur, on écrit un programme dans un langage adapté (souvent Python ou C++), puis on téléverse ce programme vers la carte. Le téléversement consiste à transférer le programme dans la mémoire de la carte pour qu'il puisse être exécuté par le microcontrôleur.

Une fois le programme transféré, on peut débrancher la carte de l'ordinateur. Elle fonctionne alors de manière autonome : elle exécute le programme en boucle, lit les capteurs et commande les actionneurs, sans avoir besoin de rester connectée. C'est cette autonomie qui permet d'intégrer ces cartes dans des robots, des objets connectés ou des installations interactives.

Exemples de cartes programmablesInformations[3]
Qu'est ce que c'est le micro:bit?Informations[4]

L’algorithme de contrôle type

L'algorithme le plus courant d'un système embarqué repose sur une boucle infinie.

Contrairement à un programme classique qui s'exécute une fois puis s'arrête, un système embarqué doit généralement fonctionner en continu, tant que l'appareil est sous tension.

Exemple d’algorithme type d’un objet connectéInformations[5]