Inhaltsverzeichnis:
- Schritt 1: Schaltung und Erklärung des Geräts
- Schritt 2: Programmierung
- Schritt 3: Fertiges Projekt und Testen
Video: Arduino Nano Voice Recorder mit dem Mikrofon MAX9814 - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:15
Ich habe ein MAX9814 Mikrofon von AZ Lieferung bei Amazon bekommen und wollte das Gerät testen. Daher habe ich dieses einfache Projekt erstellt, das auf Great Scotts Spy Bug basiert (veröffentlicht unter dieser Creative Commons-Lizenz). Ich habe die Projektstruktur ziemlich modifiziert, um die Effizienz zu verbessern und ein paar neue Funktionen hinzuzufügen. Dies ist mein erstes Instructables-Projekt, also wird es nicht perfekt sein, aber ich bin bereit zu lernen und offen für Ratschläge.
Testergebnisse des Mikrofons mit unterschiedlichen Verstärkungen werden am Ende hinzugefügt. Wenn Sie also nur die Qualität der Verstärkungen von 40 dB, 50 dB und 60 dB vergleichen möchten, können Sie dorthin springen.
Ich hoffe, dass dieses Projekt für Leute nützlich sein wird, die versuchen, ein Mikrofon in ihr Projekt zu integrieren. Ich hoffe auch, dieses Projekt für Anfänger so zugänglich wie möglich zu machen, daher habe ich viele Kommentare zu meinem Code hinzugefügt, aber ich freue mich auch, meine Arbeit zu überarbeiten, um zusätzliche Erläuterungen hinzuzufügen, die hilfreich wären. Die Verkabelung ist sehr anfängerfreundlich, aber die Implementierung der Software ist etwas kniffliger.
Sehen Sie sich alle Projektdateien an und schlagen Sie Verbesserungen an meinem Code in meinem GitHub-Repository vor.
Lieferungen:
Amazonas:
- MAX9814 Mikrofon mit Verstärker
- Steckbrett
- Arduino Nano (Es ist ein 3er-Pack, aber Sie brauchten nur einen!)
- SD-Kartenleser
- LEDs
- Widerstände
- Taktile Tasten
- USB B Mini-Kabel (für Arduino Nano)
- USB-Powerbank (ich habe eine vor Ort gekaufte billige verwendet)
Schritt 1: Schaltung und Erklärung des Geräts
Ich habe meine Schaltung so angepasst, dass sie mit dem Arduino Nano-Gerät funktioniert, aber Sie können Ihre Schaltung auf verschiedenen Arduino-Geräten ausführen, indem Sie die Pin-Nummern oben in meinem Code bearbeiten (nächster Abschnitt). Um die Schaltung auf Ihrem Gerät einzurichten, suchen Sie nach "Arduino [Ihr Modell] Pinbelegung" und es sollten viele Bilder vorhanden sein, die veranschaulichen, welche Funktionen jeder Pin ausführen kann (z. B. Analogeingang, SS, MOSI usw.). Die meisten Geräte werden auch mit beschrifteten Pins geliefert. Ich habe diesen Schaltplan mit dem EasyEDA-Editor gezeichnet, aber mit einem lötfreien Steckbrett erstellt, da ich dies so schnell wie möglich erstellen und das Layout schnell neu konfigurieren wollte.
Schritt 2: Programmierung
Ich habe einen einfachen Code zum Aufnehmen des Audios auf dem Gerät geschrieben. Ich habe den Code von Great Scott als Inspiration verwendet, aber die Struktur geändert, um die Effizienz und Einfachheit zu erhöhen. Ich habe auch die Beschränkungen der Anzahl der Dateien, die aufgezeichnet werden konnten, entfernt und weitere Kommentare hinzugefügt, die Anfängern die Navigation erleichtern sollten. Laden Sie den fertigen Code unten herunter und öffnen Sie ihn mit der Arduino IDE. Laden Sie die erforderlichen Module ("SD.h", "SPI.h" und "TMRpcm.h") mit dem Arduino Package Manager herunter (siehe Abbildungen oben).
Das Aufzeichnen in eine WAV-Datei auf einer SD-Karte ist eine erweiterte Funktion der TMRpcm-Bibliothek. Um sie zu verwenden, müssen Sie die Konfigurationsdatei der Bibliothek bearbeiten. Das klingt zwar entmutigend (zumindest für mich), aber es wird nur mit dem Datei-Explorer nach der Datei "pcmConfig.h" gesucht und ein paar Codezeilen auskommentiert (und dann gespeichert).
- Auf Uno- oder Nicht-Mega-Boards entkommentieren Sie die Zeile #define buffSize 128
- Entkommentieren Sie auch #define ENABLE_RECORDING und #define BLOCK_COUNT 10000UL
Wenn Sie vollständig zur Arduino-IDE zurückkehren, schließen Sie Ihr Arduino an, wählen Sie es aus und kompilieren Sie das Programm und laden Sie es hoch. Das Öffnen des seriellen Monitors gibt Ihnen auch während der Laufzeit einige Rückmeldungen.
Schritt 3: Fertiges Projekt und Testen
Als ich die Verdrahtung und das Debuggen abgeschlossen hatte, testete ich das Projekt.
WARNUNG Durch einen Neustart des Geräts wird der Dateinamenzähler zurückgesetzt, wodurch neue Dateien alte Dateien überschreiben.
So verwenden Sie das Gerät:
- Stecken Sie ein USB-Stromkabel in den Arduino
- Drücken Sie die taktile Taste, um die Aufnahme zu starten (die LED leuchtet, um dies anzuzeigen)
- Drücken Sie die Taste erneut, um die Aufnahme zu beenden
- Wiederholen Sie dies für so viele Aufnahmen wie nötig
- Trennen Sie das USB-Stromkabel
- Entfernen Sie die SD-Karte
- Legen Sie die SD-Karte in einen Computer oder ein Telefon ein
- Öffnen Sie die Dateien in Ihrer gewählten Wiedergabeanwendung
Der ursprüngliche Zweck dieses Projekts war es, das MAX9814-Mikrofon zu testen, daher habe ich drei Tests durchgeführt, um herauszufinden, wie sich der eingebaute Verstärker auf das Ergebnis auswirkt. Bei der Produktion der Aufnahmen habe ich eine von Mozarts Symphonien als Kontrollvariable verwendet. Ich spielte es über den Lautsprecher meines Telefons, den ich bei allen drei Aufnahmen in konstantem Abstand auf das Mikrofon gerichtet hielt. Die einzige Variable, die ich geändert habe, war die Verstärkung des Mikrofons (eingestellt durch Verbinden mit VCC, GND oder schwebend). Die resultierenden Audioclips werden angehängt. Ich habe auch das 40dB- und das 60dB-Audio zu einer einzigen Aufnahme kombiniert, bei der die 40dB im linken Ohr und die 60dB im rechten Ohr wiedergegeben werden. Dies macht den Qualitätsunterschied sehr deutlich und unterstreicht, wie wichtig die Verstärkung des MAX9814-Moduls ist.
Insgesamt war ich mit den Aufnahmeergebnissen unglaublich zufrieden, zumal das Setup für das Gerät eines der einfachsten ist, das ich je gesehen habe (mit nur drei Drähten und ohne externe Komponenten - selbst eine einfache LED benötigt einen Widerstand). Es muss auch berücksichtigt werden, dass der Arduino Nano über einen 10-Bit-ADC verfügt, sodass jeder Amplitudenmesswert nur einer von 1024 diskreten Werten sein kann. Aufgrund der guten Audioqualität, der kompakten Größe und des vernachlässigbaren Stromverbrauchs; Ich hoffe, das Gerät in zukünftigen Projekten verwenden zu können.
Wenn ich nicht genug ins Detail gegangen bin, helfe ich gerne weiter und füge zusätzliche Erläuterungen hinzu. Dies ist meine erste Instructables, so dass jeder Rat, den ich jetzt erhalte, in allen meinen zukünftigen Projekten widergespiegelt werden kann. Wenn Sie Vorschläge zur Verbesserung meiner Codes haben, füge ich sie gerne meinem Projekt auf GitHub und diesen Instructables hinzu.
Empfohlen:
DIY So zeigen Sie die Zeit auf dem M5StickC ESP32 mit Visuino an - Einfach zu tun: 9 Schritte
DIY So zeigen Sie die Zeit auf dem M5StickC ESP32 mit Visuino an - Einfach zu machen: In diesem Tutorial lernen wir, wie Sie den ESP32 M5Stack StickC mit Arduino IDE und Visuino programmieren, um die Zeit auf dem LCD anzuzeigen
M5STACK So zeigen Sie Temperatur, Feuchtigkeit und Druck auf dem M5StickC ESP32 mit Visuino an - Einfach zu tun: 6 Schritte
M5STACK So zeigen Sie Temperatur, Luftfeuchtigkeit und Druck auf dem M5StickC ESP32 mit Visuino an - Einfach zu machen: In diesem Tutorial lernen wir, wie Sie den ESP32 M5Stack StickC mit Arduino IDE und Visuino programmieren, um Temperatur, Luftfeuchtigkeit und Druck mit dem ENV-Sensor (DHT12, BMP280, BMM150)
Verbinden eines GPS-Moduls mit dem Raspberry Pi: Dashcam Teil 2: 3 Schritte
Anbindung eines GPS-Moduls an den Raspberry Pi: Dashcam Teil 2: Dies ist Teil 2 des Dashcam-Projekts und in diesem Beitrag erfahren Sie, wie Sie ein GPS-Modul an den Raspberry Pi anschließen. Wir verwenden dann die GPS-Daten und fügen sie dem Video als Textüberlagerung hinzu. Bitte lesen Sie Teil 1 über den untenstehenden Link, bevor Sie
Erste Schritte mit dem SkiiiD-Editor: 11 Schritte
Erste Schritte mit dem SkiiiD-Editor: skiiiD-Editor, Entwicklungsboard-Firmware IDEskiiiD-Editor basiert auf skiiiD (Firmware Development Engine). Jetzt ist es mit Arduino UNO, MEGA und NANO mit 70+ Komponenten kompatibel.BetriebssystemmacOS / WindowsInstallierenBesuchen Sie die Website https:
Actobitty 2 mit dem TB6612FNG SparkFun-Motortreiber, Anfängerleitfaden.: 3 Schritte
Actobitty 2 mit dem TB6612FNG SparkFun-Motortreiber, Anfängerhandbuch.: Diese Anleitung ist für den Actobitty 2-Roboter mit dem SparkFun ® TB6612FNG Motortreiber