Bonjour. Nous continuons le cours Comprendre les microcontrôleurs. Nous allons en particulier nous poser la question : quel microcontrôleur choisir? Ce sera surtout l'occasion de connaître quelques critères de choix des microcontrôleurs, de connaître un petit peu aussi l'histoire et l'évolution des microcontrôleurs, et de se familiariser avec quelques familles de microcontrôleurs disponibles actuellement. Il existe un très grand nombre de modèles de microcontrôleurs. C'est tout à fait impressionnant de voir le nombre de microcontrôleurs qui existent sur le marché. Il y a beaucoup de fabricants. Ils proposent chacun souvent plusieurs familles de microcontrôleurs. Et, chacune de ces familles peut contenir parfois des centaines de modèles différents. On trouve des microcontrôleurs qui peuvent aller de tous petits circuits qui ont seulement six pattes et qui ne coûtent qu'une fraction d'euros, jusqu'à des circuits beaucoup plus complexes, comportant des centaines de pattes et coûtant aussi plusieurs dizaines d'euros. Voici ici un microcontrôleur à six pattes, dans un tout petit boîtier monté en surface. A l'autre bout, un processeur beaucoup plus important, avec un nombre de pattes beaucoup plus important. Probablement aussi une puissance de calcul et une quantité de mémoire beaucoup plus importante. Ici, au milieu, on trouve des microcontrôleurs avec un nombre peut-être plus limité de pattes. J'ai montré ces dessins parce que ces boîtiers ici dual inline, avec les pattes séparées par une distance de 2,54 millimètres, sont extrêmement faciles à mettre en œuvre, en particulier sur les fameux breadboards, sur les plaques d'expérimentation, que nous avons vues dans un module précédent. Et donc, on utilisera ce type de circuit intégré fréquemment, pour illustrer ce cours. Alors, comment choisir entre tous ces microcontrôleurs? Il y a un certain nombre de critères de choix, disons techniques. Par exemple, le nombre de pattes d'entrées-sorties. On comprend bien de quoi il s'agit. Il y a également la taille de la mémoire de programme. On comprend bien que si l'on a beaucoup de mémoire, on pourra mettre un programme plus sophistiqué, que si on n'a qu'un nombre limité de positions mémoires. La taille de la mémoire vive, la RAM est aussi importante. Elle va déterminer de la quantité de données qu'on va pouvoir traiter avec notre microcontrôleur. Un autre critère, il y en a encore beaucoup d'autres, mais c'est par exemple la consommation électrique, la tension de fonctionnement, le courant consommé. Par conséquent, si on multiplie ces deux nombres, la puissance électrique de notre dispositif. On sait que si par exemple, on veut alimenter un microcontrôleur avec des piles, il faudra choisir une version qui est économe en énergie. Il y a encore un autre critère technique, qui est la puissance du processeur. Malheureusement, c'est beaucoup plus difficile d'estimer la puissance. Le nombre de pattes entrées-sorties, on les compte, la taille de mémoire, on la connaît, la consommation électrique, on peut aussi la connaître. La puissance du processeur est beaucoup plus difficile à estimer, et les comparaisons sont beaucoup plus délicates. Je reviens au dessin que j'avais déjà montré à plusieurs reprises. On voit ici qu'on a un bus d'adresses et un bus de données. La taille du bus d'adresses va évidemment influencer la taille de la mémoire qu'on va pouvoir accéder. Par contre, la taille du bus de données, elle va influencer la capacité de traitement du système. Bien entendu, la fréquence d'horloge est un autre critère très important. Mais soyons prudents, la fréquence de l'horloge n'est pas le seul critère de la puissance du processeur contenu dans un microcontrôleur. La taille du bus de données est également très importante, ainsi que d'autres éléments liés à l'architecture interne du processeur. Et je parlais de tous les critères. Soyons sérieux. Il y a un autre critère que vous connaissez très bien. C'est le prix. En effet, le prix va avoir une grande importance lors du choix du microcontrôleur, surtout s'il est question de fabriquer de très grandes quantités de dispositifs utilisant ce microcontrôleur. Imaginez la société qui fabrique des machines à café, qui les vend en dizaines, centaines de milliers d'exemplaires. Le prix du microcontrôleur aura une certaine importance sur le prix final du produit. Donc, on va choisir le processeur le moins cher, qui est toutefois suffisamment performant pour la fonction que nous avons envie de réaliser. C'est un critère important, le prix. Ce n'est pas le seul critère. Il y a aussi un critère lié à la disponibilité du matériel, à la disponibilité de l'environnement. Si vous avez un processeur qui coûte quelques centimes de moins qu'un autre, mais que vous ne connaissez pas, et que vous ne l'avez jamais utilisé, que vous devez passer un temps important pour vous familiariser avec sa technologie, peut-être choisirez-vous le processeur avec lequel vous avez l'habitude de travailler. Et j'ajoute qu'il y a encore un dernier critère. Si vous avez de l'expérience, ou si vous avez des amis, des gens proches de vous qui ont de l'expérience avec tel ou tel processeur, eh bien, peut-être vous allez justement choisir ce processeur-là pour pouvoir travailler plus efficacement, et éventuellement, être aidé aussi plus efficacement pour faire vos développements avec des microcontrôleurs. Un petit mot quand même sur l'histoire et l'évolution des microcontrôleurs. Vous serez peut-être assez surpris d'apprendre que dans les années 1970, eh bien, les premiers microcontrôleurs sont apparus et en particulier ce processeur, qui est le TMS1000 de Texas Instruments, qui était un processeur, tenez-vous bien, qui avait une mémoire masquée, c'est-à -dire une mémoire faite directement sur le silicium. Donc, on ne pouvait pas modifier le contenu. Il était nécessaire d'écrire un programme, que ce programme soit juste, le transmettre au fabricant, et quelques semaines ou quelques mois plus tard, obtenir un circuit intégré en quelques milliers d'exemplaires, et savoir ensuite s'il allait marcher. Un progrès considérable a été fait, lorsque les mémoires du type EPROM ont commencé à être disponibles. Ces mémoires étaient effaçables par des rayons ultra violets d'où la présence donc de cette fenêtre, ici en quartz, qui nous permet d'ailleurs de voir le circuit intégré, et si on avait une résolution suffisante, on pourrait voir les petits fils du bonding, qui relie le circuit le circuit intégré jusqu'aux pattes du microcontrôleur qui se trouve à l'extérieur. Cette technologie des mémoires EPROM a permis d'obtenir des microcontrôleurs beaucoup plus faciles à mettre en œuvre, puisqu'il était possible d'écrire un programme, de l'essayer, puis de l'effacer, et d'en mettre un autre, donc grâce à cette fenêtre, et a l'effacement des ultra violets. Cette fenêtre, elle a son coût, et il faut reconnaître que le décollage véritable des microcontrôleurs a eu lieu au moment où on a réussi à mettre cette fois dans des EEPROM, la mémoire du microcontrôleur. Peut-être faut-il que je vous explique plus en détails la signification de ces termes. Vous savez que ROM signifie read-only memory. On a plus tard eu des programmable read-only memory, donc des mémoires mortes programmables. C'était à l'époque fait avec des fusibles. Alors, on pouvait les programmer une fois, mais pas une deuxième fois. Un petit peu plus tard, on a eu la technologie remarquable des EPROM, erasable programmable read-only memory Donc, des mémoires mortes programmables, mais effaçables. Et, c'est seulement plus tard qu'on a eu des mémoires du type EEPROM, c'est-à -dire electrically erasable programmable read-only memory, donc des mémoires mortes programmables, mais effaçables électriquement. Donc, on voit que ces circuits n'avaient pas de petites fenêtres, ils pouvaient être vendus dans des boîtiers en plastique moins coûteux, et il faut reconnaître que les microcontrôleurs ont véritablement décollé à partir de cette technologie-là . C'est extrêmement compliqué de vous parler des familles actuelles de microcontrôleurs, tant il y en a beaucoup. Je vous ai parlé de milliers de modèles différents. Il y a toutefois quelques modèles que je ne peux pas m'empêcher de citer. Je commence par le PIC de la société américaine Microchip, qui a eu une immense popularité, et qui a fait connaître les microcontrôleurs d'une manière tout à fait remarquable. Je cite également l'AVR de la société Atmel parce que c'est lui qui a été utilisé pour l'Arduino donc, je vous ai dit tout à l'heure qu'il avait participé à la popularisation des microcontrôleurs partout dans le monde. Et naturellement, je ne peux pas ne pas citer les dérivés d'un vieux processeur d'Intel, ou toute une famille de processeurs d'Intel, il y a des dizaines de fabricants qui fabriquent des dérivés de ce processeur, qui est un processeur 8 bits, d'ailleurs comme ces deux autres processeurs, un processeur qui est maintenant un petit peu ancien. Par contre, les PIC et les AVR restent tout à fait d'actualité. Il y a un certain nombre de processeurs 16 bits, mais il n'y en a pas énormément. Il y a par exemple le dsPIC, chez Microchip. Je cite également le MSP430 de la société américaine Texas Instruments. Ce processeur a une particularité qu'il consomme très peu. Il est donc souvent utilisé dans des systèmes alimentés par des piles. J'en parle aussi parce qu'il est utilisé dans le fameux LaunchPad, qui est un système de développement très intéressant, et extrêmement peu coûteux, qu'on va donc utiliser très souvent durant ce cours. Bien entendu, il existe aussi des microcontrôleurs avec des processeurs 32 bits. Par exemple, l'AVR32, le PIC 32, toute une série de processeurs du fabricant MIPS, et également des microcontrôleurs de la famille PowerPC. Il faut aussi mentionner les processeurs ARM, qui sont développés par une société anglaise. La particularité, c'est que la société ne fabrique pas de circuit intégré, ne fabrique pas de microcontrôleur, mais donne des licences à de très nombreux fabricants, qui vont eux-mêmes fabriquer des microcontrôleurs à base de ce processeur ARM. Je signale qu'on le trouve également dans les smartphones. J'ai cité ici quelques noms de fabricants. NXP, anciennement Philips, STMicroelectronics, une société d'origine franco-italienne, Texas Instruments, le fabricant historique des circuits logiques de la technologie TTL, le coréen Samsung, Infineon en Europe, au Japon, Toshiba, Analog Device aux Etats-Unis, Qualcomm, Freescale également, qui s'appelait anciennement Motorola, et de nombreux autres fabricants qui fabriquent des processeurs basés sur ce processeur ARM, de conception anglaise. Nous avons donc appris à connaître un peu les critères de choix des microcontrôleurs. En particulier, le nombre de pattes d'entrées-sorties, la taille des mémoires, la puissance du processeur, mais également le prix, la disponibilité, la facilité d'emploi des systèmes de développement, l'expérience aussi qu'on peut déjà avoir acquise. On a vu également l'évolution des microcontrôleurs. Leur, un petit peu de leur histoire, Et finalement, j'ai cité quelques familles de microcontrôleurs disponibles actuellement.