clignotante.ino

Arduino Pro Mini · 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 Pro Mini (ATmega328P, existe en 5 V/16 MHz et 3,3 V/8 MHz) reliée à un convertisseur USB-série (FTDI) ou un programmeur ICSP. 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

Choisissez « Arduino Pro Mini » dans l'IDE (5 V/16 MHz ou 3,3 V/8 MHz selon votre modèle), le processeur ATmega328P, le bon port, puis Téléverser. Le convertisseur doit être câblé DTR-DTR, RX-TX, TX-RX, VCC-VCC, GND-GND.

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