🛠 Logger sur carte SD via le port SDIO natif du Teensy 4.1

Teensy 4.1 · intermediaire · Schéma : le connecteur SD monté sous le Teensy 4.1, relié au bus SDIO 4 bits indépendant du SPI ; à côté, le contrôleur i.MX RT1062 avec ses 32 canaux DMA généraux et le DMA dédié du périphérique SD.

Objetivos

El Teensy 4.1 es la única tarjeta de la familia que dispone de un conector SD debajo de la placa, conectado a un puerto SDIO nativo de 4 bits: sin compartir el bus SPI, sin cablear ningún pin de selección de chip (chip-select) y con un DMA dedicado en el periférico. Este tutorial configura un registrador de mediciones capaz de escribir de forma continua sin bloquear el resto del programa.

Material

Puntos clave

Código completo

#include <SD.h>

const uint8_t LED = 13;

void setup {
  Serial.begin(9600);
  while (!Serial && millis < 3000);
  if (!SD.begin(BUILTIN_SDCARD)) {
    Serial.println("SD absente (FAT32, <= 32 Go)");
    while (true) { digitalWrite(LED, !digitalRead(LED)); delay(200); }
  }
  Serial.println("SD prête sur SDIO");
}

void loop {
  File log = SD.open("log.txt", FILE_WRITE);
  if (log) {
    log.print(millis);
    log.print(" A0=");
    log.println(analogRead(14));
    log.close;
  }
  delay(1000);
}

Verificación esperada

SD lista en SDIO se muestra en la primera ejecución; después de reconectar, log.txt contiene una línea por segundo. Retira la tarjeta y reconecta la alimentación: el LED 13 parpadea rápidamente, señal de que SD.begin ha fallado — tu programa de respaldo está haciendo su trabajo.

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales