Beschreibung
Der Teensy 4.1 verfügt, wie auch der 4.0, über einen ARM Cortex-M7 Prozessor mit 600 MHz, mit einem NXP iMXRT1062 Chip, dem schnellsten Mikrocontroller, der heute erhältlich ist - zehnmal schneller als der Teensy 3.2! Der NXP iMXRT1062 ist ein 'Cross-Over'-Prozessor, der die Funktionalität eines Mikrocontrollers hat, bei den Geschwindigkeiten eines Mikrocomputers. Er ist perfekt, wenn Sie tonnenweise Flash und RAM benötigen, um viele Daten zu crunchen, oder wenn Sie zwei Full-Speed-USB-Ports benötigen.
Der Teensy 4.1 kommt mit einem viermal größeren Flash-Speicher als der 4.0 und zwei neuen Steckplätzen, um optional mehr Speicher hinzuzufügen. Der Teensy 4.1 hat den gleichen Formfaktor wie der Teensy 3.6 (2,4" x 0,7"), bietet aber eine Tonne mehr E/A-Fähigkeiten, einschließlich eines 100MB-Ethernet-PHY, SD-Karten-Sockel (SDIO angeschlossen) und USB-Host-Port. Bitte sehen Sie sich die Teensy 4.0 Seite für allgemeine Spezifikationen und Funktionen an.
Speicher
Auf der Unterseite des Teensy 4.1 befinden sich Plätze zum Einlöten von 2 Speicherchips. Der kleinere Platz ist für einen PSRAM SOIC-8 Chip gedacht, den Adafruit auf Lager hat. Der größere Platz ist für einen QSPI-Flash-Speicher vorgesehen.
USB-Host
Der USB-Host-Anschluss des Teensy 4.1 ermöglicht den Anschluss von USB-Geräten wie Keyboards und MIDI-Musikinstrumenten. Um ein USB-Gerät anschließen zu können, werden eine 5-polige Stiftleiste und ein USB-Host-Kabel benötigt. Sie können auch eines dieser Kabel für den Anschluss an die USB-Pins verwenden
Stromverbrauch & Management
Bei einer Taktfrequenz von 600 MHz verbraucht der Teensy 4.1 ca. 100 mA Strom und bietet Unterstützung für dynamische Taktskalierung. Im Gegensatz zu herkömmlichen Mikrocontrollern, bei denen eine Änderung der Taktfrequenz zu falschen Baudraten und anderen Problemen führt, sind die Hardware des Teensy 4.1 und die Software-Unterstützung für Arduino-Timing-Funktionen so ausgelegt, dass dynamische Geschwindigkeitsänderungen möglich sind. Serielle Baudraten, Audio-Streaming-Sampleraten und Arduino-Funktionen wie delay() und millis() sowie Teensyduino-Erweiterungen wie IntervalTimer und elapsedMillis arbeiten weiterhin korrekt, während die CPU ihre Geschwindigkeit ändert. Teensy 4.1 bietet auch eine Funktion zum Abschalten der Stromversorgung. Durch Anschluss eines Tasters an den On/Off-Pin kann die 3,3-V-Stromversorgung durch Halten des Tasters für fünf Sekunden komplett abgeschaltet und durch einen kurzen Tastendruck wieder eingeschaltet werden. Wenn eine Knopfzelle an VBAT angeschlossen wird, behält die RTC des Teensy 4.1 auch bei ausgeschalteter Stromversorgung Datum und Uhrzeit im Auge. Teensy 4.1 kann auch übertaktet werden, weit über 600MHz!
Der ARM Cortex-M7 bringt viele leistungsstarke CPU-Funktionen in eine echte Echtzeit-Mikrocontroller-Plattform. Der Cortex-M7 ist ein Dual-Issue-Superscaler-Prozessor, d.h. der M7 kann zwei Befehle pro Taktzyklus ausführen, und das bei 600MHz! Natürlich hängt die gleichzeitige Ausführung von zwei Befehlen von der Anordnung der Befehle und Register durch den Compiler ab. Erste Benchmarks haben gezeigt, dass von Arduino kompilierter C++ Code dazu neigt, zwei Instruktionen in etwa 40% bis 50% der Zeit auszuführen, während er numerisch intensive Arbeit mit Integern und Zeigern ausführt. Der Cortex-M7 ist der erste ARM-Mikrocontroller, der Verzweigungsvorhersage verwendet. Bei M4 benötigen Schleifen und anderer Code, der viel verzweigt, drei Taktzyklen. Beim M7 entfernt die Verzweigungsvorhersage diesen Overhead, nachdem eine Schleife ein paar Mal ausgeführt wurde, so dass die Verzweigungsanweisung in nur einem Taktzyklus ausgeführt werden kann.
Tightly Coupled Memory ist eine spezielle Funktion, die dem Cortex-M7 einen schnellen Single-Cycle-Zugriff auf den Speicher über ein Paar 64 Bit breite Busse ermöglicht. Der ITCM-Bus bietet einen 64-Bit-Pfad zum Abrufen von Befehlen. Der DTCM-Bus ist eigentlich ein Paar von 32-Bit-Pfaden, die es dem M7 ermöglichen, bis zu zwei separate Speicherzugriffe im selben Zyklus durchzuführen. Diese extrem schnellen Busse sind vom AXI-Hauptbus des M7 getrennt, der auf andere Speicher und Peripheriegeräte zugreift. Auf 512 Speicher kann als eng gekoppelter Speicher zugegriffen werden. Teensyduino weist Ihren Arduino-Skizzencode automatisch dem ITCM zu und alle Nicht-Malloc-Speicherverwendung dem schnellen DTCM, es sei denn, Sie fügen zusätzliche Schlüsselwörter hinzu, um die optimierte Vorgabe zu überschreiben. Speicher, auf den nicht über die eng gekoppelten Busse zugegriffen wird, ist für den DMA-Zugriff durch Peripheriegeräte optimiert. Da der Großteil des M7-Speicherzugriffs über die beiden eng gekoppelten Busse erfolgt, haben leistungsfähige DMA-basierte Peripheriegeräte einen ausgezeichneten Zugriff auf den Nicht-TCM-Speicher für hocheffiziente I/O.
Der Cortex-M7-Prozessor von Teensy 4.1 verfügt über eine Fließkommaeinheit (FPU), die sowohl 64-Bit "double" als auch 32-Bit "float" unterstützt. Mit der M4-FPU auf Teensy 3.5 & 3.6, und auch Atmel SAMD51 Chips, wird nur 32 Bit "float" hardwarebeschleunigt. Jegliche Verwendung von Double, Double-Funktionen wie log(), sin(), cos() bedeutet langsame softwareimplementierte Mathematik. Teensy 4.1 führt alle diese Funktionen mit FPU-Hardware aus.
Informationen, Dokumentation und Spezifikationen finden Sie auf der Teensy-Website. Bitte schauen Sie sich diese für weitere Details an!
Hinweis: Teensy 4.1 enthält keine Header, ein USB-Kabel oder einen Hub.
Technische Daten
- ARM Cortex-M7 mit 600 MHz
- 1024K RAM (512K sind eng gekoppelt)
- 2048K Flash (64K reserviert für Recovery & EEPROM-Emulation)
- 2 USB-Anschlüsse, beide 480 MBit/sec
- 3 CAN-Bus (1 mit CAN FD)
- 2 I2S-Digital-Audio
- 1 S/PDIF-Digital-Audio
- 1 SDIO (4 Bit) nativ SD
- 3 SPI, alle mit 16-Wort-FIFO
- 3 I2C, alle mit 4 Byte FIFO
- 7 Seriell, alle mit 4-Byte-FIFO
- 32 Allzweck-DMA-Kanäle
- 31 PWM-Pins
- 40 digitale Pins, alle Interrupt-fähig
- 14 analoge Pins, 2 ADCs auf dem Chip
- Kryptographische Beschleunigung
- Zufallszahlengenerator
- RTC für Datum/Uhrzeit
- Programmierbare FlexIO
- Pixel-Verarbeitungspipeline
- Peripherie-Quertriggerung
- Power On/Off Management