Skip to main content

Kristina & Bence - Partie Arduino

Arduino partie 1

Objectif : Illuminer la première LED (Blink)

Matériel Utilisé

  • Ordinateur avec Arduino IDE

  • Carte Arduino Uno

  • Planche à pain (Breadboard)

  • Câble USB

  • x1 LED (intégrée ou externe)

  • x1 Résistance

  • Fils de connexion

Programme Arduino

void setup() {
  // Initialise la broche 13 comme une sortie
  pinMode(13, OUTPUT);
}

void loop() {
  digitalWrite(13, HIGH); // Allume la LED
  delay(1000);            // Attend 1 seconde
  digitalWrite(13, LOW);  // Éteint la LED
  delay(1000);            // Attend 1 seconde
}

Principe

  • La LED sur la broche 13 s'allume et s'éteint avec un délai de 1000ms (1 seconde).
  • La fonction setup() initialise la configuration une seule fois au démarrage.
  • Les instructions sont répétées à l'infini grâce à la fonction loop().
  • La broche 13 est configurée comme une sortie numérique.

Observation

La LED clignote de manière régulière, validant ainsi la communication entre l'ordinateur et la carte.

Visuels

photo_2026-02-08_15-29-00.jpg

 


Arduino partie 2

Objectif: Dompter le pouls du courant (Lecture analogique et contrôle de LED)

Matériel Utilisé

  • Ordinateur avec Arduino IDE

  • Carte Arduino Uno

  • Planche à pain (Breadboard)

  • Câble USB

  • x1 Potentiomètre (pour varier la tension)

  • x2 LED (sur les broches 13 et 12 selon votre montage)

  • x5 Résistances

  • Fils de connexion (reliés aux broches : GND, 13, 12, 11, A0, 5V)

Programme Arduino

void setup() {
  Serial.begin(9600);    
  pinMode(13, OUTPUT);   
  pinMode(12, OUTPUT);    
  pinMode(11, OUTPUT);    
}

void loop() {
  int sensorValue = analogRead(A0);
  
  // Convertit la lecture en tension (0 - 5V)
  float voltage = sensorValue * (5.0 / 1023.0);

  // Affiche la tension dans le moniteur série
  Serial.print("Tension mesuree : ");
  Serial.print(voltage);
  Serial.println(" V");

  // Interaction simple : si la tension dépasse 2.5V, on allume les LED
  if (voltage > 2.5) {
    digitalWrite(13, HIGH);
    digitalWrite(12, HIGH);
  } else {
    digitalWrite(13, LOW);
    digitalWrite(12, LOW);
  }
  
  delay(100); // Petit délai pour la stabilité de l'affichage
}

Principe

  • Le potentiomètre fait varier la tension envoyée à l'entrée A0.

  • La fonction analogRead(A0) convertit ce signal électrique en une valeur numérique entre 0 et 1023.

  • Les données sont envoyées en continu vers l'ordinateur pour être visualisées via le moniteur série.

  • Les broches 13, 12 et 11 sont utilisées comme sorties pour réagir en fonction de la tension lue.

Observation

Les valeurs dans le moniteur série changent en temps réel lorsque l'on tourne le potentiomètre.

Visuels

photo_2026-02-08_15-12-55.jpg

 


Arduino partie 3

Objectif: Clignoter deux LED á deux fréquences différentes.

Matériel Utilisé

  • Ordinateur avec Arduino IDE
  • Carte Arduino Uno
  • planche à pain
  • Câble USB

  • x2 LED

  • x2 résistances

  • Fils de connexion

Programme Arduino

void setup() {
  pinMode(13, OUTPUT); 
  pinMode(12, OUTPUT); 
}

void loop() {
  digitalWrite(13, HIGH); 
  delay(600);

  digitalWrite(12, HIGH); 
  delay(20);

  digitalWrite(13, LOW); 
  delay(600);

  digitalWrite(12, LOW); 
  delay(20);
}

Principe

  • LED broche 13 s'allume et s'éteint avec un délais de 600ms.
  • LED broche 12 s'allume et s'éteint avec un délais de 20ms.
  • Les instructions sont loupées grace au fonction loop()
  • Les broches 13 et 12 sont des sorties

Observation

Les deux LEDs clignotent avec des vitesses différentes. Le LED 1 est plus rapide que le LED 2.


Arduino partie 4

Objectif: Allumer deux LED avec un actionneur (par ex un bouton) selon les conditions de l'actionneur. 

Matériel Utilisé 

  • Ordinateur avec Arduino IDE
  • Carte Arduino Uno
  • planche à pain
  • Câble USB

  • x2 LED

  • x2 résistances

  • Fils de connexion

  • Bouton

Fonctionnement

Configuration des E/S: Le dispositif utilise la broche 4 comme entrée numérique (bouton) et la broche 12 comme sortie (LED).

Méthode de Lecture: Le microcontrôleur interroge l'état de l'entrée via la fonction digitalRead().

Logique de Commande: Le circuit est câblé en logique négative (Active LOW). Par conséquent, l'entrée est à l'état HIGH au repos et bascule à l'état LOW lors d'une pression.

Logique de Sortie: Le système suit une relation inverse : la LED s'éteint lors de l'activation du bouton et s'active lorsque celui-ci est relâché.

Programme Arduino

/**
 * Gestion d'une LED en logique inversée via bouton-poussoir
 * Broche 4 : Entrée Bouton (Active LOW)
 * Broche 12 : Sortie LED
 */

// Définition des constantes pour une meilleure lisibilité
const int PIN_INPUT  = 4;
const int PIN_OUTPUT = 12;

void setup() {
    // Configuration des entrées/sorties
    pinMode(PIN_INPUT, INPUT);
    pinMode(PIN_OUTPUT, OUTPUT);

    // Initialisation de la console pour le débogage
    Serial.begin(9600);
}

void loop() {
    // Lecture de l'état actuel du capteur
    int signalAction = digitalRead(PIN_INPUT);

    // Traitement de la logique : La LED suit l'état du bouton
    // (Bouton LOW -> LED LOW | Bouton HIGH -> LED HIGH)
    if (signalAction == LOW) {
        digitalWrite(PIN_OUTPUT, LOW);  // Extinction lors de l'appui
    } 
    else {
        digitalWrite(PIN_OUTPUT, HIGH); // Allumage au repos
    }
}

Observation

Si on appuie sur le bouton, la LED s'éteint.