Inhoudsopgave:
- Stap 1: Software- en hardwarevereisten
- Stap 2: Bepaal het projectplan
- Stap 3: ADC en DAC instellen en implementeren met DMA
- Stap 4: Uit naar luidspreker
- Stap 5: Conclusie
Video: STM32CubeMx-microfoon (STM32F407VG): 5 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:16
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
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:
Game Design in Flick in 5 stappen: 5 stappen
Game-ontwerp in Flick in 5 stappen: Flick is een heel eenvoudige manier om een game te maken, vooral zoiets als een puzzel, visuele roman of avonturengame
Gezichtsdetectie op Raspberry Pi 4B in 3 stappen: 3 stappen
Gezichtsdetectie op Raspberry Pi 4B in 3 stappen: In deze Instructable gaan we gezichtsdetectie uitvoeren op Raspberry Pi 4 met Shunya O/S met behulp van de Shunyaface-bibliotheek. Shunyaface is een bibliotheek voor gezichtsherkenning/detectie. Het project streeft naar de hoogste detectie- en herkenningssnelheid met
STM32L100 Knipper-LED met Atollic TrueSTUDIO en STM32CubeMX - Ajarnpa
STM32L100 Knipper-LED met behulp van Atollic TrueSTUDIO en STM32CubeMX: In dit project ga ik je vertellen hoe je een LED kunt laten knipperen met 32L100discovery. Dus hier ga ik je vertellen over het werkingsprincipe voor deze knipperende led-zelfstudie, ook welk type software en hardware je nodig hebt
STM32F4 Discovery Board en Python USART-communicatie (STM32CubeMx): 5 stappen
STM32F4 Discovery Board en Python USART-communicatie (STM32CubeMx): Hallo! In deze tutorial zullen we proberen om USART-communicatie tot stand te brengen tussen STM32F4 ARM MCU en Python (deze kan worden vervangen door elke andere taal). Dus laten we beginnen:)
STM32CubeMX-knop debounce met onderbreking - Ajarnpa
STM32CubeMX Button Debounce With Interrupt: Hallo, in deze tutorial zal ik proberen mijn eenvoudige oplossing te geven om het stuiteren van de knop te voorkomen, wat een zeer serieus probleem is. Op internet zijn er veel video's die een oplossing voor dit probleem bieden, maar geen enkele voor externe onderbreking. In al deze video's knop