Sisukord:

Arduino Nano diktofon koos mikrofoniga MAX9814: 3 sammu
Arduino Nano diktofon koos mikrofoniga MAX9814: 3 sammu

Video: Arduino Nano diktofon koos mikrofoniga MAX9814: 3 sammu

Video: Arduino Nano diktofon koos mikrofoniga MAX9814: 3 sammu
Video: v.1 Arduino Самый маленький диктофон The smallest Audio Recorder Лайфхак Своими руками 2024, Juuli
Anonim
Arduino Nano diktofon koos mikrofoniga MAX9814
Arduino Nano diktofon koos mikrofoniga MAX9814
Arduino Nano diktofon koos mikrofoniga MAX9814
Arduino Nano diktofon koos mikrofoniga MAX9814
Arduino Nano diktofon koos mikrofoniga MAX9814
Arduino Nano diktofon koos mikrofoniga MAX9814

Ma sain Amazonist AZ tarnimisest mikrofoni MAX9814 ja tahtsin seadet testida. Seetõttu lõin selle lihtsa projekti, mis põhineb Great Scotti spioonipisikul (avaldatud selle Creative Commonsi litsentsi alusel). Muutsin projektide struktuuri üsna palju, et parandada tõhusust ja lisada mõned uued funktsioonid. See on minu esimene Instructables projekt, nii et see ei ole täiuslik, kuid olen valmis õppima ja olen nõuandele avatud.

Lõpus on lisatud erinevate võimendustega mikrofoni testitulemused, nii et kui soovite võrrelda ainult 40 dB, 50 dB ja 60 dB võimenduste kvaliteeti, saate selle vahele jätta.

Loodan, et see projekt on kasulik inimestele, kes üritavad oma projekti mikrofoni rakendada. Loodan ka muuta selle projekti algajatele võimalikult kättesaadavaks, nii et olen oma koodile lisanud palju kommentaare, kuid vaatan ka hea meelega oma tööd üle, et lisada täiendavaid selgitusi, mis oleksid abiks. Juhtmestik on väga algajasõbralik, kuid tarkvara rakendamine on natuke keerulisem.

Vaadake kõiki projekti faile ja soovitage minu koodi täiustusi minu GitHubi hoidlas.

Tarvikud:

Amazon:

  • MAX9814 mikrofon võimendiga
  • Leivalaud
  • Arduino Nano (see on 3 -pakendiline, kuid teil oli vaja ainult ühte!)
  • SD -kaardi lugeja
  • LEDid
  • Takistid
  • Kombatavad nupud
  • USB B minikaabel (Arduino Nano jaoks)
  • USB toitepank (kasutasin kohalikult ostetud odavat)

Samm: seadme vooluahel ja selgitus

Seade ja seadme selgitus
Seade ja seadme selgitus

Kohandasin oma vooluringi Arduino Nano seadmega töötamiseks, kuid saate oma vooluringi käitada erinevates Arduino seadmetes, muutes koodi ülaosas olevaid PIN -numbreid (järgmine jaotis). Seadme vooluringi seadistamiseks otsige "Arduino [Teie mudel] pinout" ja seal peaks olema palju pilte, mis illustreerivad, milliseid funktsioone iga tihvt saab täita (nt analoogsisend, SS, MOSI jne). Enamikul seadmetel on ka märgistatud tihvtid. Joonistasin selle skeemi EasyEDA redaktori abil, kuid lõin selle jootevaba leivalaua abil, kuna tahtsin selle võimalikult kiiresti luua ja paigutuse kiiresti ümber seadistada.

2. samm: programmeerimine

Programmeerimine
Programmeerimine

Kirjutasin seadmele heli salvestamiseks lihtsa koodi. Kasutasin inspiratsioonina Great Scotti koodi, kuid muutsin struktuuri, et suurendada tõhusust ja lihtsust. Samuti eemaldasin piirangud salvestatavate failide arvule ja lisasin rohkem kommentaare, mis peaksid aitama algajatel navigeerida. Laadige alla valmis kood ja avage see Arduino IDE abil. Laadige alla vajalikud moodulid ("SD.h", "SPI.h" ja "TMRpcm.h"), kasutades Arduino paketihaldurit (näidatud ülaltoodud piltidel).

WAV -faili salvestamine SD -kaardile on TMRpcm -i raamatukogu täiustatud funktsioon, nii et selle kasutamiseks peate muutma teegi konfiguratsioonifaili. Kuigi see kõlab heidutavalt (vähemalt minu jaoks), otsib see ainult faili "pcmConfig.h", kasutades failihaldurit, ja tühistab mõne koodirida (seejärel salvestab selle).

  1. Uno või mitte-mega tahvlitel tühistage rida #define buffSize 128
  2. Samuti tühistage kommentaarid #define ENABLE_RECORDING ja #define BLOCK_COUNT 10000UL

Kui olete Arduino IDE -sse naasnud, ühendage Arduino vooluvõrku, valige see ning seejärel kompileerige ja laadige programm üles. Seeriamonitori avamine annab teile jooksuajal ka tagasisidet.

3. samm: projekt ja testimine lõppenud

Valmis projekt ja testimine
Valmis projekt ja testimine

Kui olin juhtmestiku ja silumise lõpetanud, katsetasin projekti.

HOIATUS Seadme taaskäivitamine lähtestab failinime loenduri, mis põhjustab uute failide vanade failide ülekirjutamise.

Seadme kasutamiseks:

  1. ühendage USB -toitejuhe Arduinoga
  2. salvestamise alustamiseks vajutage puutetundlikku nuppu (LED süttib selle näitamiseks)
  3. salvestamise lõpetamiseks vajutage uuesti nuppu
  4. korrake seda nii paljude salvestuste jaoks
  5. ühendage lahti USB toitekaabel
  6. Eemaldage SD -kaart
  7. Sisestage SD -kaart arvutisse või telefoni
  8. Avage failid valitud taasesitusrakenduses

Selle projekti esialgne eesmärk oli testida MAX9814 mikrofoni, nii et tegin kolm katset, et selgitada välja selle sisseehitatud võimendi mõju tulemusele. Salvestiste tootmisel kasutasin kontrollmuutujana ühte Mozarti sümfooniat. Mängisin seda oma telefoni kõlaris, mida hoidsin kõigi kolme salvestuse puhul pideva kaugusega mikrofoni suunas. Ainus muutuja, mida muutsin, oli mikrofoni võimendus (reguleeritud ühendades selle VCC, GND või jättes selle hõljuma). Saadud heliklipid on lisatud. Samuti ühendasin 40dB ja 60dB heli üheks salvestuseks, milles 40dB mängitakse vasakus kõrvas ja 60dB paremas kõrvas. See muudab kvaliteedi erinevuse väga märgatavaks ja tõstab esile, kui oluline on MAX9814 mooduli pakutav võimendus.

Üldiselt jäin salvestamistulemustega uskumatult rahule, eriti kuna seadme seadistamine on üks lihtsamaid, mida olen näinud (ainult kolme juhtmega ja ilma väliste komponentideta - isegi lihtne LED nõuab takistit). Samuti tuleb arvestada, et Arduino Nano -l on 10 -bitine ADC, nii et iga amplituudinäit võib olla ainult üks 1024 diskreetsest väärtusest. Tänu heale helikvaliteedile, kompaktsele suurusele ja tühisele energiatarbimisele; Loodan seadet kasutada ka tulevastes projektides.

Kui ma pole piisavalt detailidesse laskunud, aitan ja annan hea meelega täiendavaid selgitusi. See on minu esimene juhendatav, nii et kõik minu antud nõuanded võivad kajastuda kõigis tulevastes projektides. Kui teil on ettepanekuid minu koodide täiustamiseks, lisan need hea meelega oma projektile GitHubis ja selles juhendis.

Soovitan: