Catégories: Électronique pratique, Circuits microcontrôleurs
Nombre de fois vus: 21376
Commentaires sur l'article: 0

Types et disposition des microcontrôleurs AVR

 


AVR - C'est le nom de la famille populaire de microcontrôleurs que l'entreprise produit. Atmel. En plus des ABP sous cette marque sont émis microcontrôleurs et d'autres architectures comme ARM et i8051.


Que sont les microcontrôleurs AVR?

Microcontrôleurs AVR

Il existe trois types de microcontrôleurs:

  1. AVR 8 bits.

  2. AVR 32 bits.

  3. AVR xMega

Depuis plus d'une décennie, la plus populaire est la famille de microcontrôleurs 8 bits. De nombreux jambons ont commencé à étudier les microcontrôleurs de lui. Presque tous ont appris le monde des contrôleurs programmables en faisant leur artisanat simple, comme les lumières clignotantes LED, les thermomètres, les horloges, ainsi que l'automatisation simple, comme le contrôle de l'éclairage et des appareils de chauffage.

Les microcontrôleurs AVR 8 bits, à leur tour, sont divisés en deux familles populaires:

  • Attiny - le nom montre que les plus jeunes (minuscules - jeunes, jeunes, plus jeunes), ont fondamentalement 8 broches ou plus. Le volume de leur mémoire et de leurs fonctionnalités est généralement plus modeste que ci-dessous;

  • Atmega - Les microcontrôleurs plus avancés ont plus de mémoire, de broches et de diverses unités fonctionnelles;

Microcontrôleurs Attiny

La sous-famille la plus puissante de microcontrôleurs est xMega - ces microcontrôleurs sont disponibles dans des boîtiers avec un grand nombre de broches, de 44 à 100. Il en faut beaucoup pour les projets avec un grand nombre de capteurs et d'actionneurs. De plus, la capacité et la vitesse de mémoire accrues vous permettent d'obtenir des performances élevées.

Microcontrôleur Atmega

Décodage: Pin (eng. Pin - aiguille, pin) est la sortie du microcontrôleur ou, comme on dit, la jambe. D'où le mot "pinout" - c'est-à-dire des informations sur le but de chacune des jambes.


À quoi servent les microcontrôleurs et à quoi servent-ils?

Les microcontrôleurs sont utilisés presque partout! Presque tous les appareils du 21e siècle fonctionnent sur un microcontrôleur: instruments de mesure, outils, appareils électroménagers, montres, jouets, boîtes à musique et cartes postales, ainsi que bien plus encore; l'énumération seule prendra plusieurs pages de texte.

Le développeur peut utiliser le signal analogique du bas de celui-ci à l'entrée du microcontrôleur et manipuler les données sur sa valeur. Ce travail est effectué par un convertisseur analogique-numérique (ADC). Cette fonction permet à l'utilisateur de communiquer avec le microcontrôleur, ainsi que de percevoir divers paramètres du monde environnant à l'aide de capteurs.

Microcontrôleur AVR sur planche à pain

Dans les microcontrôleurs AVR courants, par exemple, Atmega328qui en 2017 est au cœur de nombreux circuits imprimés Arduinomais à leur sujet plus tard. 8 canaux utilisés ADCavec peu de profondeur 10 bits. Cela signifie que vous pouvez lire la valeur de 8 capteurs analogiques. Et les capteurs numériques sont connectés aux sorties numériques, ce qui peut être évident. Cependant, un signal numérique ne peut être que 1 (unité) ou 0 (zéro), tandis qu'un signal analogique peut prendre un nombre infini de valeurs.

Signaux numériques et analogiques

Explication:


Capacité Est une valeur qui caractérise la qualité, la précision et la sensibilité de l'entrée analogique. Cela ne semble pas très clair. Un peu de pratique: un ADC 10 bits, enregistre des informations analogiques à partir d'un port dans 10 bits de mémoire, en d'autres termes, un signal numérique changeant en douceur est reconnu par un microcontrôleur comme une valeur numérique de 0 à 1024.

Un CAN 12 bits voit le même signal, mais avec une précision plus élevée - sous la forme de 0 à 4096, ce qui signifie que les valeurs mesurées du signal d'entrée seront 4 fois plus précises. Pour comprendre d'où proviennent 1024 et 4096, augmentez simplement 2 à la puissance de la profondeur de bits ADC (2 à la puissance de 10, pour 10 bits, etc.)

Pour contrôler la puissance de charge, des canaux PWM sont à votre disposition, ils peuvent être utilisés, par exemple, pour régler la luminosité, la température ou le régime moteur. Dans le même contrôleur 328, il y en a 6.

En général, la structure du microcontrôleur AVR est représentée dans le schéma:

Structure du microcontrôleur AVR

Tous les nœuds sont signés, mais certains noms peuvent ne pas être aussi évidents. Regardons leur notation.

  • ALU - dispositif arithmétique et logique. Nécessaire pour effectuer le calcul.

  • Registres à usage général (RON) - Les registres qui peuvent recevoir des données et les stocker pendant que le microcontrôleur est connecté à l'alimentation, sont effacés après un redémarrage. Servent de cellules temporaires pour les opérations de données.

  • Interruptions - quelque chose comme un événement qui se produit en raison d'influences internes ou externes sur le microcontrôleur - débordement de la minuterie, interruption externe de la broche MK, etc.

  • Jtag - une interface pour la programmation en circuit sans retirer le microcontrôleur de la carte.

  • Flash, RAM, EEPROM - types de mémoire - programmes, données de travail temporaires, stockage à long terme indépendant de l'alimentation du microcontrôleur, selon l'ordre des noms.

  • Minuteries et compteurs - les nœuds les plus importants du microcontrôleur, dans certains modèles leur nombre peut aller jusqu'à une douzaine. Ils sont nécessaires pour signaler le nombre de mesures, respectivement, les intervalles de temps, et les compteurs augmentent leur valeur pour l'un des événements. Leur travail et son mode dépendent du programme, cependant, ces actions sont effectuées dans le matériel, c'est-à-dire parallèlement au texte principal du programme, ils peuvent provoquer une interruption (par débordement de la minuterie, en option) à tout stade de l'exécution du code, sur n'importe quelle ligne de celui-ci.

  • A / D (analogique / numérique) - ADC, nous avons déjà décrit sa fonction.

  • WatchDogTime (horloge de surveillance) - un oscillateur RC indépendant du microcontrôleur et même de son générateur d'horloge, qui compte un certain laps de temps et génère un signal de réinitialisation MK s'il fonctionnait, et se réveille s'il était en mode veille (économie d'énergie). Son fonctionnement peut être désactivé en mettant le bit WDTE à 0.


Les sorties du microcontrôleur sont plutôt faibles, ce qui signifie que le courant qui les traverse est généralement de 20 à 40 milliampères, ce qui est suffisant pour allumer la LED et les indicateurs LED. Pour une charge plus puissante, des amplificateurs de courant ou de tension sont nécessaires, par exemple, les mêmes transistors.


De quoi avez-vous besoin pour commencer à étudier les microcontrôleurs?

Vous devez d'abord acheter le microcontrôleur lui-même. Le rôle du premier microcontrôleur peut être n'importe quel Attiny2313, Attiny85, Atmega328 et autres. Il est préférable de choisir le modèle décrit dans les leçons dans lesquelles vous serez engagé.

Attiny2313

La prochaine chose dont vous avez besoin est programmeur. Il est nécessaire de télécharger le firmware dans la mémoire de MK, il est considéré comme le moins cher et le plus populaire USBASP.

Programmeur

Un programmeur un peu plus cher, mais pas moins commun AVRISP MKII, que vous pouvez faire vous-même - à partir d'une planche régulière Arduino

Programmeur AVRISP MKII

Une autre option consiste à les flasher USB UART adaptateur, qui se fait généralement sur l'un des convertisseurs: FT232RL, CH340, PL2303 et CP2102.

Adaptateur USB-UART

Dans certains cas, des microcontrôleurs AVR avec prise en charge matérielle USB sont utilisés pour un tel convertisseur; il n'y a pas trop de tels modèles. En voici quelques uns:

  • ATmega8U2;

  • ATmega16U2;

  • ATmega32U2.

