Mundarija:

MAX9814 mikrofonli Arduino Nano ovoz yozuvchisi: 3 qadam
MAX9814 mikrofonli Arduino Nano ovoz yozuvchisi: 3 qadam

Video: MAX9814 mikrofonli Arduino Nano ovoz yozuvchisi: 3 qadam

Video: MAX9814 mikrofonli Arduino Nano ovoz yozuvchisi: 3 qadam
Video: Микрофонный усилитель с АРУ, MAX9814 2024, Iyul
Anonim
MAX9814 mikrofonli Arduino Nano ovoz yozuvchisi
MAX9814 mikrofonli Arduino Nano ovoz yozuvchisi
MAX9814 mikrofonli Arduino Nano ovoz yozuvchisi
MAX9814 mikrofonli Arduino Nano ovoz yozuvchisi
MAX9814 mikrofonli Arduino Nano ovoz yozuvchisi
MAX9814 mikrofonli Arduino Nano ovoz yozuvchisi

Men Amazonda AZ etkazib berishdan MAX9814 mikrofonini oldim va qurilmani sinab ko'rmoqchi bo'ldim. Shuning uchun men Buyuk Skotning josuslik xatosi asosida yaratilgan ushbu oddiy loyihani yaratdim (bu ijodiy umumiy litsenziya ostida nashr etilgan). Men samaradorlikni oshirish va bir nechta yangi xususiyatlarni qo'shish uchun loyihalar tuzilishini biroz o'zgartirdim. Bu mening "Instructables" loyihasi, shuning uchun u mukammal bo'lmaydi, lekin men o'rganishga va maslahatlarga ochiqman.

Oxirida turli xil yutuqlarga ega mikrofondan olingan test natijalari qo'shiladi, shuning uchun agar siz 40dB, 50dB va 60dB yutuqlarining sifatini solishtirmoqchi bo'lsangiz, u erga o'tishingiz mumkin.

Umid qilamanki, bu loyiha mikrofonni o'z loyihasiga kiritmoqchi bo'lganlar uchun foydali bo'ladi. Men, shuningdek, ushbu loyihani yangi boshlanuvchilar uchun iloji boricha qulayroq qilishiga umid qilaman, shuning uchun men o'z kodimga ko'plab izohlar qo'shdim, lekin foydali bo'lishi mumkin bo'lgan qo'shimcha tushuntirishlarni qo'shish uchun o'z ishimni qayta ko'rib chiqishdan xursandman. Ulanish juda yangi boshlanuvchilar uchun qulay, lekin dasturiy ta'minotni amalga oshirish biroz murakkabroq.

Barcha loyiha fayllarini ko'ring va GitHub omborimdagi kodimni yaxshilashni taklif qiling.

Ta'minot:

Amazon:

  • MAX9814 kuchaytirgichli mikrofon
  • Non paneli
  • Arduino Nano (bu 3 ta to'plam, lekin sizga faqat bittasi kerak!)
  • SD -kartani o'quvchi
  • LEDlar
  • Rezistorlar
  • Qo'l tugmalari
  • USB B Mini kabeli (Arduino Nano uchun)
  • USB quvvat banki (men mahalliy sotib olingan arzonidan foydalandim)

1 -qadam: O'chirish va qurilmani tushuntirish

O'chirish va qurilmani tushuntirish
O'chirish va qurilmani tushuntirish

Men o'z davrimni Arduino Nano qurilmasi bilan ishlashga moslashtirdim, lekin siz o'z kodingizni yuqori qismidagi pin raqamlarini tahrir qilib, Arduino -ning turli xil qurilmalarida sxemangizni ishga tushirishingiz mumkin (keyingi bo'lim). Qurilmangizda kontaktlarning zanglashini o'rnatish uchun "Arduino [Sizning modelingiz] pinout" ni qidiring va har bir pin qanday funktsiyalarni bajarishini ko'rsatadigan ko'plab rasmlar bo'lishi kerak (masalan, analog kirish, SS, MOSI va boshqalar). Ko'pgina qurilmalar, shuningdek, etiketli pinlar bilan birga keladi. Men ushbu sxemani EasyEDA muharriri yordamida chizdim, lekin uni lehimsiz non paneli yordamida yaratdim, chunki men buni iloji boricha tezroq yaratmoqchi bo'ldim va tartibni tezda qayta sozlashni xohladim.

2 -qadam: dasturlash

Dasturlash
Dasturlash

Men qurilmaga ovoz yozish uchun oddiy kod yozdim. Men Buyuk Skott kodini ilhom sifatida ishlatardim, lekin samaradorlik va soddalikni oshirish uchun tuzilmani o'zgartirdim. Shuningdek, men yozilishi mumkin bo'lgan fayllar soniga qo'yilgan cheklovlarni olib tashladim va yangi boshlanuvchilarga navigatsiya qilishda yordam beradigan qo'shimcha izohlar qo'shdim. Tayyor kodni quyida yuklab oling va Arduino IDE yordamida oching. Arduino Paket menejeri yordamida kerakli modullarni ("SD.h", "SPI.h" va "TMRpcm.h") yuklab oling (yuqoridagi rasmlarda ko'rsatilgan).

WAV faylini SD -kartaga yozib olish TMRpcm kutubxonasining ilg'or xususiyatidir, shuning uchun undan foydalanish uchun kutubxonaning konfiguratsiya faylini tahrir qilish kerak. Bu juda qo'rqinchli bo'lib tuyulsa -da (hech bo'lmaganda men uchun shunday bo'lgan), u faqat "Explorer" yordamida "pcmConfig.h" faylini qidiradi va bir necha satr kodni izohlamaydi (keyin uni saqlaydi).

  1. Uno yoki mega bo'lmagan taxtalarda #define buffSize 128 qatoriga izoh qoldirmang
  2. Izoh bermang #define ENABLE_RECORDING va #define BLOCK_COUNT 10000UL

Arduino IDE -ga to'liq qaytganingizdan so'ng, Arduino -ni ulang, tanlang va keyin dasturni kompilyatsiya qiling va yuklang. Seriyali monitorni ochish, shuningdek, ish vaqtida sizga ba'zi fikrlarni bildiradi.

3 -qadam: Loyiha va test tugadi

Loyiha va sinovlar yakunlandi
Loyiha va sinovlar yakunlandi

Ulanish va disk raskadrovka ishlarini tugatgandan so'ng, men loyihani sinab ko'rdim.

OGOHLANTIRISH, qurilmani qayta ishga tushirish, fayl nomini hisoblagichini qayta o'rnatadi, bu yangi fayllarning eski fayllar ustiga yozilishiga olib keladi.

Qurilmadan foydalanish uchun:

  1. USB quvvat simini Arduino -ga ulang
  2. yozishni boshlash uchun teginish tugmachasini bosing (LED buni ko'rsatib yonadi)
  3. yozishni tugatish uchun tugmani qayta bosing
  4. takrorlang, chunki qancha yozuv kerak bo'lsa
  5. USB quvvat simini ajratib oling
  6. SD -kartani chiqarib oling
  7. SD -kartani kompyuter yoki telefonga joylashtiring
  8. Tanlangan ijro dasturidagi fayllarni oching

Ushbu loyihaning dastlabki maqsadi MAX9814 mikrofonini sinab ko'rish edi, shuning uchun uning o'rnatilgan kuchaytirgichi natijaga qanday ta'sir qilganini bilish uchun men uchta test o'tkazdim. Yozuvlarni tayyorlashda men Motsart simfoniyalaridan birini boshqaruv o'zgaruvchisi sifatida ishlatardim. Men uni telefonim karnayida o'ynadim, u har uch yozuv uchun ham doimiy masofada joylashgan mikrofonga ishora qilardi. Men o'zgartirgan yagona o'zgaruvchi - bu mikrofonning yutug'i (uni VCC, GND ga ulash yoki uni suzuvchi qoldirish orqali sozlash). Olingan audiokliplar biriktiriladi. Men 40dB va 60dB ovozni bitta yozuvga birlashtirdim, unda 40dB chap quloqda, 60dB esa o'ng quloqda ijro etiladi. Bu sifatdagi farqni juda sezilarli qiladi va MAX9814 moduli taqdim etgan daromad qanchalik muhimligini ko'rsatadi.

Umuman olganda, men yozib olish natijalaridan juda mamnun bo'ldim, ayniqsa, qurilma sozlamalari men ko'rgan eng oddiylardan biri (faqat uchta simli va tashqi komponentlarsiz - hatto oddiy LEDga qarshilik kerak). Shuni ham hisobga olish kerakki, Arduino Nano 10bitli ADCga ega, shuning uchun har qanday amplitudali o'qish faqat 1024 diskret qiymatlardan biri bo'lishi mumkin. Yaxshi ovoz sifati, ixcham hajmi va ahamiyatsiz quvvat sarfi tufayli; Umid qilamanki, kelgusi loyihalarda qurilmadan foydalanaman.

Agar men batafsil ma'lumotga ega bo'lmasam, yordam berishdan va qo'shimcha tushuntirish berishdan xursand bo'lardim. Bu mening birinchi yo'riqnomam, shuning uchun menga hozir berilgan har qanday maslahatlar mening barcha loyihalarimda aks ettirilishi mumkin. Agar sizda mening kodlarimni takomillashtirish bo'yicha takliflaringiz bo'lsa, men ularni GitHub va ushbu ko'rsatmalarni loyihamga qo'shishdan xursand bo'laman.

Tavsiya: