Les microcontrôleurs à moins d'un dollar bouleversent le monde des systèmes embarqués

En tant que concepteur de systèmes embarqués avec plusieurs dizaines d'années d'expérience à mon actif, je suis stupéfait de voir à quel point le prix des microcontrôleurs a baissé. J'ai récemment jeté un œil aux microcontrôleurs bon marché et il s'avère que de nombreux modèles se vendent à l'unité à moins d'un dollar, voire beaucoup moins ! J'en ai répertorié plusieurs qui reviennent au final à moins d'un dollar l'unité.

Cela dit, le but de ce blog n'est pas de comparer les microcontrôleurs bon marché. Il s'agit plutôt de comparer ces microcontrôleurs aux autres alternatives. Étant donné que le premier projet avec microcontrôleur de tous les développeurs consiste à faire clignoter une LED, il semble judicieux de comparer ces microcontrôleurs à la légendaire puce de temporisateur 555. Depuis son lancement il y a plusieurs dizaines d'années, le temporisateur 555 est le composant de référence pour faire clignoter des LED.

Ce dispositif est apparu en 1972, lancé par une entreprise qui n'existe plus aujourd'hui et qui était spécialisée dans les semi-conducteurs. Cependant, le dispositif existe toujours. Il est possible de se procurer la puce de temporisateur NE555D de Texas Instruments pour bien moins d'un dollar. Notez que ce prix à l'unité est déjà comparable au microcontrôleur le moins cher indiqué plus bas ! En outre, si vous voulez faire clignoter une LED à l'aide d'une puce de temporisateur 555, vous ne pouvez pas le faire avec la puce à elle seule. Il vous faut aussi des résistances et des condensateurs. Les microcontrôleurs n'ont pas besoin de ces composants supplémentaires.

De plus, les microcontrôleurs sont beaucoup plus polyvalents, même si les publications d'électronique continuent de publier des idées de conception de circuit pour les temporisateurs 555 depuis leur lancement sur le marché il y a 46 ans.

Cela dit, les temporisateurs 555 auront toujours une place dans mon cœur : ils font ce qu'ils sont censés faire, de manière fiable et efficace.

Toutefois, le remplacement d'une puce de temporisateur 555 et de LED clignotantes ne représente qu'une infime portion des capacités des microcontrôleurs bon marché. Ils peuvent facilement contrôler des systèmes embarqués relativement complexes. Ils peuvent être utilisés pour commander un moteur, avec l'aide de quelques MOSFET de puissance. Ils peuvent implémenter des interfaces homme-machine (IHM) simples.

Les quatre microcontrôleurs répertoriés ci-dessous comprennent des multiplexeurs à entrée analogique à plusieurs canaux qui permettent de commander des convertisseurs analogique-numérique (CAN), avec une résolution d'au moins huit bits. Ces CAN peuvent considérablement simplifier la conception analogique de nombreux systèmes embarqués.

Avec ces microcontrôleurs bon marché, la transition des signaux analogiques aux signaux numériques doit intervenir le plus tôt possible dans la chaîne de traitement des signaux du système. Voici quelques options de microcontrôleur à envisager :

EFM8BB10F8G-A-QSOP24R de Silicon Labs 

Le microcontrôleur EFM8BB10F8G-A-QSOP24R fait partie de la gamme de dispositifs « Busy Bee » de Silicon Labs. Il est basé sur la vénérable architecture de microprocesseur 8051 8 bits. Ce dispositif est doté de 8 ko de mémoire programme Flash et de 512 octets de RAM. Le microcontrôleur utilise une version pipeline du cœur de processeur 8051, si bien que 70 % de ses instructions s'exécutent en un ou deux cycles d'horloge et que le microcontrôleur fonctionne à 25 MHz. Pour les périphériques, le microcontrôleur EFM8BB10F8G-A-QSOP24R offre les caractéristiques suivantes :

  • I2C
  • SPI
  • Port SMBus
  • UART
  • Compteur/temporisateur programmable à trois canaux avec générateur PWM
  • Quatre temporisateurs 16 bits
  • Un CAN 12 bits avec 16 canaux d'entrée analogiques
  • Deux comparateurs analogiques

Tous ces dispositifs E/S sont intégrés dans le boîtier QSOP à 24 broches du microcontrôleur. Silicon Labs propose la suite de développement Simplicity Studio 4, qui inclut un compilateur et assembleur Keil, un débogueur, un concepteur d'application IoT, un profileur énergétique, un configurateur matériel ainsi que des démonstrations pré-développées.

ATTINY84A-SSUR de Microchip Technology

L'ATTINY84A-MMH fait partie de la gamme de microcontrôleurs AVR 8 bits de Microchip (anciennement Atmel). Ce dispositif est doté de 8 ko de mémoire programme Flash, de 512 octets d'EEPROM et de 512 octets de RAM. L'architecture AVR 8 bits comprend 120 instructions (dont la plupart s'exécutent en un seul cycle d'horloge) et un registre de 32 octets. Le microcontrôleur fonctionne à 20 MHz. Pour les périphériques, le microcontrôleur ATTINY84A-MMH offre les caractéristiques suivantes :

  • Un temporisateur/compteur matériel de 8 bits et un de 16 bits
  • Deux canaux PWM
  • Un CAN 10 bits avec 8 entrées analogiques asymétriques
  • Une horloge de surveillance programmable pour éviter les opérations inutiles du programme

Le support de développement logiciel inclut des compilateurs C, des macro-assembleurs, un débogueur et simulateur de programme ainsi que des kits d'évaluation.

PIC10F220T-E/OT de Microchip Technology

La série PIC de Microchip constitue depuis longtemps l'option préférée des développeurs de systèmes embarqués économiques. Le microcontrôleur PIC10F220 de la société est doté de 256 mots de mémoire Flash pour les instructions (chaque mot d'instruction représentant 12 bits) et de 16 octets de RAM. Il comprend un jeu d'instructions simples (seulement 33 instructions) qui s'exécutent toutes (à l'exception des instructions de saut) en un seul cycle. Les sauts nécessitent deux cycles. Le cycle d'instruction dure 500 nanosecondes et utilise une horloge interne de 8 MHz. Il s'agit d'un dispositif à 6 broches. Les périphériques sont donc multiplexés sur les quatre broches E/S du dispositif. Pour les périphériques, le PIC10F220T-E/OT inclut les éléments suivants :

  • Horloge temps réel/compteur 8 bits
  • CAN 8 bits avec deux canaux d'entrée analogiques externes
  • 4 broches E/S à usage général

Figure 1 : Le microcontrôleur PIC10F220T-E/OT de Microchip permet de multiplexer plusieurs fonctions analogiques et numériques sur ses 4 broches E/S. (Source de l'image : Microchip Technology)

La suite de développement MPLAB de Microchip comprend un compilateur C, un assembleur, un éditeur de liens et un créateur de bibliothèque d'objets.

ATTINY10-TSHR de Microchip Technology

Si vous cherchez un microcontrôleur vraiment bon marché, difficile de battre le modèle ATTINY10-TSHR de Microchip (Figure 2). Ce microcontrôleur de 8 bits à 6 broches de la série AVR de Microchip présente de nombreux avantages. La plupart des 54 instructions du dispositif s'exécutent en un seul cycle d'horloge et le dispositif fonctionne à 12 MHz. Cette variante AVR comprend 1 ko de mémoire Flash pour les instructions et 32 octets de RAM. Difficile de croire qu'il est possible de prendre en charge beaucoup d'E/S avec un dispositif à 6 broches, et pourtant le microcontrôleur ATTINY10-TSHR permet de multiplexer les compléments périphériques suivants sur ses 4 broches E/S :

  • Un canal de détection tactile capacitive
  • Un temporisateur/compteur 16 bits avec 2 canaux PWM
  • Une horloge de surveillance avec oscillateur sur puce séparé
  • Un CAN 8 bits avec 4 entrées analogiques
  • Un comparateur analogique

Figure 2 : Le microcontrôleur ATTINY10-THSR permet de multiplexer un grand nombre de périphériques sur ses 4 broches E/S. (Source de l'image : Microchip Technology)

Le support de développement logiciel se fait grâce à la suite d'outils Atmel Studio 7.0 qui inclut les outils habituels (compilateur, assembleur, éditeur de liens, etc.).

Essayez d'abord de vous passer de microcontrôleur

Il fut un temps où les microcontrôleurs coûtaient cher, mais ce n'est plus le cas aujourd'hui. La méthodologie de conception embarquée est désormais renversée grâce aux microcontrôleurs bon marché comme les quatre dont nous venons de parler. Aujourd'hui, il est judicieux d'envisager dans un premier temps d'utiliser un microcontrôleur, puis de réfléchir aux raisons pour lesquelles un microcontrôleur bon marché ne devrait pas représenter le premier choix de conception pour la plupart des conceptions économiques.

À propos de l'auteur

Image of Steve Leibson Steve Leibson a été ingénieur système pour HP et Cadnetix, rédacteur en chef pour EDN et Microprocessor Report, blogger technique pour Xilinx et Cadence (entre autres), et il est intervenu en tant qu'expert technologique dans deux épisodes de "The Next Wave with Leonard Nimoy". Il a aidé les ingénieurs de conception à développer des systèmes améliorés, plus rapides et plus fiables pendant 33 ans.
More posts by Steve Leibson
 TechForum

Have questions or comments? Continue the conversation on TechForum, DigiKey's online community and technical resource.

Visit TechForum