|
Générateur de code morse : buzzer et Arduino
par Yves, F4IMG
Crédit photos : F4IMG |
Le but : - Recycler un buzzer de carte postale musicale (*). - L’utiliser pour faire entendre des phrases en code Morse. - C’est un jouet. Le câblage : Le dispositif est simplement constitué d’un module Arduino, (Uno, Nano …) et du buzzer. Il est alimenté par la connexion USB à l’ordinateur et le buzzer est directement relié d’une part à la borne GND et d’autre part à D8, comme sur la photographie. (La connexion est bien sur D8 et non D7, erreur qui pourrait être faite par l’effet de perspective). (*) Pour ceux qui ne disposeraient pas du buzzer, une version avec un haut-parleur est décrite en bas de page. |
||
![]() |
Le principe du codage des caractères pour l’Arduino. (Voir l’image du tableau ci-dessous). Les caractères sont classés dans un tableau à partir du caractère ‘0’ dans l’ordre du code ASCII, jusqu’au caractère ‘Z’, puis le tableau est complété par un certain nombre de caractères particuliers qui ne sont pas alphanumériques. A chaque caractère est attribué un octet. Dans cet octet le point du code morse est représenté par un bit ‘0’ et le trait par un bit ‘1’. Le code est placé du côté des bits de poids faible de l’octet. La partie inutilisée de l’octet est complétée par des ‘0’. Cependant il faut savoir où commence la partie utile du code, pour cela on ajoute du côté bits de poids fort un ‘1’ avant le code proprement dit. Ceci est possible pour chaque caractère dont le code morse ne contient pas plus de 7 éléments.
|
||
![]() |
||
Tout ce code est écrit dans le fichier nommé ‘leCodeMorse.h’ sous forme hexadécimale pour que ce soit plus facile à écrire (fichier inclus dans le fichier compressé ci-dessous).
|
||
Le programme Arduino. Il se trouve dans le fichier compressé ‘GenerationCodeMorse.zip’. Il suffira de le décompresser en respectant l’arborescence des fichiers : il est nécessaire que le fichier ‘*.h ‘ soit dans le même répertoire que le fichier ‘*.ino’ pour que la compilation par le logiciel ‘Arduino’ se passe bien, et qu’ensuite le téléchargement du fichier compilé se fasse correctement. Ce programme utilise une chaîne de caractères qui est envoyée à partir de l’ordinateur relié en USB au module Arduino. Cette chaîne est écrite dans un ‘terminal’ configuré correctement, c’est à dire en vérifiant que ce terminal utilise bien le bon numéro de port COM attribué à la liaison USB et que la vitesse de transmission est de 19200 bauds. (Vitesse définie dans la programmation de l’Arduino si vous ne l’avez pas modifiée). Quand l’Arduino reçoit le code de la touche ‘entrée’ frappée au clavier de l’ordinateur, le programme de l’Arduino traite la chaîne de caractères reçue, cherche le code de chaque caractère dans le tableau, fait sonner un point ou un trait suivant qu’un ‘0’ ou un ‘1’ est détecté, gère les silences entre chaque point ou chaque trait, entre chaque caractère et entre chaque mot.
Montage en fonctionnement :
|
||
|
||
|
||
J'utilise le logiciel
terminal "Tera Term", à la vitesse de connexion de 19200 bauds. (C'est un logiciel libre) |
||
Montage avec un haut-parleur : |
||
![]() |
||
Le haut-parleur et le buzzer sont montés en parallèle (le buzzer n'est pas nécessaire). | ||
![]() |
||
Le transistor est volontairement "bridé" car le montage est alimenté par la prise USB de l'ordinateur (500 mA max). | ||
![]() |
||
Le transistor et les résistances sont soudés autour du haut parleur et maintenus par un point de colle. |
73 de F4IMG |
Mis à jour le 14/02/2020
|