commande-serie.ino

Arduino Duemilanove — Fiche carte · Fichier : commande-serie.ino · Langage : Arduino · Usage : Allumer ou éteindre des LED par commandes tapées sur le port série

Le moniteur série envoie des caractères que la carte interprète : le premier pas vers un pilotage à distance par terminal, Bluetooth série ou second microcontrôleur. La Duemilanove détecte le port via son pont FTDI.

Matériel requis

Une Arduino Duemilanove (ATmega168 ou 328P, 16 MHz, 5 V) avec son câble mini-USB-B ; le port série apparaît après installation du driver FTDI. 2 LED + 2×330 Ω.

Branchement

LED1 sur 13, LED2 sur 12 (anode via résistance), cathodes sur GND.

Fonctionnement

Serial.available signale un octet en attente ; un simple switch sur la valeur lue commande les broches. Dans l'Arduino IDE, choisissez « Arduino Duemilanove » (ou « Diecimila » pour les très vieilles cartes) et le port FTDI, puis Téléverser. L'ATmega168 n'a que 14 Ko pour le sketch.

Pour aller plus loin

Étendez à des commandes multi-caractères (« lum 200 ») en accumulant dans une chaîne terminée par retour ligne.

commande-serie.ino

// Commande serie : '1'/'0' LED 13, '2'/'3' LED 12.
const int LED1 = 13, LED2 = 12;

void setup() {
  pinMode(LED1, OUTPUT); pinMode(LED2, OUTPUT);
  Serial.begin(9600);
  Serial.println(F("Tapez 1/0 (LED13) ou 2/3 (LED12)"));
}

void loop() {
  if (Serial.available()) {
    char c = Serial.read();
    if (c == '1') digitalWrite(LED1, HIGH);
    if (c == '0') digitalWrite(LED1, LOW);
    if (c == '2') digitalWrite(LED2, HIGH);
    if (c == '3') digitalWrite(LED2, LOW);
  }
}

← Retour à la fiche