Exercice 1 : Allumer une LED
Écrire un programme Arduino qui allume une LED connectée à la broche
Exercice 2 : Faire clignoter une LED
Réaliser un programme qui fait clignoter une LED toutes les 500 ms.
Exercice 3 : Bouton poussoir (ON/OFF)
Un bouton est connecté à la broche 2.
Lorsque l’utilisateur appuie dessus, la LED (broche 13) s’allume.
Lorsqu’il relâche, la LED s’éteint.
Exercice 4 : Variation de luminosité (PWM)
Utiliser un potentiomètre connecté à A0 pour régler la luminosité d’une LED branchée à la
broche 5.
Exercice 5 : Lire un capteur de température
Lire la valeur d’un capteur LM35 sur A1 et afficher la température en °C sur le moniteur
série.
Exercice 6 : Comptage d’appuis sur un bouton
À chaque pression sur un bouton (broche 2), incrémenter un compteur et afficher le nombre
d’appuis sur le moniteur série.
Exercice 7 : Contrôle d’un servo-moteur
Brancher un servo sur la broche 9.
Faire bouger le servo de 0° → 180° → 0°.
Exercice 8 : Allumer une LED selon la distance
Un capteur ultrasonique HC-SR04 est connecté.
Si la distance < 10 cm : LED = ON
Sinon : LED = OFF
Exercice 9 : Feu tricolore
Programmer un feu rouge → jaune → vert avec des délais réalistes.
Exercice 10 : Alarme sonore avec buzzer
Si un bouton est appuyé, activer un buzzer à la fréquence 1000 Hz pendant 1 seconde.
🔵 Correction Exercice 3
void setup() {
pinMode(2, INPUT);
pinMode(13, OUTPUT);
}
void loop() {
int etat = digitalRead(2);
digitalWrite(13, etat);
}
🔵 Correction Exercice 4
int pot;
void setup() {
pinMode(5, OUTPUT);
}
void loop() {
pot = analogRead(A0);
int pwm = map(pot, 0, 1023, 0, 255);
analogWrite(5, pwm);
}
🔵 Correction Exercice 5
void setup() {
[Link](9600);
}
void loop() {
int val = analogRead(A1);
float temp = (val * 5.0 / 1023.0) * 100;
[Link](temp);
delay(500);
}
🔵 Correction Exercice 6
int compteur = 0;
int lastState = 0;
void setup() {
pinMode(2, INPUT);
[Link](9600);
}
void loop() {
int state = digitalRead(2);
if (state == HIGH && lastState == LOW) {
compteur++;
[Link](compteur);
}
lastState = state;
}
🔵 Correction Exercice 7
#include <Servo.h>
Servo s;
void setup() {
[Link](9);
}
void loop() {
[Link](0);
delay(1000);
[Link](180);
delay(1000);
}
🔵 Correction Exercice 8
#define TRIG 8
#define ECHO 7
#define LED 4
void setup() {
pinMode(TRIG, OUTPUT);
pinMode(ECHO, INPUT);
pinMode(LED, OUTPUT);
}
void loop() {
digitalWrite(TRIG, LOW);
delayMicroseconds(2);
digitalWrite(TRIG, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG, LOW);
long duree = pulseIn(ECHO, HIGH);
int distance = duree * 0.034 / 2;
if (distance < 10)
digitalWrite(LED, HIGH);
else
digitalWrite(LED, LOW);
delay(100);
}
🔵 Correction Exercice 9
void setup() {
pinMode(2, OUTPUT); // Rouge
pinMode(3, OUTPUT); // Jaune
pinMode(4, OUTPUT); // Vert
}
void loop() {
digitalWrite(2, HIGH);
delay(3000);
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
delay(1000);
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
delay(3000);
digitalWrite(4, LOW);
}
🔵 Correction Exercice 10
void setup() {
pinMode(2, INPUT);
pinMode(9, OUTPUT);
}
void loop() {
if (digitalRead(2) == HIGH) {
tone(9, 1000);
delay(1000);
noTone(9);
}
}