Beschreibung
Spezifikationen
- ARM Cortex-M7 bei 600 MHz
- 2 USB-Anschlüsse, beide 480 MBit/sec
- 2048 K Flash (64 K reserviert für Wiederherstellung und EEPROM-Emulation)
- 1024 KB RAM (512 KB sind eng gekoppelt)
- 2 I2S Digitales Audio
- 3 CAN-Bus (1 mit CAN FD)
- 1 S/PDIF Digital-Audio
- 3 SPI, alle mit 16-Wort-FIFO
- 1 SDIO (4 Bit) native SD
- 3 I2C, alle mit 4-Byte-FIFO
- 7 Seriell, alle mit 4 Byte FIFO
- 32 allgemeine DMA-Kanäle
- 31 PWM-Pins
- 40 digitale Pins, alle unterbrechungsfähig
- 14 analoge Pins, 2 ADCs auf dem Chip
- Zufallszahlengenerator
- Kryptografische Beschleunigung
- Pixelverarbeitungs-Pipeline
- RTC für Datum/Uhrzeit
- Periphere Kreuztriggerung
- Programmierbares FlexIO
- Ein-/Ausschaltverwaltung
USB-Host
Über den USB-Host-Anschluss von Teensy 4.1 können Sie USB-Geräte wie Tastaturen und MIDI-Musikinstrumente anschließen. Um ein USB-Gerät anschließen zu können, sind ein 5-poliger Header und ein USB-Host-Kabel erforderlich. Sie können auch eines dieser Kabel verwenden, um eine Verbindung zu den USB-Pins herzustellen.
Erinnerung
Auf der Unterseite von Teensy 4.1 befinden sich Lötstellen für zwei Speicherchips. Der kleinere Bereich ist für einen PSRAM SOIC-8-Chip vorgesehen. Der größere Bereich ist für einen QSPI-Flash-Speicher vorgesehen.
Stromverbrauch und -verwaltung
Bei 600 MHz verbraucht der Teensy 4.1 etwa 100 mA Strom und unterstützt dynamische Taktskalierung. Anders als bei herkömmlichen Mikrocontrollern, bei denen eine Änderung der Taktrate zu falschen Baudraten und anderen Problemen führt, sind die Hardware des Teensy 4.1 und die Softwareunterstützung von Teensyduino für Arduino-Timing-Funktionen so ausgelegt, dass dynamische Geschwindigkeitsänderungen möglich sind. Serielle Baudraten, Audio-Streaming-Abtastraten und Arduino-Funktionen wie delay() und millis() sowie Teensyduino-Erweiterungen wie IntervalTimer und elapsedMillis funktionieren weiterhin ordnungsgemäß, während die CPU die Geschwindigkeit ändert. Teensy 4.1 bietet außerdem eine Funktion zum Abschalten der Stromversorgung. Durch Anschließen eines Druckknopfs an den Ein-/Aus-Pin kann die 3,3-V-Stromversorgung vollständig deaktiviert werden, indem der Knopf fünf Sekunden lang gedrückt gehalten wird, und durch einen kurzen Tastendruck wieder eingeschaltet werden. Wenn eine Knopfzelle an VBAT angeschlossen ist, behält die RTC von Teensy 4.1 auch weiterhin Datum und Uhrzeit im Auge, während die Stromversorgung ausgeschaltet ist. Teensy 4.1 kann darüber hinaus auch übertaktet werden, weit über 600 MHz!
Der ARM Cortex-M7 bringt viele leistungsstarke CPU-Funktionen auf eine präzise Echtzeit-Mikrocontroller-Plattform. Der Cortex-M7 ist ein Dual-Issue-Superscaler-Prozessor, d. h. der M7 kann zwei Befehle pro Taktzyklus bei 600 MHz ausführen! Natürlich hängt die gleichzeitige Ausführung von zwei Befehlen von der Reihenfolge der Befehle und Register durch den Compiler ab. Erste Benchmarks haben gezeigt, dass C++-Code, der von Arduino kompiliert wurde, bei rechenintensiver Arbeit mit Ganzzahlen und Zeigern in etwa 40 bis 50 % der Fälle zwei Befehle ausführt. Der Cortex-M7 ist der erste ARM-Mikrocontroller, der Verzweigungsvorhersage verwendet. Bei M4, Schleifen und anderem Code, der Verzweigungen verwendet, kann dies drei Taktzyklen dauern. Bei M7 entfernt die Verzweigungsvorhersage diesen Overhead, nachdem eine Schleife einige Male ausgeführt wurde, sodass der Verzweigungsbefehl in nur einem einzigen Taktzyklus ausgeführt werden kann.
Eng gekoppelter Speicher ist eine einzigartige Funktion, die Cortex-M7 schnellen Einzelzykluszugriff auf den Speicher mithilfe eines Paars 64-Bit breiter Busse ermöglicht. Der ITCM-Bus bietet einen 64-Bit-Pfad zum Abrufen von Anweisungen. Der DTCM-Bus ist ein Paar 32-Bit-Pfade, die es M7 ermöglichen, bis zu zwei separate Speicherzugriffe im selben Zyklus durchzuführen. Diese extrem schnellen Busse unterscheiden sich vom Haupt-AXI-Bus von M7, der auf andere Speicher und Peripheriegeräte zugreift. 512 Speicher können als eng gekoppelter Speicher aufgerufen werden. Teensyduino weist Ihren Arduino-Sketch-Code automatisch dem ITCM zu und verwendet den gesamten nicht-malloc-Speicher für den schnellen DTCM, sofern Sie keine neuen Schlüsselwörter hinzufügen, um die optimierte Standardeinstellung 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 Speicherzugriffs von M7 über die beiden eng gekoppelten Busse erfolgt, haben leistungsstarke DMA-basierte Peripheriegeräte hervorragenden Zugriff auf den Nicht-TCM-Speicher für hocheffiziente E/A.
Der Cortex-M7-Prozessor von Teensy 4.1 enthält eine Gleitkommaeinheit (FPU), die sowohl 64-Bit-Double als auch 32-Bit-Float unterstützt. Mit der FPU von M4 auf Teensy 3.5 und 3.6 sowie Atmel SAMD51-Chips wird nur 32-Bit-Float hardwarebeschleunigt. Jede Verwendung von Double- oder Double-Funktionen wie log(), sin(), cos() bedeutet langsame, softwareimplementierte Mathematik. Teensy 4.1 führt all dies mit FPU-Hardware aus.
Weitere Informationen finden Sie auf der offiziellen Teensy 4.1-Seite hier .