🛠 GPIO et PWM sur le Teensy 4.1 : 55 broches en 3,3 V, ni 5 V tolérées ni traîne

Teensy 4.1 · debutant · Schéma : rangées de broches du Teensy 4.1 sur plaque de prototypage — 42 broches facilement accessibles sans breadboard, dont les broches supplémentaires 24, 25, 46, 47 et 53 absentes du Teensy 4.0 ; rappel « 3,3 V max, non tolérantes 5 V » sur chaque broche.

Objetivos

Aprovechar las E/S del Teensy 4.1: 55 pines en total, de los cuales 42 son fácilmente accesibles en una protoboard (frente a 40/24 en el 4.0). La fila adicional aporta pines PWM dedicados (24, 25, 46, 47, 53 figuran en el mapa PWM oficial). Vamos a leer un botón, generar una variación de luminosidad en PWM, e interiorizar las dos reglas de oro: ningún pin tolera más de 3,3 V (¡cambio radical con el Teensy 3.2!) y la corriente de salida recomendada es de 4 mA por pin (valor prudente de la página de producto).

Material

Las reglas eléctricas

Código completo

const uint8_t BTN = 24;     // broche exclusive du 4.1
const uint8_t LED_PWM = 6;  // broche FlexPWM
const uint8_t LED_STAT = 13;// LED orange : jamais INPUT_PULLUP ici

void setup {
  pinMode(BTN, INPUT_PULLUP);
  pinMode(LED_STAT, OUTPUT);
  analogWriteFrequency(LED_PWM, 1000); // 1 kHz, indépendant des autres groupes
  analogWrite(LED_PWM, 0);
}

void loop {
  if (digitalRead(BTN) == LOW) {
    // A0 (broche 14) : 0..1023 sur 0..3,3 V fixes
    int v = map(analogRead(14), 0, 1023, 0, 255);
    analogWrite(LED_PWM, v);
    digitalWrite(LED_STAT, HIGH);
  } else {
    analogWrite(LED_PWM, 0);
    digitalWrite(LED_STAT, LOW);
  }
  delay(10);
}

Verificación esperada

Botón soltado: LED apagada. Botón presionado: la luminosidad sigue al potenciómetro. El M7 a 600 MHz con sus memorias TCM hace que las escrituras de pines sean mínimas en ciclos de CPU — para un parpadeo a alta frecuencia, prefiera digitalToggle (una sola escritura de bit compilada).

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales