Sisällysluettelo:

STM32CubeMx -mikrofoni (STM32F407VG): 5 vaihetta
STM32CubeMx -mikrofoni (STM32F407VG): 5 vaihetta

Video: STM32CubeMx -mikrofoni (STM32F407VG): 5 vaihetta

Video: STM32CubeMx -mikrofoni (STM32F407VG): 5 vaihetta
Video: Программирование МК STM32. УРОК 5. Библиотека HAL. STM32 CUBE MX. Таймеры 2024, Marraskuu
Anonim
STM32CubeMx -mikrofoni (STM32F407VG)
STM32CubeMx -mikrofoni (STM32F407VG)

Hei! Tässä projektissa yritämme saada ääntä käyttämällä mikrofonia (ulkoinen ei sisäinen mikrofoni) ja toistaa sitä kaiuttimen kautta. Tämä opetusohjelma on hyvin lyhyt, koska annan selityksiä projektin osista joidenkin videoiden perusteella. Joten mennään projektiin:)

Vaihe 1: Ohjelmisto- ja laitteistovaatimukset

Laitteistovaatimukset:

  • STM32F4 -etsintäkortti (tai mikä tahansa muu STM32F4 -kortti)
  • MAX9814 -elektret -mikrofoni vahvistimella
  • PAM8403 -äänivahvistinmoduuli
  • 4 OHM kaiutin

Ohjelmistovaatimukset:

  • STM32CubeMX
  • Keil uVision 5

Vaihe 2: Määritä hankesuunnitelma

Joten ymmärrämme ensin, mitä haluamme tehdä. Ensinnäkin haluamme saada ääntä elektreettimikrofonista. Kuten tiedät, MCU käsittelee kaiken digitaalisesti. Ääni on kuitenkin analoginen signaali. Joten meidän on muutettava se digitaaliseksi signaaliksi, ja tämän tekee ADC (analoginen digitaalimuunnin), ja prosessia kutsutaan näytteenottoksi. Voit etsiä lisätietoja. Tässä on yksi tärkeä seikka: Jotta ääni saadaan kaiuttimesta asianmukaisesti, näytteenottotaajuuden tulisi olla vähintään kaksi kertaa suurempi kuin äänen taajuus ulostulossa. Tätä kutsutaan Nyquist-Shannonin lauseeksi.

Kun se on muunnettu digitaaliseksi signaaliksi, voimme käsitellä sitä haluamallamme tavalla ja antaa sitten äänen uudelleen. Kaiutin tarvitsee kuitenkin analogisen signaalin. Joten meidän on muutettava tämä digitaalinen signaali analogiseksi takaisin. Tätä varten käytämme digitaalista analogiamuunninta (DAC). Lopulta voimme antaa sen äänen:)

Vaihe 3: ADC: n ja DAC: n asentaminen ja käyttöönotto DMA: n avulla

Kuten sanoin, olen oppinut tämän prosessin myös videolta. Annan linkin tähän videoon. Ole kärsivällinen ja kuuntele tarkasti. Hän selittää täydellisesti koko prosessin.

Linkit: Osa 1 ja Osa 2

*Huomautus: Tarkista tämä rivi koodistasi ja ota käyttöön jatkuva DMA -pyyntö:

hadc1. Init. DMAContinuousRequests = KÄYTÖSSÄ;

Vaihe 4: Siirry kaiuttimeen

Puhujalle
Puhujalle

Kun olet tehnyt kaikki vaiheet, sinun on liitettävä kaiutin yllä olevan kuvan mukaisesti. Toista sen jälkeen ääni puhelimellasi ja vähennä ääntä rajaan, jonka kuulet tuskin. Vie sitten puhelin mikrofonin lähelle ja kuulet kaiuttimesta kovaa ääntä. Älä puhu mikrofonille, koska on vaikea ymmärtää, onko kaiutin lähdössä vai ei:)

Vaihe 5: Johtopäätös

Olemme siis saavuttaneet projektin lopun. Jos sinulla on kysyttävää tai ongelmia, älä epäröi kysyä:)

Suositeltava: