Obsah:

Mikrofon STM32CubeMx (STM32F407VG): 5 kroků
Mikrofon STM32CubeMx (STM32F407VG): 5 kroků

Video: Mikrofon STM32CubeMx (STM32F407VG): 5 kroků

Video: Mikrofon STM32CubeMx (STM32F407VG): 5 kroků
Video: Kurs STM32 #10 Enkoder inkrementalny 2024, Listopad
Anonim
Mikrofon STM32CubeMx (STM32F407VG)
Mikrofon STM32CubeMx (STM32F407VG)

Ahoj! V tomto projektu se pokusíme získat zvuk pomocí mikrofonu (externí ne vestavěný mikrofon) a přehrávat jej prostřednictvím reproduktoru. Tento tutoriál bude velmi krátký, protože poskytnu vysvětlení částí projektu s odkazem na některá videa. Pojďme tedy do projektu:)

Krok 1: Požadavky na software a hardware

Hardwarové požadavky:

  • Deska zjišťování STM32F4 (nebo jakákoli jiná deska STM32F4)
  • Elektretový mikrofon MAX9814 se zesilovačem
  • Modul zesilovače zvuku PAM8403
  • Reproduktor 4 OHM

Softwarové požadavky:

  • STM32CubeMX
  • Keil uVision5

Krok 2: Určení plánu projektu

Pojďme tedy nejprve porozumět tomu, co chceme dělat. Nejprve chceme získat zvuk z elektretového mikrofonu. Jak víte, MCU zpracovává vše digitálně. Zvuk je však analogový signál. Musíme jej tedy převést na digitální signál a to se provádí pomocí ADC (analogově digitální převodník) a tento proces se nazývá vzorkování. Můžete vyhledat další informace. Zde je jeden důležitý bod: Aby se zvuk z reproduktoru odpovídajícím způsobem dostal, vzorkovací frekvence by měla být alespoň dvakrát vyšší než zvuková frekvence na výstupu. Říká se tomu Nyquistova-Shannonova věta.

Po převedení na digitální signál jej můžeme zpracovat, jak chceme, a poté znovu vydat tento zvuk. Reproduktor však potřebuje analogový signál. Potřebujeme tedy převést tento digitální signál na analogový zpět. K tomu použijeme DAC (převodník digitálního signálu na analogový). Na konci můžeme ten zvuk vydat:)

Krok 3: Jak nastavit a implementovat ADC a DAC pomocí DMA

Jak jsem řekl, naučil jsem se tento proces také z videa. Dám odkaz na toto video. Buďte trpěliví a pozorně poslouchejte. Dokonale vysvětluje celý proces.

Odkazy: Část 1 a Část 2

*Poznámka: Zkontrolujte tento řádek v kódu a povolte nepřetržitý požadavek DMA:

hadc1. Init. DMAContinuousRequests = POVOLIT;

Krok 4: Z reproduktoru

Out to Speaker
Out to Speaker

Po provedení všech kroků musíte reproduktor připojit jako na obrázku výše. Poté přehrajte zvuk v telefonu a snižte zvuk až na hranici, kterou téměř neslyšíte. Poté přiložte telefon k mikrofonu a z reproduktoru uslyšíte hlasitý zvuk. Nemluvte s mikrofonem, protože bude těžké zachytit, zda je výstup z reproduktoru nebo ne:)

Krok 5: Závěr

Tak jsme se dostali na konec projektu. Pokud máte jakýkoli dotaz nebo problém, neváhejte se zeptat:)

Doporučuje: