clignotante.ino

Arduino UNO R3 · Fichier : clignotante.ino · Langage : Arduino · Usage : Faire clignoter la LED intégrée à 1 Hz

Un premier programme pour vérifier que la carte fonctionne : la LED intégrée de la broche 13 clignote une fois par seconde. Le code utilise millis() plutôt que delay() pour rester réactif, et affiche chaque changement d'état sur le moniteur série à 9600 bauds.

Matériel requis

Une Arduino Uno R3 (ATmega328P, 5 V, 16 MHz) alimentée par USB ou jack 7-12 V. Aucun composant externe nécessaire, la LED de la carte suffit.

Câblage

Rien à câbler : la LED utilisateur est déjà reliée à la broche 13 (via une résistance interne).

Fonctionnement

La boucle compare millis() (temps en ms depuis le démarrage) à la dernière bascule. Toutes les secondes, l'état de la broche est inversé avec digitalWrite et un message est envoyé sur le port série.

Exécution

Dans l'Arduino IDE, choisissez la carte « Arduino Uno » et le port série correspondant, puis cliquez sur Téléverser. Ouvrez le moniteur série à 9600 bauds pour suivre les messages.

Variantes

Remplacez millis() par delay(500) pour une version plus simple, ou branchez une LED externe avec résistance 330 Ω sur une autre broche.

clignotante.ino

// Clignotement de la LED intégrée (broche 13 sur la plupart des cartes Arduino).
const int LED = 13;      // LED_BUILTIN est aussi définie par le core
const long PERIODE = 1000; // ms entre deux changements d'état

bool etat = false;
unsigned long dernierChangement = 0;

void setup() {
  pinMode(LED, OUTPUT);
  Serial.begin(9600);
  Serial.println(F("Clignotement demarre"));
}

void loop() {
  unsigned long maintenant = millis();
  if (maintenant - dernierChangement >= PERIODE) {
    dernierChangement = maintenant;
    etat = !etat;
    digitalWrite(LED, etat ? HIGH : LOW);
    Serial.println(etat ? F("LED ON") : F("LED OFF"));
  }
  // millis() et non delay() : la boucle reste libre pour d'autres taches.
}

← Retour à la fiche