🟢 4ème · Période 3 · Structuration
Structuration : Séquence 6
Programmation Arduino : Ce qu'il faut retenir
🔗 Lien direct vers cette page
46S
Scanne le QR code, ou saisis ce code sur la page d'accès direct du site.
https://technologie-lft.vercel.app/go.html?c=46S
📘 1 : La carte Arduino Uno
Définition : Arduino est une carte à microcontrôleur programmable. Elle permet de lire des capteurs et de piloter des actionneurs grâce à un programme écrit en langage C/C++.
| Élément | Description |
|---|---|
| Microcontrôleur | ATmega328 : le « cerveau » qui exécute le programme |
| Pins numériques (0-13) | Entrées/sorties ON ou OFF (0 ou 1) : bouton, LED |
| Pins analogiques (A0-A5) | Lecture de valeurs de 0 à 1023 : capteur de lumière, température |
| Pins PWM (~3, 5, 6, 9, 10, 11) | Simulent une sortie analogique (0-255) : varier luminosité, vitesse |
| Alimentation | 5V et 3.3V pour les composants, GND = masse |
| Port USB | Alimentation + téléversement du programme |
📘 2 : Structure d'un programme Arduino
Tout programme Arduino a 2 blocs obligatoires :
| Bloc | Rôle | Exécution |
|---|---|---|
| setup() | Initialisation : configurer les pins (INPUT/OUTPUT), démarrer le moniteur série | Une seule fois au démarrage |
| loop() | Programme principal : lire capteurs, tester conditions, piloter actionneurs | En boucle, indéfiniment |
📘 3 : Les instructions de base
| Instruction | Action |
|---|---|
pinMode(pin, OUTPUT) | Configurer une pin en sortie |
pinMode(pin, INPUT) | Configurer une pin en entrée |
digitalWrite(pin, HIGH) | Mettre une pin numérique à 1 (5V) : allumer |
digitalWrite(pin, LOW) | Mettre une pin numérique à 0 (0V) : éteindre |
digitalRead(pin) | Lire l'état d'une entrée numérique (0 ou 1) |
analogRead(pin) | Lire une entrée analogique (valeur 0 à 1023) |
analogWrite(pin, valeur) | Écrire une valeur PWM (0 à 255) sur une pin ~ |
delay(ms) | Pause en millisecondes (1000 = 1 seconde) |
Serial.begin(9600) | Démarrer la communication série (moniteur) |
Serial.println(valeur) | Afficher une valeur dans le moniteur série |
📘 4 : Capteurs et actionneurs
| Type | Exemple | Signal | Fonction Arduino |
|---|---|---|---|
| Capteur | Bouton poussoir | Numérique (0/1) | digitalRead() |
| Capteur ultrason HC-SR04 | Distance (cm) | pulseIn() + calcul | |
| Actionneur | LED | Numérique (ON/OFF) | digitalWrite() |
| Servo-moteur | Angle (0-180°) | Servo.write() | |
| Buzzer | Son (fréquence) | tone(pin, fréq) |
📘 5 : La structure conditionnelle
if / else permet au programme de prendre des décisions en fonction des valeurs lues par les capteurs.
if (condition) {
// Actions si la condition est VRAIE
} else {
// Actions si la condition est FAUSSE
}
// Actions si la condition est VRAIE
} else {
// Actions si la condition est FAUSSE
}
Opérateurs de comparaison : < (inférieur), > (supérieur), == (égal), != (différent), <= et >=.