Description
Caractéristiques
- ARM Cortex-M7 à 600 MHz
- 2 ports USB, tous deux 480 Mbit/s
- Flash 2048K (64K réservés à la récupération et à l'émulation EEPROM)
- 1024 Ko de RAM (512 Ko sont étroitement couplés)
- 2 audionumériques I2S
- 3 bus CAN (1 avec CAN FD)
- 1 audio numérique S/PDIF
- 3 SPI, tous avec FIFO de 16 mots
- 1 SDIO (4 bits) SD native
- 3 I2C, tous avec FIFO 4 octets
- 7 séries, toutes avec FIFO 4 octets
- 32 canaux DMA à usage général
- 31 broches PWM
- 40 broches numériques, toutes interruptions
- 14 broches analogiques, 2 ADC sur puce
- Générateur de nombres aléatoires
- Accélération cryptographique
- Pipeline de traitement des pixels
- RTC pour la date/heure
- Déclenchement croisé périphérique
- FlexIO programmable
- Gestion tout ou rien de l'alimentation
Emplacement USB
Le port USB Host du Teensy 4.1 vous permet de connecter des périphériques USB tels que des claviers et des instruments de musique MIDI. Un connecteur à 5 broches et un câble hôte USB sont nécessaires pour connecter un périphérique USB. Vous pouvez également utiliser l'un de ces câbles pour vous connecter aux broches USB.
Mémoire
Au bas du Teensy 4.1 se trouvent des emplacements pour souder 2 puces mémoire. La plus petite zone est destinée à une puce PSRAM SOIC-8. L'emplacement le plus grand est destiné à la mémoire flash QSPI.
Consommation d'énergie &; Gestion
Lorsqu'il fonctionne à 600 MHz, le Teensy 4.1 consomme environ 100 mA d'énergie et prend en charge la mise à l'échelle dynamique de l'horloge. Contrairement aux microcontrôleurs traditionnels, où la modification de la vitesse d'horloge entraîne des débits en bauds incorrects et d'autres problèmes, le matériel Teensy 4.1 et la prise en charge logicielle de Teensyduino pour les fonctions de synchronisation Arduino sont conçus pour permettre des changements de vitesse dynamiques. Les débits en bauds série, les fréquences d'échantillonnage du streaming audio et les fonctions Arduino telles que delay() et millis(), ainsi que les extensions Teensyduino telles que IntervalTimer et elapsedMillis, continuent de fonctionner correctement à mesure que la vitesse du processeur change. Teensy 4.1 offre également une fonction de mise hors tension. En connectant un bouton-poussoir à la broche On/Off, l'alimentation 3,3 V peut être complètement coupée en appuyant sur le bouton pendant cinq secondes et réactivée en appuyant brièvement sur le bouton. Lorsqu'une pile bouton est connectée au VBAT, le RTC du Teensy 4.1 continue également de maintenir la date et l'heure lorsque l'alimentation est coupée. Teensy 4.1 peut également être overclocké, bien au-dessus de 600 MHz !
L'ARM Cortex-M7 apporte de nombreuses fonctionnalités de processeur puissantes à une plate-forme de microcontrôleur précise en temps réel. Le Cortex-M7 est un processeur superscaler à double problème, ce qui signifie que le M7 peut exécuter deux instructions par cycle d'horloge, à 600 MHz ! Bien entendu, l’exécution simultanée de deux instructions dépend de l’ordre des instructions et des registres par le compilateur. Les premiers tests ont montré que le code C++ compilé par Arduino a tendance à exécuter deux instructions environ 40 à 50 % du temps lors de l'exécution d'un travail numérique intensif utilisant des entiers et des pointeurs. Le Cortex-M7 est le premier microcontrôleur ARM à utiliser la prédiction de branchement. Pour M4, les boucles et tout autre code utilisant le branchement, cela peut prendre trois cycles d'horloge. Avec M7, après qu'une boucle a été exécutée plusieurs fois, la prédiction de branchement supprime cette surcharge, permettant à l'instruction de branchement de s'exécuter en un seul cycle d'horloge.
La mémoire étroitement couplée est une fonctionnalité unique qui permet au Cortex-M7 de fournir un accès rapide à la mémoire en un seul cycle à l'aide d'une paire de bus de 64 bits de large. Le bus ITCM fournit un chemin de 64 bits pour la récupération des instructions. Le bus DTCM est une paire de chemins de 32 bits, permettant au M7 d'effectuer jusqu'à deux accès mémoire distincts dans le même cycle. Ces bus extrêmement rapides diffèrent du bus principal AXI du M7, qui permet d'accéder à d'autres mémoires et périphériques. 512 de mémoire sont accessibles en tant que mémoire étroitement couplée. Teensyduino mappe automatiquement votre code d'esquisse Arduino sur ITCM et toute l'utilisation de la mémoire non malloc sur le DTCM rapide, à moins que vous n'ajoutiez de nouveaux mots-clés pour remplacer la valeur par défaut optimisée. La mémoire non utilisée sur les bus étroitement couplés est optimisée pour l'accès DMA par les périphériques. Étant donné que la majeure partie de l'accès à la mémoire du M7 s'effectue sur les deux bus étroitement couplés, les puissants périphériques basés sur DMA disposent d'un excellent accès à la mémoire non TCM pour des E/S très efficaces.
Le processeur Cortex-M7 du Teensy 4.1 contient une unité à virgule flottante (FPU) qui prend en charge à la fois le « double » 64 bits et le « float » 32 bits. Avec le FPU de M4 sur Teensy 3.5 et 3.6, ainsi que les puces Atmel SAMD51, seul le matériel flottant 32 bits est accéléré. Toute utilisation de fonctions doubles, doubles comme log(), sin(), cos() signifie des mathématiques lentes implémentées par logiciel. Teensy 4.1 exécute tout cela avec du matériel FPU.
Pour plus d'informations, consultez la page officielle Teensy 4.1 ici .