Les outils pour ces microcontrôleurs se sont perfectionnés au fil des ans, et les concepteurs disposent désormais d'excellents compilateurs et bibliothèques de fonctions, ce qui simplifie considérablement le développement logiciel. Dans les systèmes modernes, des fonctionnalités supplémentaires sont également implémentées, élargissant ainsi le champ d'application des microcontrôleurs.
Le marché des applications de l'Internet des objets (IoT) contribue de manière significative au développement continu des microcontrôleurs 8 et 16 bits « plus simples ». En raison du grand nombre d'appareils et d'applications opérant dans ce secteur, les systèmes doivent impérativement réduire leur consommation d'énergie. Cela concerne notamment les capteurs intelligents sans fil, les objets connectés portables, les systèmes d'affichage remplaçant les étiquettes de prix traditionnelles en magasin, les balises, etc. Très souvent, ces appareils sont alimentés par batterie, et les utilisateurs exigent une autonomie maximale sans avoir à remplacer la batterie. Dans ces applications, les microcontrôleurs 8 et 16 bits sont sans égal, car ils peuvent être facilement mis (et rapidement activés) en mode basse consommation, dans lequel leurs périphériques et/ou leur cœur sont en mode d'économie d'énergie et ne sont activés/réveillés que pendant le temps nécessaire pour effectuer les actions nécessaires.
Les microcontrôleurs modernes utilisent des modules périphériques capables de fonctionner indépendamment du processeur et d'exécuter des tâches spécifiques (traditionnellement gérées par le processeur au niveau logiciel) de manière autonome et matérielle. Il en résulte une faible consommation d'énergie et une libération de la puissance de calcul d'un microcontrôleur relativement petit, dont le cœur peut alors être utilisé pour des tâches critiques. L'utilisation de ces modules raccourcit le temps de développement des nouvelles applications. De plus, ces modules périphériques, de différents types, intégrés aux microcontrôleurs, peuvent être combinés en blocs plus importants, permettant ainsi la mise en œuvre de fonctions plus complexes. Afin de faciliter la configuration des périphériques indépendants du cœur (CIP) pour les concepteurs, les fabricants fournissent des outils dotés d'une interface graphique conviviale.
Microcontrôleur de la famille AVR128DB en boîtier TQFP48.
Les microcontrôleurs présentant les caractéristiques mentionnées étaient incontournables dans la gamme de produits Microchip.
AVR128DB
combine les performances d'un cœur AVR® basse consommation avec un ensemble de périphériques indépendants du cœur (CIP) et un grand nombre de périphériques analogiques intégrés. La possibilité de fonctionner sous une tension d'alimentation de 5 V améliore l'immunité aux interférences.
Nous analyserons ci-dessous principalement les périphériques CIP disponibles dans la série AVR128DB, bien que les fonctionnalités des systèmes eux-mêmes soient beaucoup plus étendues. La famille de microcontrôleurs AVR128DB comprend, entre autres, des convertisseurs analogique-numérique (CAN) 10 bits, une horloge temps réel (RTC), des générateurs PWM (dont des générateurs TCB 12 bits adaptés aux systèmes d'alimentation), des interfaces matérielles USART, SPI et TWI, des sources de tension de référence pour des mesures précises, des comparateurs et la possibilité de générer des interruptions externes sur toutes les broches d'E/S. Les circuits AVR128DB intègrent jusqu'à trois amplificateurs opérationnels. Associés aux convertisseurs analogique-numérique, ils permettent un traitement complet et précis des signaux d'entrée. Les microcontrôleurs disposent également d'un port d'entrée/sortie compatible avec différents niveaux logiques (de 1,8 V à 5,5 V), ce qui rend inutile l'utilisation de convertisseurs externes. Cette solution représente une avancée majeure en matière de miniaturisation et d'efficacité énergétique des circuits, et les systèmes utilisés seront fabriqués par Microchip. Nous vous invitons à consulter la gamme complète de produits.
Event
System est un puissant déchargeur de noyau pour microcontrôleurs. Il permet d'établir des dépendances simples entre événements. Les instructions conditionnelles s'exécutent sans le noyau (voire sans le réveiller). Par exemple, l'actionnement d'un bouton peut se faire indépendamment du code du programme. Le dépassement du seuil de différence de potentiel défini sur le comparateur peut, par exemple, activer le transducteur sur une broche spécifique, lancer un comptage, etc. Cette fonctionnalité réduit la quantité de code nécessaire au fonctionnement du dispositif et améliore la vitesse de réponse globale du microcontrôleur.
logiques configurables
(CLC) offrent une fonction similaire, également active en mode basse consommation. Elles permettent d'effectuer des opérations logiques sur des signaux provenant de sources externes et internes (compteurs, registres) et de transférer le résultat vers un périphérique ou une broche de sortie. Ceci élimine le besoin d'instructions conditionnelles dans votre code. Le module CLC remplit les fonctions de portes logiques (ET, OU, OU exclusif, NON et leurs combinaisons), de verrous ou de bascules sans procédure d'activation énergivore.
Détecteur de passage par zéro (
ZCD) : Le module ZCD déclenche des interruptions lorsque le signal alternatif dépasse le seuil à potentiel nul (par rapport à la masse du microcontrôleur). Le système intégré au microcontrôleur échantillonne directement la tension du secteur ; le seul composant passif requis est une résistance en série pour limiter le courant et, éventuellement, une résistance de rappel. Un circuit analogique équivalent nécessiterait beaucoup plus de composants. La fonction ZCD permet une commande efficace des triacs (variation d'intensité lumineuse, régulation thermique), la surveillance de la qualité de l'alimentation (mesure de période) ou la limitation des perturbations électromagnétiques dans les circuits commandant l'alimentation d'un appareil (activation lorsque la sinusoïde est proche de zéro, éliminant ainsi les pics de tension et les perturbations électromagnétiques qu'ils génèrent). De plus, le périphérique peut être configuré pour signaler un type spécifique de dépassement (courbe montante, courbe descendante ou les deux). Le signal ZCD ne nécessite aucune programmation et peut être envoyé à une broche d'E/S du microcontrôleur.
Minuterie de surveillance avancée :
Même les circuits numériques les mieux conçus, fonctionnant parfaitement et dont le code a été maintes fois vérifié, peuvent se bloquer. Ce problème peut survenir pour de nombreuses raisons, parfois sans lien avec les fonctions exécutées par le code. Il peut s'agir d'un dépassement de la température de fonctionnement admissible ou d'une perturbation sur la ligne électrique. La protection de base contre de telles situations est assurée par les minuteries de surveillance (WDT), qui fonctionnent indépendamment du programme en cours d'exécution. Si l'exécution d'une instruction prend plus de temps que prévu, la WDT réinitialise le microcontrôleur. Dans le cas de la famille AVR128DB, il est possible de programmer une « zone de temps » (minuterie de surveillance en mode fenêtre, WWDT) pendant laquelle le programme s'exécutera. En cas de vérification, le fonctionnement du dispositif est interrompu et redémarré depuis le début, que la période entre les réponses du cœur soit trop longue ou trop courte. Dans ce dernier cas, il est possible qu'une partie de l'instruction n'ait pas été exécutée, avec des conséquences négatives, notamment si le bloc d'opération omis était directement lié à la protection du circuit ou de l'opérateur du dispositif (par exemple, un signal de fin de course non détecté).
Le contrôle de redondance cyclique (CRC/SCAN)
consiste à générer et vérifier une somme de contrôle. Cette méthode est couramment utilisée pour garantir une communication efficace entre les systèmes des microprocesseurs. Malheureusement, l'implémentation logicielle d'une telle somme de contrôle consomme une puissance de traitement importante et peut ralentir le fonctionnement des systèmes concernés, notamment avec les unités 8 bits fonctionnant à une fréquence limitée (pour économiser l'énergie). Les microcontrôleurs Microchip les plus récents (PIC et AVR) sont équipés de périphériques qui génèrent automatiquement une somme de contrôle (même sous la forme d'un polynôme 32 bits) et la placent dans un registre accessible par programme. La fonctionnalité SCAN permet au système CRC d'accéder directement à la mémoire du microcontrôleur, optimisant ainsi la gestion des sommes de contrôle.
Des exemples d'utilisation des modules CIP dans des applications spécifiques et leurs avantages lors de la conception de circuits implémentant des fonctionnalités complexes sont présentés dans les vidéos du fabricant ci-dessous.
Contenu préparé par Transfer Multisort Elektronik Sp. z oo.
Source originale du texte :
