Arduino Zero a expliqué

Arduino Zero a expliqué
La plate-forme Arduino est devenue populaire pour le développement de projets électroniques. Les planches Arduino sont faciles à utiliser, et les programmer est simple, même pour les débutants. La carte Arduino Zero est une planche puissante qui propose des fonctionnalités avancées qui le distinguent d'autres conseils de la famille Arduino. Cet article est un aperçu de la carte Arduino Zero, de ses spécifications, des fonctionnalités, de l'environnement de programmation et des applications.
  1. Qu'est-ce qu'Arduino Zero
  2. Spécifications d'Arduino Zero
  3. Caractéristiques d'Arduino Zero
  4. Langue de programmation pour Arduino Zero
  5. Programmation de la carte Arduino Zero
  6. Avantages au cœur du bras
  7. Débogueur intégré à l'atmel
  8. Pouvoir
  9. Arduino Zero Power Pins
  10. Mémoire
  11. Entrée et sortie
  12. Conclusion

1. Qu'est-ce qu'Arduino Zero

La carte Arduino Zero est une carte basée à ATMEL SAMD21, qui est la première carte Arduino 32 bits. Il a été introduit en 2015 et est conçu pour fournir une plate-forme puissante aux développeurs pour créer des applications IoT. La carte est compatible avec le logiciel Arduino (IDE), et il peut être programmé en utilisant la même syntaxe Arduino que les autres planches Arduino. Il s'agit d'une carte très polyvalente qui peut être utilisée pour un large éventail d'applications, y compris la robotique, l'automatisation, et plus.

2. Spécifications d'Arduino Zero

La carte Arduino Zero a les spécifications suivantes:

Microcontrôleur ATSAMD21G18, 32 bits ARM® Cortex® M0+
Tension de fonctionnement 3.3V
Broches d'E / S numériques 20
Broches PWM 3, 4, 5, 6, 8, 9, 10, 11, 12, 13
Uart 2 (natif et programmation)
Broches d'entrée analogiques 6, canaux ADC 12 bits
Broches de sortie analogique 1, 10 bits DAC
Interruptions externes Toutes les broches sauf la broche 4
Courant CC par broche d'E / S 7 Ma
Mémoire flash 256 Ko
Sram 32 Ko
Eeprom Aucun. Voir documentation
Led_builtin 13
Vitesse de l'horloge 48 MHz
Longueur 68 mm
Largeur 53 mm
Lester 12 GR.

3. Caractéristiques d'Arduino Zero

La carte Arduino Zero offre plusieurs fonctionnalités qui en font une carte très polyvalente et puissante:

  • CORTE DE CORTEX DE LA ARM 32 BITS M0 +
  • Il a une mémoire flash de 256 kb et 32 ​​Ko de SRAM
  • Sorties ADC et 12 PWM 12 bits
  • USB 2.0 port hôte / périphérique
  • 3.Niveau logique 3V
  • Interface de débogage EDBG

4. Langue de programmation pour Arduino Zero

Le langage de programmation utilisé pour la programmation de la carte Arduino Zero est C++. La carte Arduino Zero peut être programmée à l'aide du logiciel Arduino (IDE), qui est disponible pour Windows, MacOS et Linux. Le logiciel fournit un éditeur de code, un compilateur et un moniteur en série, ce qui facilite l'écriture, compiler et déboguer le code.

5. Programmation de la carte Arduino Zero

Le téléchargement du code sur le zéro Arduino est différent des cartes Arduino normales. Comme Arduino Zero est basé sur SAMD21 qui est différent du microcontrôleur AVR, car la plupart des cartes Arduino populaires sont basées sur la structure AVR.

Arduino Zero est livré avec deux ports UART, l'un est indigène Et l'autre est un port de programmation. Pour télécharger des croquis à la montée, il est recommandé d'utiliser le port de programmation au lieu du port natif. Cela est dû à sa capacité à effacer les données sur la puce une fois le code téléchargé.

  • Port de programmation: Dans Arduino Zero, ce port utilise l'EDBG et peut programmer le conseil d'administration en utilisant l'USB-TO-SWD. Pour programmer Arduino Zero en utilisant ce port, sélectionnez-le dans la section Port IDE et connectez ce port avec le PC à l'aide d'un câble USB. Pour référence, ce port est plus proche de la prise DC comme mis en évidence dans l'image ci-dessus.
  • Port natif: Le port natif est connecté directement au microcontrôleur SAMD21 sur la carte. Pour utiliser le port natif, sélectionnez-le dans la section du port IDE et après cela, utilisez le câble USB pour créer la connexion d'Arduino Zero avec le PC à l'aide de ce port. Ce port est situé sur le côté gauche du bouton de réinitialisation comme mis en évidence dans l'image ci-dessus.

Comme d'autres conseils qui sont basés sur avrdude pour télécharger le code sur microcontrôleur. Le zéro Arduino s'appuie sur bossac Et le port de programmation Arduino Zero utilise openocd.

6. Avantages au cœur du bras

L'Arduino Zero est basé sur un noyau de bras 32 bits tandis que d'autres microcontrôleurs utilisent la structure AVR 8 bits. Le cœur du bras est plus avancé dans le travail que la structure AVR. Voici quelques points forts principaux:

  • Le noyau du bras a une horloge CPU à 48 MHz.
  • Arduino Zero Arm Core possède un contrôleur DMA de 12 canaux qui aide le CPU dans les tâches intensives de la mémoire.
  • Arduino Zero peut gérer les données de 4 octets très facilement en utilisant le noyau de bras 32 bits sur l'horloge CPU unique.
  • Il a 32 bits RTC avec un support d'horloge / calendrier.
  • Il est livré avec un 32 bits CRC Générateur.
  • Le Core ARM a un deux canaux (I2) Interface.
  • Il a un contrôleur tactile périphérique intégré (PTC).

7. Débogueur intégré à l'atmel

La carte Arduino Zero comprend un ATMEL Embedded Debugger (EDBG) puce qui offre une gamme de fonctions de débogage et de programmation.

La puce EDBG sur la carte Arduino Zero peut être utilisée pour programmer et déboguer la carte via le port de programmation, qui est le port le plus proche de la prise de courant DC. Le port de programmation utilise la puce EDBG comme convertisseur USB-TO SWD (SERIAL WIRE DEBUG), vous permettant de programmer et de déboguer le microcontrôleur SAMD21 à l'aide du protocole SWD.

En plus des fonctionnalités de programmation et de débogage, la puce EDBG sur la carte Arduino Zero fournit également une interface de port Virtual COM, vous permettant de communiquer avec la carte via le port USB natif, qui est le port le plus proche du bouton de réinitialisation. Cette interface peut être utilisée pour différents protocoles dans Arduino Zero comme UART, SPI et I2C.

8. Pouvoir

L'Arduino Zero possède deux sources de pouvoir différentes tout comme Arduino Uno:

  • Connecteur USB
  • Alimentation externe

La carte est suffisamment intelligente pour sélectionner automatiquement la source d'alimentation, ce qui vous permet de basculer facilement entre les modes d'alimentation.

Sources d'alimentation externes pour l'Arduino Zero

Les sources d'alimentation externes pour le zéro Arduino peuvent provenir d'un adaptateur ou d'une batterie AC-DC. Pour connecter une source d'alimentation externe, un 2.Le bouchon central-positif de 1 mm peut être utilisé avec une prise baril Arduino Zero DC. Nous pouvons également connecter directement des sources d'alimentation externes avec la broche VIN comme nous le faisons à Arduino Uno. Cela vous donne la flexibilité de choisir la source d'alimentation la plus appropriée pour votre projet.

Plage de tension pour le zéro Arduino

La tension zéro Arduino qu'il peut prendre comme mentionné sur sa fiche technique se situe entre 6 et 20 volts, mais il est recommandé de ne pas utiliser plus de 12V car il peut provoquer une surchauffe sur le régulateur de tension en raison d'une perte de tension excessive pendant la conversion à 3.3V.

L'opération en dehors de cette gamme pourrait entraîner des dommages à la Commission ou une sous-performance de votre projet. Il est important de noter que la tension de la source d'alimentation externe affectera les performances de la carte, il est donc essentiel de choisir la bonne source d'alimentation pour votre projet.

9. Arduino Zero Power Pins

Arduino Zero a une gamme diversifiée de sources d'énergie. Il peut être propulsé en utilisant les différentes sources:

Pin de vin: alimenter la carte

Lorsque vous utilisez une source d'alimentation externe pour faire fonctionner la carte Arduino Zero, la broche VIN est utile. Cette broche est responsable de la réception de l'entrée de tension à la carte. De plus, si vous fournissez une tension via la prise d'alimentation, vous pouvez également y accéder via cette broche.

PIN 5V: sortie de tension régulée

La carte Arduino Zero a un régulateur intégré qui sortira un 5V régulé à travers la broche 5V. Arduino Zero peut être directement connecté à 7V à 12V à l'aide d'une prise DC ou d'une broche VIN. Cette tension est ensuite passé par un régulateur qui le convertit en 5v. Ces 5V peuvent être utilisés comme source d'alimentation pour les capteurs de fonctionnement 5V. Cependant, veillez à ne pas fournir une tension via le 5V ou 3.Épingles 3V comme elle peut contourner le régulateur et endommager la carte.

3.Pin 3V: régulateur de bord

Le régulateur embarqué génère un 3.Alimentation 3V pour le conseil d'administration. Ce 3.3V est donné aux périphériques à bord, y compris le microcontrôleur SAMD21. Ce 3.3V peut également être sorti de l'embarqueur 3.PIN 3V et la quantité maximale de courant que nous pouvons tirer de Arduino Zero 3.La broche 3V est 800mA.

Pin GND: mise à la terre de la planche

La planche zéro a plusieurs broches au sol (GND) qui aident à établir une connexion à la terre. Vous pouvez les utiliser pour fonder les composants que vous connectez à la carte.

PIN IOREF: référence de tension

La broche IOREF fournit la référence de tension pour le fonctionnement du microcontrôleur. Cette broche aide la carte Arduino Zero pour sélectionner la meilleure source d'alimentation pour son travail. Il permet également au traducteur de tension qui aide la carte Arduino à travailler avec 3.3V.

dix. Mémoire

La distribution de mémoire d'Arduino Zero (SAMD21) est la suivante:

Mémoire Valeur
Mémoire flash 256 Ko
Sram 32 Ko
Eeprom 16 kb

11. Entrée et sortie

L'Arduino Zero a un total de 20 broches d'E / S à usage général. Voici quelques spécifications de ces broches GPIO:

  • Les broches Arduino Zero peuvent être contrôlées avec les fonctions de programmation Arduino telles que PinMode (), DigitalWrite () et DigitalRead ().
  • Les broches Arduino Zero PWM sont 3, 4, 5, 6, 8, 9, 10, 11, 12, 13. Pour accéder à ces broches analogwrite () La fonction est utilisée.
  • Toutes ces épingles fonctionnent à 3.3 volts.
  • Chacune de ces broches a une capacité maximale de courant de naufrage jusqu'à 7 mA. Ces broches ont également une résistance de traction interne de 20 à 50 kohms. Ces résistances sont déconnectées par défaut sur Arduino zéro.

Car sont quelques broches supplémentaires d'Arduino zéro avec une fonction spécialisée:

  • Entrées analogiques: A0 à A5 (6 canaux). Chacune de ces épingles a 12 bits de résolution. Par défaut, la référence est définie du sol à 3.3V, cependant la limite supérieure pour l'ADC peut être ajustée à l'aide de la fonction analogreference ().
  • Pins de sortie d'entrée numérique: 0 à 13.
  • Broches de sortie PWM: 0 à 13.
  • Interface SPI: Spi Mosi (broche 11), SPI Miso (broche 12), SPI SCK (broche 13).
  • Interface I2C: SDA (broche 20) et SCL (broche 21).
  • Interface UART: RX (broche 0) et TX (broche 1).
  • Interface USB native: Port USB natif (port de programmation).
  • Sortie DAC: DAC0 et DAC1.
  • Interface de débogage SWD: Swdio et swclk.
  • Réinitialiser la broche: Réinitialiser la broche.
  • Interruptions externes: Il est disponible sur toute la broche zéro Arduino sauf la broche 4.
  • TWI: Pin SDA / SCL. Il a un soutien à la communication TWI. Pour établir Twi, une bibliothèque de fils Arduino est utilisée.
  • Aref: Pin de tension de référence pour les valeurs analogiques. Peut être contrôlé à l'aide de la fonction analogueflée ().
  • Réinitialiser: Ceci est réinitialisé pour une ligne ou une planche. Il peut réinitialiser le microcontrôleur en portant sa ligne à faible.

Notez que certaines des broches ci-dessus ont également une double fonction. Par exemple, les broches 0 et 1 peuvent être utilisées comme E / S numérique ou comme interface UART. De même, les broches 11, 12 et 13 peuvent être utilisées comme interface SPI ou comme E / S numérique.

Conclusion

La carte Arduino Zero est une planche puissante et polyvalente qui est parfaite pour les débutants et les utilisateurs avancés. Avec ses fonctionnalités avancées, sa compatibilité avec le logiciel Arduino (IDE) et sa large gamme d'applications, la carte Arduino Zero est un excellent choix pour tous ceux qui cherchent à créer des projets électroniques. En suivant les étapes décrites dans ce guide, vous pouvez facilement commencer avec la carte Arduino Zero et commencer à construire vos propres projets.