Inhoudsopgave:

STM32CubeMx-microfoon (STM32F407VG): 5 stappen
STM32CubeMx-microfoon (STM32F407VG): 5 stappen

Video: STM32CubeMx-microfoon (STM32F407VG): 5 stappen

Video: STM32CubeMx-microfoon (STM32F407VG): 5 stappen
Video: Geek out with Charbax at embedded world 2019: PART 2 (STM32L5, STM32G0, FOTA over LoRAWAN) 2024, Juli-
Anonim
STM32CubeMx-microfoon (STM32F407VG)
STM32CubeMx-microfoon (STM32F407VG)

Hoi! In dit project zullen we proberen geluid te krijgen door een microfoon te gebruiken (externe niet ingebouwde microfoon) en dit via de luidspreker af te spelen. Deze tutorial zal erg kort zijn omdat ik uitleg zal geven over projectonderdelen aan de hand van enkele video's. Dus, laten we in het project springen:)

Stap 1: Software- en hardwarevereisten

Hardwarevereisten:

  • STM32F4-ontdekkingsbord (of een ander STM32F4-bord)
  • MAX9814 electret microfoon met versterker
  • PAM8403 audioversterkermodule
  • 4 OHM-luidspreker

Softwarevereisten:

  • STM32CubeMX
  • Keil uVision5

Stap 2: Bepaal het projectplan

Laten we dus eerst begrijpen wat we willen doen. Ten eerste willen we geluid krijgen van een electret-microfoon. Zoals je weet, verwerkt MCU alles digitaal. Geluid is echter een analoog signaal. We moeten het dus converteren naar een digitaal signaal en dit wordt gedaan door ADC (analoog naar digitaal omzetter) en het proces wordt sampling genoemd. U kunt zoeken naar meer informatie. Hier is een belangrijk punt: om het geluid van de luidspreker op de juiste manier te krijgen, moet de bemonsteringsfrequentie ten minste twee keer hoger zijn dan de audiofrequentie aan de uitgang. Dit wordt de stelling van Nyquist-Shannon genoemd.

Nadat we het naar een digitaal signaal hebben omgezet, kunnen we het verwerken zoals we willen en dat geluid vervolgens opnieuw uitvoeren. De luidspreker heeft echter een analoog signaal nodig. We moeten dit digitale signaal dus terug converteren naar analoog. Daarvoor gebruiken we DAC (digitaal naar analoog converter). Aan het einde kunnen we dat geluid uitvoeren:)

Stap 3: ADC en DAC instellen en implementeren met DMA

Zoals ik al zei, heb ik dit proces ook uit een video geleerd. Ik zal de link naar deze video geven. Wees geduldig en luister goed. Hij legt perfect het hele proces uit.

Links: Part1 en Part2

*Opmerking: Controleer deze regel in uw code en schakel DMA continu verzoek in:

hadc1. Init. DMAContinuousRequests = INSCHAKELEN;

Stap 4: Uit naar luidspreker

Uit naar spreker
Uit naar spreker

Nadat u alle stappen hebt uitgevoerd, moet u de luidspreker aansluiten zoals in de afbeelding hierboven. Speel daarna geluid af op je telefoon en verlaag het geluid tot de limiet die je nauwelijks kunt horen. Houd vervolgens de telefoon dicht bij de microfoon en u hoort luid geluid uit de luidspreker. Praat niet tegen de microfoon, want het zal moeilijk zijn om te bepalen of er output van de luidspreker is of niet:)

Stap 5: Conclusie

We zijn dus aan het einde van het project gekomen. Als je een vraag of probleem hebt, aarzel dan niet om te vragen:)

Aanbevolen: