El Teensy 4.1 es la versión más reciente de la increíblemente popular plataforma de desarrollo que cuenta con un procesador ARM Cortex-M7 a 600 MHz, con un chip NXP iMXRT1062, una memoria flash cuatro veces mayor que el 4.0 y dos nuevas ubicaciones para agregar opcionalmente más memoria. El Teensy 4.1 tiene el mismo tamaño y forma que el Teensy 3.6 (2,4 x 0,7 pulgadas) y proporciona una mayor capacidad de E/S, incluida una PHY Ethernet, un conector para tarjeta SD y un puerto host USB.
Cuando se ejecuta a 600 MHz, El Teensy 4.1 consume aproximadamente 100 mA de corriente y brinda soporte para el escalado dinámico del reloj. A diferencia de los microcontroladores tradicionales, donde cambiar la velocidad del reloj causa velocidades de baudios incorrectas y otros problemas, el hardware Teensy 4.1 y el software de Teensyduino para las funciones de temporización de Arduino están diseñados para permitir cambios de velocidad dinámicamente. Las velocidades de baudios en serie, las frecuencias de muestreo de transmisión de audio y las funciones de Arduino como delay() y millis(), y las extensiones de Teensyduino como IntervalTimer y elapsedMillis, continúan funcionando correctamente mientras la CPU cambia de velocidad. Teensy 4.1 también proporciona una función de apagado de energía. Al conectar un botón al pin de encendido/apagado, la fuente de alimentación de 3,3 V se puede desactivar completamente manteniendo presionado el botón durante cinco segundos y volver a encenderla presionando brevemente el botón. Si una celda de botón está conectada a VBAT, el RTC de Teensy 4.1 también continúa realizando un seguimiento de la fecha y la hora mientras la energía está apagada. Teensy 4.1 también se puede overclockear, ¡mucho más allá de 600 MHz! El ARM Cortex-M7 ofrece muchas funciones potentes de CPU a una verdadera plataforma de microcontrolador en tiempo real. El Cortex-M7 es un procesador superescalador de doble función, lo que significa que el M7 puede ejecutar dos instrucciones por ciclo de reloj, ¡a 600 MHz! Por supuesto, la ejecución de dos simultáneamente depende de que el compilador ordene las instrucciones y los registros. Los puntos de referencia iniciales han demostrado que el código C++ compilado por Arduino tiende a lograr dos instrucciones entre el 40% y el 50% del tiempo mientras realiza un trabajo numérico intensivo utilizando números enteros y punteros. El Cortex-M7 es el primer microcontrolador ARM que utiliza predicción de ramas. En M4, los bucles y otros códigos que se ramifican mucho toman tres ciclos de reloj. Con M7, después de que un bucle se haya ejecutado varias veces, la predicción de bifurcación elimina esa sobrecarga, lo que permite que la instrucción de bifurcación se ejecute en un solo ciclo de reloj. La memoria estrechamente acoplada es una característica especial que permite a Cortex-M7 un acceso rápido de ciclo único a memoria utilizando un par de buses de 64 bits de ancho. El bus ITCM proporciona una ruta de 64 bits para recuperar instrucciones. El bus DTCM es en realidad un par de rutas de 32 bits, lo que permite a M7 realizar hasta dos accesos a memoria separados en el mismo ciclo. Estos buses de extremadamente alta velocidad están separados del bus AXI principal de M7, que accede a otras memorias y periféricos. Se puede acceder a 512 de la memoria como memoria estrechamente acoplada. Teensyduino asigna automáticamente su código de boceto Arduino a ITCM y todo el uso de memoria que no sea malloc al DTCM rápido, a menos que agregue palabras clave adicionales para anular el valor predeterminado optimizado. La memoria a la que no se accede en los buses estrechamente acoplados está optimizada para el acceso DMA por parte de periféricos. Debido a que la mayor parte del acceso a la memoria del M7 se realiza en los dos buses estrechamente acoplados, los potentes periféricos basados en DMA tienen un excelente acceso a la memoria que no es TCM para una E/S altamente eficiente. El procesador Cortex-M7 de Teensy 4.1 incluye un punto flotante. unidad (FPU) que admite 64 bits "doble" y 32 bits "flotante". Con la FPU de M4 en Teensy 3.5 y 3.6, y también los chips Atmel SAMD51, solo la flotación de 32 bits se acelera por hardware. Cualquier uso de funciones dobles, dobles como log(), sin(), cos() significa matemáticas implementadas por software lento. Teensy 4.1 ejecuta todo esto con hardware FPU.
Nota: tenga en cuenta que Teensy 4.1 no incluye encabezados y deberá comprarlo por separado y soldarlo usted mismo.
ARM Cortex-M7 a 600MHz
1024K RAM (512K están estrechamente acoplados)
Flash de 8 Mbytes (64 K reservados para recuperación y emulación de EEPROM)
Puerto host USB
2 chips más memoria de programa
55 pines de E/S en total
3 CAN Bus (1 con CAN FD)
2 Audio Digital I2S
1 audio digital S/PDIF
1 SD nativa SDIO (4 bits)
3 SPI, todos con 16 palabras FIFO
7 señales de almohadilla SMT inferior
8 puertos serie
32 canales DMA de uso general
35 pines PWM
42 E/S compatibles con la placa de pruebas
18 entradas analógicas
Aceleración criptográfica
Generador de números aleatorios
RTC para fecha/hora
FlexIO programable
Canal de procesamiento de píxeles
Disparo cruzado periférico
10 / 100 Mbit DP83825 PHY (6 pines)
Ranura para tarjeta microSD
Gestión de encendido/apagado