Afin d'éviter les maux de tête de développement et de raccourcir le temps d'accès au marché, les modules à microcontrôleurs peuvent avantageusement remplacer les composants “ seuls ”, pour un surcoût modéré tant qu'il s'agit de petites quantités.
Les vendeurs de modules à processeurs sont légion, notamment sous l'appellation PC embarqués : la complexité du développement sur ces circuits justifie souvent le recours à ce type de modules. Mais le même phénomène existe également dans le domaine des microcontrôleurs, pour des raisons similaires de temps d'accès au marché (le fameux time-to-market), de coût de développement et de compacité. Bien sûr, cela ne concerne pas le gros des ventes de microcontrôleurs, à savoir les fabricants commandant par brassées de centaines de milliers de pièces. Mais les modules à microcontrôleurs ne sont pas pour autant réduits au prototypage, loin s'en faut. « Certains de nos clients, par exemple dans le secteur des télécoms, achètent quelques dizaines de milliers de modules RCM par an », précise Grégoire Gérard, directeur de la société e-Matlog et importateur exclusif pour l'Hexagone du fabricant américain de modules microcontrôleurs Z-World. Lequel compte parmi ses clients Cegelec, Sagem ou encore Sony France.
Quels sont les avantages de ces modules intégrant un microcontrôleur (généralement 8 bits), parfois une mémoire, les passifs associés (dont l'horloge) et les connecteurs sur une carte mezzanine de quelques centimètres carrés ? Le time-to-market en premier lieu. « Ces modules permettent d'avancer de 80 % à 90 % le projet de nos clients, qui n'ont plus qu'à programmer le contrôleur », explique encore M. Gérard. De quoi compenser le surcoût induit par ces modules, dont le prix peut varier de 15 $ à 30 $ pour 1 000 pièces selon les fonctions. « J'ai l'exemple d'un client qui, en proie à l'évolution constante de son projet après un an de développement sur une carte à deux contrôleurs PIC de Microchip, a décidé d'utiliser un module Basic Tiger », avance Eric Belouet, directeur technique chez Optiminfo, qui distribue en France ces modules de l'Allemand Wilke : « Le surcoût du module prêt à l'emploi a largement été compensé par le gain de temps. » L'utilisateur n'a en effet pas à fouiller dans les entrailles du contrôleur, à évaluer différentes valeurs pour les composants passifs environnants ou à chercher le bon type de mémoire. Il simplifie en outre sa chaîne d'approvisionnement, n'ayant pas à acheter et inventorier les passifs, connecteurs et circuits imprimés. Autre avantage : la qualité des outils de développement, et ce même pour des petites quantités. Une liste exhaustive de drivers pilotes d'écrans LCD ou d'imprimantes, commandes de diodes électroluminescentes, etc. et de routines de base génération de sons, fonctions réseaux comme l'e-mail, gestion des sorties analogiques ou d'un port Ethernet accompagne généralement les cartes à microcontrôleurs. « Selon les volumes, il est même possible de réaliser gratuitement des drivers spécifiques à l'application », ajoute M. Belouet. De même, l'environnement logiciel de développement comprend des outils de débogage et de traitement multitâche et temps réel pointus, là où les grands fabricants se contentent parfois de décliner une même suite logicielle sur les centaines de modèles de contrôleurs figurant à leur catalogue.
L'une des particularités des modules à microcontrôleurs est de fournir un support prêt à l'emploi pour le développement en langage interprété. C'est le cas des Basic Stamp lancés par l'Américain Parallax en 1992 et qui, comme leur nom l'indique, sont dotés d'un interpréteur Basic. Le dernier-né de cette famille, le Basic Stamp 2pe, comprend ainsi un microcontrôleur Ubicom (le fabricant utilisant pour la majorité de ses autres cartes des contrôleurs Microchip), pourvu de 32 Ko d'Eeprom et susceptible de traiter 6 000 instructions par seconde, ainsi qu'une commande LCD et 2 une interface PC, le tout sur une carte mesurant seulement 3,1 × 1,6 cm. Autre adepte des modules à microcontrôleurs Basic, le Coréen Comfile Technology, distribué en France par Lextronic, propose également de programmer en Basic des contrôleurs PIC16C de Microchip grâce à ses cartes PICBASIC, disponibles en différents boîtiers SIL et DIL et avec 2 à 64 Ko de mémoire Eeprom ou flash. Citons enfin l'Allemand Wilke et ses Basic Tiger, modules à contrôleurs programmables dans une mouture Basic maison.
On retrouve le même microcontrôleur sur la famille Javelin Stamp de Parallax, qui, elle, interprète le langage Java. Un autre Américain, Systronix, s'est lui aussi lancé dans les cartes Java avec la gamme JStamp. Ces cartes mesurant 2,5 × 5 cm peuvent être programmées directement en Java, en mode natif (c'est-à-dire sans qu'il y ait besoin d'un interpréteur), grâce à leur microcontrôleur aJ-80 fabriqué par aJile Systems (voir notre numéro du 29 juin 2000). Architecturé autour d'un cœur 32 bits, l'aJ-80 exécute jusqu'à 3 Mo de code Java par seconde à 74 MHz et peut gérer plusieurs machines virtuelles Java sans nécessiter de système d'exploitation temps réel. La carte JStamp l'agrémente de 512 Ko de Sram, 512 à 2 048 Ko de mémoire flash, deux UART et des interfaces SPI, IrDA et JTAG, ainsi qu'un régulateur de tension 3,3 V.
Les microcontrôleurs “ standards ”, fonctionnant en bon vieil assembleur ou C, ont aussi leurs modules. Si les fabricants de microcontrôleurs eux-mêmes n'en fabriquent que rarement, vu les faibles volumes concernés, des petites sociétés s'en chargent. C'est par exemple le cas du Suédois Lawicel, distribué en France par Optiminfo, et qui travaille sur les contrôleurs d'Infineon et surtout d'Atmel. L'un de ses modules les plus avancés, le StAVeR-40, prévu pour le premier trimestre 2003, est orchestré par un ATMEGA323, microcontrôleur Risc 8 bits à cœur AVR doté de nombreux blocs périphériques (dont un multiplieur en deux cycles d'horloge, 32 registres 8 bits, une interface JTAG et un convertisseur analogique-numérique 10 bits 8 canaux) et de 32 Ko de mémoire flash. 8Ko d'Eeprom série, un émetteur-récepteur RS-232 et les passifs ad hoc l'accompagnent sur une carte au format DIP40.
Enfin, il est intéressant de s'arrêter sur la démarche de Z-World, qui a conçu un cœur de microcontrôleur de toutes pièces pour ses modules. « Notre part de clientèle achetant des circuits seuls n'est que symbolique par rapport aux acheteurs de modules », avoue Grégoire Gérard. Ces microcontrôleurs, les Rabbit2000 et Rabbit3000 (disponibles chez Rabbit Semiconductor voir par exemple notre numéro du 18 novembre 1999), sont des modèles 8 bits cadencés respectivement jusqu'à 30 MHz et 54 MHz, et disposent d'une architecture rappelant le Z180 de Zilog, avec plusieurs raffinements en sus (par exemple les faibles émissions électromagnétiques grâce à l'étalement du spectre du signal d'horloge). Ils équipent toute une série de modules baptisés RCM2xxx et RCM3xxx, offrant différentes configurations de mémoire, d'entrées/sorties et de fonctions annexes (interface Ethernet 10 Mbit/s ou 100 Mbit/s, convertisseur analogique-numérique 12 bits 8 canaux, etc.). Côté logiciel, la programmation s'effectue en C, Z-World fournissant gracieusement une pile de protocoles TCP/IP complète.