Store

SparkFun

5.0 (1 review)

$49.11 |
In stock
5.0 (1 review)

Teensy 4.0 features an ARM Cortex-M7 processor at 600MHz, with a NXP iMXRT1062 chip, the fastest microcontroller available today. Teensy 4.0 is the same size...

Estimated Delivery
Arrives
Disclaimer
View Markdown
Secure checkout

Teensy 4.0 features an ARM Cortex-M7 processor at 600MHz, with a NXP iMXRT1062 chip, the fastest microcontroller available today. Teensy 4.0 is the same size and shape as Teensy 3.2, and retains compatibility with most of the pin functions on Teensy 3.2. The best part of this version of Teensy 4.0 is that it includes headers already attached. No soldering is required allowing you to get started as quickly as possible!

When running at 600 MHz, Teensy 4.0 consumes approximately 100mA current. Teensy 4.0 provides support for dynamic clock scaling. Unlike traditional microcontrollers, where changing the clock speed causes wrong baud rates and other issues, Teensy 4.0 hardware and Teensyduino's software support for Arduino timing functions are designed to allow dynamically speed changes. Serial baud rates, audio streaming sample rates, and Arduino functions like delay() and millis(), and Teensyduino's extensions like IntervalTimer and elapsedMillis, continue to work properly while the CPU changes speed. Teensy 4.0 also provides a power shut off feature. By connecting a pushbutton to the On/Off pin, the 3.3V power supply can be completely disabled by holding the button for 5 seconds, and turned back on by a brief button press. If a coin cell is connected to VBAT, Teensy 4.0's RTC also continues to keep track of date & time while the power is off. Teensy 4.0 also can also be overclocked, well beyond 600MHz!

The ARM Cortex-M7 brings many powerful CPU features to a true real-time microcontroller platform. Cortex-M7 is a dual-issue superscaler processor, meaning the M7 can execute two instructions per clock cycle, at 600MHz! Of course, executing two simultaneously depends upon the compiler ordering instructions and registers. Initial benchmarks have shown C++ code compiled by Arduino tends to achieve two instructions about 40% to 50% of the time while performing numerically intensive work using integers and pointers. Cortex-M7 is the first ARM microcontroller to use branch prediction. On M4, loops and other code which much branch take three clock cycles. With M7, after a loop has executed a few times, the branch prediction removes that overhead, allowing the branch instruction to run in only a single clock cycle.

Tightly Coupled Memory is a special feature which allows Cortex-M7 fast single cycle access to memory using a pair of 64 bit wide buses. The ITCM bus provides a 64 bit path to fetch instructions. The DTCM bus is actually a pair of 32 bit paths, allowing M7 to perform up to two separate memory accesses in the same cycle. These extremely high speed buses are separate from M7's main AXI bus, which accesses other memory and peripherals. 512K of memory can be accessed as tightly coupled memory. Teensyduino automatically allocates your Arduino sketch code into ITCM and all non-malloc memory use to the fast DTCM, unless you add extra keywords to override the optimized default. Memory not accessed on the tightly coupled buses is optimized for DMA access by peripherals. Because the bulk of M7's memory access is done on the two tightly coupled buses, powerful DMA-based peripherals have excellent access to the non-TCM memory for highly efficient I/O.

Teensy 4.0's Cortex-M7 processor includes a floating point unit (FPU) which supports both 64 bit "double" and 32 bit "float". With M4's FPU on Teensy 3.5 & 3.6, and also Atmel SAMD51 chips, only 32 bit float is hardware accelerated. Any use of double, double functions like log(), sin(), cos() means slow software implemented math. Teensy 4.0 executes all of these with FPU hardware.

Jargon buster

Plain-language definitions for the technical terms used above.

baud
Baud is the signalling rate of a serial connection, often used as the speed setting for UART communication. Matching the baud rate matters because both connected devices must use the same setting for readable data.
FPU
A floating-point unit is hardware inside a processor that speeds up calculations with decimal numbers. This helps when projects use maths-heavy tasks such as motion sensing, filtering sensor readings, or audio processing.
Headers
Rows of metal pins used to plug a module into a breadboard or connect it with jumper wires. Pre-soldered headers make the module easier to use straight away without needing to solder the pins yourself.
microcontroller
A microcontroller is a small computer on a chip that runs your program and controls connected inputs and outputs. For this product, it is the part that reads buttons and sensors, drives the display and speaker, and communicates over Bluetooth.
RTC
A Real-Time Clock keeps track of time even when the main processor is asleep or powered down, usually with a small backup battery. It matters for data logging and tracking projects that need accurate timestamps.
SAMD51
A family of 32-bit microcontroller chips used to run the main program on a board. In this kit it handles the display-driving work, so it matters for performance when showing animations and graphics on an LED matrix.

W25Q16JV-DTR Flash Memory Datasheet

Datasheet · 2.0 MB · Click any page to view full size

Download PDF

Supplier page — sparkfun.com

Supplier Description · 1.0 MB · Click any page to view full size

Download PDF
Stella
Stella Expert

Ask me anything about this product

Maddy, co-founder of Little Bird

Need help? We're here for you!

Hi, I'm Maddy. My team and I are ready to help with your order or any questions.