Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Leistungsstarker FM-Radio-Empfänger mit Arduino & TEA5767

Benötigte Komponenten

Komponente Menge
Arduino Nano (oder Micro) 1
TEA5767 FM-Radio-Modul (I²C) 1
Nokia 5110 LCD (PCD8544, 84×48 px) 1
10 kΩ Potentiometer (Frequenzwahl) 1
LM386 Audioverstärker-Modul 1
3 W Lautsprecher 1
Großes Steckbrett & Jumper-Kabel 1 Set
Audiokabel (3,5 mm Klinkenstecker) 1
330 µF Elektrolytkondensator (optional, gegen Rauschen) 1
Powerbank (5 V Versorgung) 1

Über dieses Projekt

Wir bauen einen funktionsfähigen FM-Radio-Empfänger auf dem Steckbrett. Das TEA5767-Modul übernimmt den Empfang (I²C-Steuerung), der Arduino Nano liest den Frequenzwunsch per Potentiometer ein, zeigt Frequenz, Signalstärke und Stereo-Status auf dem Nokia 5110 Display an. Das Audiosignal wird per Potentiometer in der Lautstärke geregelt, dann vom LM386 verstärkt und am Lautsprecher ausgegeben. Gesamtkosten ca. 15 $.

Hardware-Aufbau

  1. TEA5767: SCL → A5, SDA → A4 (I²C), Audio-Out → Audiokabel → Lautstärke-Poti → LM386 Input.
  2. LM386: Input vom Poti-Mittelabgriff, GND gemeinsam, VCC 5 V, Output an Lautsprecher. Gain-Poti am LM386 für Verstärkung.
  3. Frequenz-Poti: Mittelabgriff → A0, Außen an 5 V / GND.
  4. Nokia 5110: RST→D12, CE→D11, DC→D10, DIN→D9, CLK→D8, VCC→3,3 V, LIGHT→GND (Hintergrundlicht an), GND→GND.
  5. Alle GND zusammen, alle VCC (außer Nokia 3,3 V) an 5 V.

Software

Verwendete Bibliotheken: Nokia5110_Graph (Display), TEA5767 (Radio).

Ablauf:

  1. Initialisierung: Radio auf Mono + Stereo-Rauschunterdrückung, Display-Splashscreen (3 s).
  2. Loop: Alle paar ms Potentiometer (A0) lesen, Wert auf 87,0–108,0 MHz mappen.
  3. Nur bei Frequenzänderung ≥ 0,1 MHz: Radio neu abstimmen, Signalstärke & Stereo-Icon lesen, Display aktualisieren.
  4. Entprellung durch Schwellenwert vermeidet ständiges Neuabstimmen bei Potentiometer-Rauschen.

Code-Ausschnitte

void setup() {
  radio.setMonoReception();
  radio.setStereoNoiseCancellingOn();
  initScreen();
  showSplashScreen();
  Serial.begin(9600);
}

void loop() {
  int val = analogRead(A0);
  int freqInt = map(val, 2, 1014, 8700, 10800); // 87,00–108,00 MHz ×100
  float freq = freqInt / 100.0;

  if (abs(freq - prevFreq) >= 0.1) {
    lcd.clrScr();
    radio.selectFrequency(freq);
    printSignalStrength();
    printStereo();
    printFrequency(freq);
    prevFreq = freq;
  }
}

Vollständiger Code: Projekt-Webseite (ZIP-Download).

Ausblick & Verbesserungen

Herstellungsprozess

  1. Arduino Digitaler Würfel: LCD-Würfel mit Zufallszahlen (1–6)
  2. WLAN-Internetradio mit Raspberry Pi & Arduino bauen: Weltweite Sender streamen
  3. Arduino Iron Man bauen: Komponenten, Sensoren & Schritt-für-Schritt-Anleitung
  4. Find Me: Smarter Gegenstands-Finder mit Arduino und Bluetooth
  5. Funktionaler 3D-gedruckter Roboterarm mit Arduino – Schritt-für-Schritt-Anleitung
  6. DIY Arduino Luftbefeuchter-Steuerung mit Relais – Sichere Hochspannungs-Installation
  7. Kompaktes FM-Radio mit Arduino Nano und RDA5807M selbst bauen
  8. NeoPixel-Matrix Pong auf Arduino Nano: Neon-Pong selbst bauen
  9. DIY Arduino Lenkrad / Joystick für Rennspiele – USB-HID-Umbau
  10. Arduino 101: Schrittzähler (Pedometer) mit DHT11 & LCD-Display