INHOUDSOPGAWE:

Arduino Nano -stemopnemer met die MAX9814 -mikrofoon: 3 stappe
Arduino Nano -stemopnemer met die MAX9814 -mikrofoon: 3 stappe

Video: Arduino Nano -stemopnemer met die MAX9814 -mikrofoon: 3 stappe

Video: Arduino Nano -stemopnemer met die MAX9814 -mikrofoon: 3 stappe
Video: Переработка энкодера колеса прокрутки мыши и его тестирование с помощью Arduino Nano 2024, Julie
Anonim
Arduino Nano stemopnemer met die MAX9814 mikrofoon
Arduino Nano stemopnemer met die MAX9814 mikrofoon
Arduino Nano stemopnemer met die MAX9814 mikrofoon
Arduino Nano stemopnemer met die MAX9814 mikrofoon
Arduino Nano stemopnemer met die MAX9814 mikrofoon
Arduino Nano stemopnemer met die MAX9814 mikrofoon

Ek het 'n MAX9814 -mikrofoon by AZ -aflewering op Amazon gekry en wou die toestel toets. Daarom het ek hierdie eenvoudige projek geskep wat gebou is op Great Scott's Spy Bug (gepubliseer onder hierdie Creative Commons -lisensie). Ek het die struktuur van die projekte redelik aangepas om die doeltreffendheid te verbeter en 'n paar nuwe funksies by te voeg. Dit is my eerste Instructables -projek, so dit sal nie perfek wees nie, maar ek is bereid om te leer en is oop vir advies.

Toetsresultate van die mikrofoon met verskillende winste word aan die einde bygevoeg, so as u net die kwaliteit van 40dB, 50dB en 60dB winste wil vergelyk, kan u daarheen oorslaan.

Ek hoop dat hierdie projek nuttig sal wees vir mense wat 'n mikrofoon in hul projek wil implementeer. Ek hoop ook om hierdie projek so toeganklik as moontlik vir beginners te maak, so ek het baie opmerkings by my kode gevoeg, maar ek is ook bly om my werk te hersien om ekstra verduideliking toe te voeg wat nuttig kan wees. Die bedrading is baie beginnersvriendelik, maar die implementering van die sagteware is 'n bietjie moeiliker.

Bekyk al die projeklêers en stel verbeterings aan my kode voor op my GitHub -bewaarplek.

Benodighede:

Amazon:

  • MAX9814 mikrofoon met versterker
  • Broodbord
  • Arduino Nano (dit is 'n pak van 3, maar jy het net een nodig gehad!)
  • SD kaartleser
  • LED's
  • Weerstande
  • Taktiele knoppies
  • USB B Mini -kabel (vir Arduino Nano)
  • USB -kragbank (ek het 'n goedkoop bank gebruik wat plaaslik gekoop is)

Stap 1: Kringloop en verduideliking van die toestel

Kringloop en verduideliking van toestel
Kringloop en verduideliking van toestel

Ek het my stroombaan aangepas om met die Arduino Nano -toestel te werk, maar u kan u kring op verskillende Arduino -toestelle bestuur deur die speldnommers bo -aan my kode te wysig (volgende afdeling). Soek "Arduino [Your model] pinout" om die kring op u toestel op te stel, en daar behoort baie beelde te wees wat illustreer watter funksies elke pen kan verrig (bv. Analoog invoer, SS, MOSI, ens.). Die meeste toestelle het ook penne met etikette. Ek het hierdie skets met die EasyEDA -redakteur geteken, maar dit gemaak met 'n soldeerlose broodbord, aangesien ek dit so vinnig as moontlik wou skep en die uitleg vinnig wou herkonfigureer.

Stap 2: Programmering

Programmering
Programmering

Ek het 'n paar eenvoudige kode geskryf om die klank op die toestel op te neem. Ek het Great Scott se kode as inspirasie gebruik, maar het die struktuur verander om die doeltreffendheid en eenvoud te verhoog. Ek het ook die beperkings op die aantal lêers wat opgeneem kan word, verwyder en meer kommentaar bygevoeg wat beginners moet help om te navigeer. Laai die voltooide kode hieronder af en maak dit oop met die Arduino IDE. Laai die vereiste modules af ("SD.h", "SPI.h" en "TMRpcm.h") met behulp van die Arduino -pakketbestuurder (getoon in die foto's hierbo).

Opneem na 'n WAV -lêer op 'n SD -kaart is 'n gevorderde funksie van die TMRpcm -biblioteek, sodat u die konfigurasie lêer van die biblioteek moet wysig om dit te gebruik. Alhoewel dit afskrikwekkend klink (dit het ten minste vir my gedoen), is dit slegs op soek na die 'pcmConfig.h' -lêer met behulp van lêerverkenner en 'n paar reëls kode nie (dan word dit gestoor).

  1. Op Uno- of nie-mega-borde, lewer kommentaar op die lyn #define buffSize 128
  2. Ontmerk ook nie #definieer ENABLE_RECORDING en #define BLOCK_COUNT 10000UL

Nadat u volledig teruggekeer het na die Arduino IDE, koppel u Arduino aan, kies dit en stel die program saam en laai dit op. As u die seriële monitor oopmaak, sal u ook terugvoering gee tydens die tydsduur.

Stap 3: Projek en toetsing voltooi

Projek en toetsing klaar
Projek en toetsing klaar

Toe ek klaar was met die bedrading en ontfouting, het ek die projek getoets.

WAARSKUWING om die toestel weer te begin, sal die lêernaamteller terugstel, wat veroorsaak dat nuwe lêers ou lêers oorskryf.

Om die toestel te gebruik:

  1. steek 'n USB -kragkabel in die Arduino
  2. druk op die tasbare knoppie om die opname te begin (die LED sal brand om dit aan te dui)
  3. druk weer op die knoppie om die opname te beëindig
  4. herhaal, want soveel opnames is nodig
  5. ontkoppel die USB -kragkabel
  6. Verwyder die SD -kaart
  7. Plaas die SD -kaart in 'n rekenaar of telefoon
  8. Maak die lêers in die gekose afspeelprogram oop

Die aanvanklike doel van hierdie projek was om die MAX9814 -mikrofoon te toets, en ek het drie toetse uitgevoer om uit te vind watter effek die ingeboude versterker daarvan op die resultaat het. Terwyl ek die opnames gemaak het, het ek een van die simfonieë van Mozart as 'n kontrolevariabele gebruik. Ek het dit op die telefoon se luidspreker gespeel, wat ek vir die drie opnames op 'n konstante afstand na die mikrofoon gerig het. Die enigste veranderlike wat ek verander het, was die versterking van die mikrofoon (aangepas deur dit aan VCC, GND te koppel of te laat dryf). Die gevolglike klankgrepe word aangeheg. Ek het ook die 40dB en die 60dB klank gekombineer in 'n enkele opname waarin die 40dB in die linkeroor gespeel word en die 60dB in die regteroor. Dit maak die kwaliteitverskil baie merkbaar en beklemtoon hoe belangrik die wins wat die MAX9814 -module bied.

Oor die algemeen was ek ongelooflik tevrede met die opname -resultate, veral omdat die opstelling van die toestel een van die eenvoudigste is wat ek gesien het (met slegs drie drade en geen eksterne komponente nie - selfs 'n eenvoudige LED benodig 'n weerstand). Daar moet ook in ag geneem word dat die Arduino Nano 'n 10bit ADC het, sodat enige amplitude -lesing slegs een van 1024 diskrete waardes kan wees. Vanweë sy goeie klankgehalte, kompakte grootte en onbeduidende kragverbruik; Ek hoop om die toestel in toekomstige projekte te gebruik.

As ek nie genoegsaam ingegaan het nie, help ek u graag en voeg ek meer verduideliking toe. Dit is my eerste instruksies, so enige advies wat ek nou kry, kan weerspieël word in al my projekte wat kom. As u voorstelle het om my kodes te verbeter, voeg ek dit graag by my projek op GitHub en hierdie instruksies.

Aanbeveel: