SOS en morse
Ta LED envoie un vrai message de détresse : trois points, trois traits, trois points. Le code que tous les marins du monde reconnaissent.
Avant le téléphone, c'est comme ça qu'on appelait à l'aide en mer. Le morse a sauvé des milliers de vies - et il tient en deux symboles.
SunuMake Découverte
Tes premiers pas avec Arduino - 8 composants inclus.
Ce qu'il faut sortir du kit
Prépare tout avant de commencer : c'est plus agréable que de fouiller la boîte au milieu du câblage.
- 1Carte Arduino UNO
- 1Plaque d'essai (breadboard)
- 1LED— n'importe quelle couleur, le rouge se voit mieux de loin
- 1Résistance 220 Ω— indispensable, sinon la LED grille
- 2Fils de connexion
- 1Câble USB
Le schéma des branchements
Débranche toujours l'USB avant de modifier un câblage, et vérifie ce tableau ligne par ligne avant de rebrancher.
| On relie | à | en passant par |
|---|---|---|
| LED — patte longue (+) | Broche 13 | Résistance 220 Ω |
| LED — patte courte (−) | GND | Rail bleu (−) de la breadboard |
Les étapes
- 1
Matériel
1 LED, 1 résistance 220 Ω, 2 fils. C'est le même montage que « La LED qui clignote » - si tu l'as encore câblé, tu n'as rien à toucher.
- 2
Câble la LED
Patte longue de la LED vers la broche 13 (à travers la résistance), patte courte vers GND. Si tu n'es pas sûr, reprends le montage du projet n°1.
- 3
Comprends le code morse
En morse, tout s'écrit avec deux signaux : le **point** (un éclair court) et le **trait** (un éclair trois fois plus long). La lettre S, c'est trois points. La lettre O, c'est trois traits. SOS = · · · −−− · · ·
- 4
Téléverse et observe
Copie le code, téléverse. Regarde ta LED : trois éclairs rapides, trois éclairs longs, trois éclairs rapides, puis une pause. Tu viens d'envoyer un message que n'importe quel marin comprendrait.
- 5
Écris ton prénom
Cherche « alphabet morse » et essaie d'écrire la première lettre de ton prénom. Tu vas devoir appeler `point()` et `trait()` dans le bon ordre - c'est exactement comme ça qu'on compose avec des fonctions.
Le programme à téléverser
Copie ce code dans l'IDE Arduino, branche ta carte en USB et clique sur le bouton « Téléverser » (la flèche en haut à gauche).
// SOS en morse - SunuMake// Le morse n'a que deux symboles : le point (court) et le trait (long).const int LED = 13;const int UNITE = 200; // durée d'un point, en millisecondesvoid setup() { pinMode(LED, OUTPUT);}// Un point : allumé pendant 1 unité.void point() { digitalWrite(LED, HIGH); delay(UNITE); digitalWrite(LED, LOW); delay(UNITE); // silence entre deux symboles}// Un trait : allumé pendant 3 unités.void trait() { digitalWrite(LED, HIGH); delay(UNITE * 3); digitalWrite(LED, LOW); delay(UNITE);}void loop() { // S = trois points point(); point(); point(); delay(UNITE * 2); // silence entre deux lettres // O = trois traits trait(); trait(); trait(); delay(UNITE * 2); // S = trois points point(); point(); point(); delay(UNITE * 7); // longue pause avant de recommencer}Comment ça marche ?
Ce projet introduit la notion la plus utile de toute la programmation : la fonction.
Au lieu de réécrire digitalWrite(HIGH) + delay() + digitalWrite(LOW) neuf fois de suite, on l'écrit une seule fois dans point(), et on l'appelle quand on en a besoin. Le programme devient lisible : point(); point(); point(); se lit littéralement « trois points ».
Remarque aussi la constante UNITE. Tous les délais en dépendent (UNITE, UNITE * 3, UNITE * 7). Change cette seule valeur de 200 à 100, et tout le message accélère en gardant ses proportions. C'est la règle d'or : quand une valeur revient partout, on lui donne un nom.
En morse, les proportions comptent autant que les symboles : un trait vaut 3 points, le silence entre deux lettres vaut 3 points, entre deux mots 7 points. C'est ce rythme qui rend le message déchiffrable.