Construisez un récepteur FM performant avec Arduino et module TEA5767
Composants et fournitures
| Composant | Quantité |
|---|---|
| Arduino Micro (ou Nano) | 1 |
| Module TEA5767 | 1 |
| Écran LCD Nokia 5110 | 1 |
| Potentiomètre rotatif 10 kΩ | 1 |
| Amplificateur audio LM386 | 1 |
| Haut-parleur 3 W | 1 |
| Plaque d'essai (breadboard) | 1 |
| Câble audio | 1 |
| Fils de connexion | 1 |
| Émetteur FM (pour test) | 1 |
Applications et services en ligne
- Arduino IoT Cloud
À propos de ce projet
Introduction
Bienvenue ! Dans ce tutoriel, nous allons construire un récepteur FM radio sur plaque d'essai.
Regardez la vidéo jointe pour l'entendre en action. La radio fonctionne bien, on entend de la musique. J'utilise un émetteur FM bon marché pour diffuser des pistes YouTube libres de droits sur cette fréquence. L'écran Nokia 5110 affiche la fréquence sélectionnée, la force du signal, et une icône stéréo si la réception est stéréo. Le cerveau du projet est l'Arduino Nano, petit et peu coûteux. Un potentiomètre contrôle le volume, un autre la fréquence.
C'est un projet fascinant et relativement simple. Voyons comment le réaliser.
Étape 1 : Rassembler les composants
Coût total : environ 15 $.
- Arduino Nano
- Module radio FM (TEA5767)
- Écran LCD Nokia 5110
- Potentiomètre 10K (×2 : fréquence + volume)
- Amplificateur audio (LM386)
- Haut-parleur 3 W
- Grande plaque d'essai
- Câble audio
- Fils de connexion
- Émetteur FM (pour test)
- Power bank
Étape 2 : Écran LCD Nokia 5110
Mon afficheur préféré pour les projets Arduino. C'est un écran graphique basique (contrôleur PCD8544), à très faible consommation : 0,4 mA allumé (rétroéclairage éteint), < 0,06 mA en veille. Interface série (8 fils). Coût ~4 $.
Étape 3 : Module FM TEA5767
Le cœur du projet. Puce TEA5767, interface I2C, simple avec Arduino. Le module intègre un amplificateur… mais c'est un ampli casque : signal trop faible pour un haut-parleur direct. Pas de contrôle de volume logiciel → on utilise un potentiomètre. Deux prises jack : une pour l'antenne, une pour la sortie casque. Antenne fournie, mais on peut en faire une soi-même.
Étape 4 : Connexion des composants
Suivez le schéma :
- Masse de tous les composants → rail de masse de la breadboard
- VCC de tous les composants → rail positif (sauf potentiomètre de volume)
- Module radio : SCL → A5, SDA → A4 (Arduino Nano)
- Potentiomètre fréquence : broche centrale → A0
- Potentiomètre volume : câble audio coupé, on récupère GND + un canal audio → entrée potentiomètre, sortie centrale → ampli LM386
- Ampli LM386 : entrée signal + masse du câble audio, alimentation sur rails breadboard, sortie → haut-parleur
- Petit potentiomètre sur l'ampli pour régler le gain
- Écran Nokia 5110 : RST→D12, CE→D11, DC→D10, DIN→D9, CLK→D8, VCC→3,3V, LIGHT→GND (rétroéclairage allumé), GND→GND
- (Optionnel) Condensateur 330 µF sur l'alimentation pour réduire le bruit audio
Étape 5 : Code du projet
Deux bibliothèques : Nokia5110 graph library + bibliothèque TEA5767.
Fonctionnement : initialisation radio + écran, écran de démarrage 3 s (créé sous Photoshop). Dans loop() : lecture du potentiomètre fréquence toutes les quelques ms, conversion valeur analogique → fréquence (87,0–107,0 MHz). Pour stabiliser, on ne retune la radio que si la fréquence change de ≥ 0,1 MHz. Puis affichage force du signal, icône stéréo, fréquence.
void setup() {
radio.setMonoReception();
radio.setStereoNoiseCancellingOn();
initScreen();
showSplashScreen();
Serial.begin(9600);
}
void loop() {
int val = analogRead(A0);
int frequencyInt = map(val, 2, 1014, 8700, 10700);
float frequency = frequencyInt / 100.0f;
if (abs(frequency - previousFrequency) >= 0.1f) {
lcd.clrScr();
radio.selectFrequency(frequency);
printSignalStrength();
printStereo();
printFrequency(frequency);
previousFrequency = frequency;
}
}
Code complet dispo ici : https://educ8s.tv/arduino-fm-radio-project
Étape 6 : Réflexions finales
En ~30 min, on a une radio FM sur breadboard ! Qualité audio perfectible : l'ampli LM386 + haut-parleur 3W limitent le rendu. Avec un haut-parleur amplifié du commerce, c'est parfait. Le signal sortant du module est bon.
Prochaines améliorations : meilleurs ampli/haut-parleur, version permanente sur plaque à trous, boîtier rétro imprimé 3D, fonction d'accord fin, optimisation consommation (~50 mA sans rétroéclairage) pour fonctionnement sur batterie.
Vos commentaires et suggestions sont les bienvenus !
Schéma
Schéma de câblage complet fourni (image).
Processus de fabrication
- Dé numérique Arduino sur écran LCD 16x2 – Générateur aléatoire à bouton poussoir
- Construire une radio Internet Wi-Fi avec Raspberry Pi et Arduino : diffuser des stations mondiales
- Construire un Iron Man animé avec Arduino : capteurs, sons et relais
- Find Me : Localisateur d'objets intelligent avec Arduino et Bluetooth
- Construire un bras robotique 3D fonctionnel piloté par Arduino – Guide pas à pas
- Contrôleur d'humidificateur DIY avec Arduino et relais – Installation haute tension sécurisée
- Construire une Radio FM Compacte avec Arduino Nano et RDA5807M
- Jeu Pong sur Matrice NeoPixel avec Arduino Nano
- Volant Joystick Arduino Personnalisé pour Jeux Vidéo