Microcontrôleur AVR matériel USB

Un seul «mais» - le chargeur de démarrage UART doit d'abord être chargé dans la mémoire du microcontrôleur. Bien sûr, pour cela, vous avez toujours besoin d'un programmeur pour microcontrôleurs AVR.


Intéressant: Bootloader - Il s'agit d'un programme normal pour un microcontrôleur, mais avec une tâche inhabituelle - après son lancement (connexion à l'alimentation), il attend pendant un certain temps que le firmware puisse y être chargé. L'avantage de cette méthode est que vous pouvez flasher n'importe quel adaptateur USB-UART, et ils sont très bon marché. L'inconvénient est que le firmware prend beaucoup de temps à charger.

Pour le travail UART (RS-232) interface dans les microcontrôleurs AVR alloué un registre UDR entier (Registre de données UART). UCSRA (paramètres de bits d'émetteur-récepteur RX, TX), UCSRB et UCSRС - un ensemble de registres responsables des paramètres d'interface dans leur ensemble.


Comment puis-je écrire des programmes?

En plus du programmeur, pour écrire et télécharger le programme, vous avez besoin d'un environnement de développement IDE. Vous pouvez bien sûr écrire du code dans le bloc-notes, passer par des compilateurs, etc. Pourquoi est-il nécessaire alors qu'il existe d'excellentes options toutes faites? L'un des plus puissants est peut-être l'IAR, mais il est payé.

L'IDE Atmel officiel est AVR Studio, qui a été renommé Atmel studio sur la version 6. Il prend en charge tous les microcontrôleurs AVR (8, 32, xMega), détecte automatiquement les commandes et aide à entrer, met en évidence la syntaxe correcte et bien plus encore.Avec son aide, vous pouvez flasher MK.

Le plus courant est C AVR, alors trouvez un tutoriel dessus, il y a des tonnes d'options en russe, et l'un d'eux est Khartov V.Ya. «Microcontrôleurs AVR. Atelier pour débutants. "

Programmation du microcontrôleur

La façon la plus simple d'apprendre l'AVR

Achetez ou faites-le vous-même Carte Arduino. Le projet arduino est conçu spécifiquement à des fins éducatives. Il a des dizaines de tableaux avec différentes formes et nombre de contacts. La chose la plus importante dans Arduino est que vous achetez non seulement un microcontrôleur, mais une carte de débogage à part entière soudée à une carte de circuit imprimé textolite de haute qualité, recouverte d'un masque et de composants SMD montés.

Les plus courants sont Arduino Nano et Arduino UNO, ils sont essentiellement identiques, sauf que le "Nano" est environ 3 fois plus petit que le "Uno".

Arduino uno

Quelques faits:

  • Arduino peut être programmé dans un langage standard - «C AVR»;

  • son propre - câblage;

  • environnement de développement standard - Arduino IDE;

  • pour vous connecter à un ordinateur, il vous suffit de connecter le câble USB à la prise micro-USB de la carte Arduino nano, d'installer les pilotes (cela se produira probablement automatiquement, sauf lorsque le convertisseur sur le CH340, je n'avais pas de pilotes sur Win 8.1, je devais le télécharger, mais il Cela n'a pas pris beaucoup de temps.) Ensuite, vous pouvez télécharger vos «croquis»;

  • «Sketches» est le nom des programmes pour arduino.

Expériences avec Arduino UNO

Conclusions

Les microcontrôleurs seront une excellente aide dans votre pratique de la radio amateur, qui vous permettra de découvrir le monde de l'électronique numérique, de concevoir vos propres instruments de mesure et équipements domotiques.

Voir aussi sur e.imadeself.com:

  • Microcontrôleurs PIC pour débutants
  • Programmation de microcontrôleurs pour débutants
  • Connecter et programmer Arduino pour les débutants
  • Microcontrôleurs programmables en JavaScript: lequel choisir, caractéristiques ...
  • Que sont les microcontrôleurs - objectif, appareil, logiciel

  •