Innholdsfortegnelse:
- Trinn 1: Krav til programvare og maskinvare
- Trinn 2: Bestem prosjektplan
- Trinn 3: Hvordan konfigurere og implementere ADC og DAC med DMA
- Trinn 4: Ut til høyttaler
- Trinn 5: Konklusjon
Video: STM32CubeMx mikrofon (STM32F407VG): 5 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:23
Hei! I dette prosjektet vil vi prøve å få lyd ved å bruke mikrofon (ekstern ikke innebygd mikrofon) og spille den gjennom høyttaler. Denne opplæringen vil være veldig kort, da jeg vil gi forklaringer på prosjektdeler ved å referere til noen videoer. Så la oss hoppe inn i prosjektet:)
Trinn 1: Krav til programvare og maskinvare
Krav til maskinvare:
- STM32F4 discovery board (eller et annet STM32F4 board)
- MAX9814 electret mikrofon med forsterker
- PAM8403 lydforsterkermodul
- 4 OHM høyttaler
Programvarekrav:
- STM32CubeMX
- Keil uVision5
Trinn 2: Bestem prosjektplan
Så la oss først forstå hva vi vil gjøre. Først vil vi få lyd fra elektretmikrofon. Som du vet, behandler MCU alt digitalt. Lyd er imidlertid et analogt signal. Så vi må konvertere det til digitalt signal, og dette gjøres av ADC (analog til digital omformer), og prosessen kalles sampling. Du kan søke etter mer informasjon. Her er det et viktig poeng: For å få lyd fra høyttaleren på riktig måte, bør samplingsfrekvensen være minst to ganger høyere enn lydfrekvensen ved utgangen. Dette kalles Nyquist-Shannon teorem.
Etter å ha konvertert det til digitalt signal kan vi behandle det som vi vil og deretter sende ut den lyden igjen. Høyttaleren trenger imidlertid et analogt signal. Så vi må konvertere dette digitale signalet til analog bakside. For det vil vi bruke DAC (digital til analog omformer). På slutten kan vi sende ut den lyden:)
Trinn 3: Hvordan konfigurere og implementere ADC og DAC med DMA
Som jeg sa, har jeg også lært denne prosessen fra en video. Jeg gir lenken til denne videoen. Vær tålmodig og lytt nøye. Han forklarer perfekt hele prosessen.
Lenker: Del1 og Del2
*Merk: Sjekk denne linjen i koden din og aktiver DMA -forespørsel kontinuerlig:
hadc1. Init. DMAContinuousRequests = ENABLE;
Trinn 4: Ut til høyttaler
Etter at du har gjort alle trinnene, må du koble høyttaleren som bildet ovenfor. Etter det kan du spille av lyd på telefonen og redusere lyden ned til grensen som du nesten ikke kan høre. Ta deretter telefonen nær mikrofonen, og du vil høre lyd fra høyttaleren høyt. Ikke snakk med mikrofon, for det vil være vanskelig å fange om det er utgang fra høyttaleren eller ikke:)
Trinn 5: Konklusjon
Så vi har nådd slutten av prosjektet. Hvis du har spørsmål eller problemer, ikke nøl med å spørre:)
Anbefalt:
Arduino Nano Voice Recorder Med MAX9814 mikrofon: 3 trinn
Arduino Nano Voice Recorder Med MAX9814 -mikrofonen: Jeg fikk en MAX9814 -mikrofon fra AZ -levering på Amazon og ønsket å teste enheten. Derfor opprettet jeg dette enkle prosjektet bygget på Great Scotts Spy Bug (publisert under denne creative commons -lisensen). Jeg endret prosjektstrukturen ganske
Med et mikrofon hjemmelaget stativ (Bozuk Mikrofon Ile El Yapımı stativ): 11 trinn
Med et mikrofon hjemmelaget stativ (Bozuk Mikrofon Ile El Yapımı stativ): Bozulmuş Mikrofon ile kameranıza stativ yapabilirsiniz..Du kan lage kameraet ditt med en stativmikrofon
STM32L100 Blink LED ved bruk av Atollic TrueSTUDIO og STM32CubeMX: 5 trinn
STM32L100 Blink LED ved hjelp av Atollic TrueSTUDIO og STM32CubeMX: I dette prosjektet skal jeg fortelle deg hvordan du blinker en LED ved hjelp av 32L100discovery. Så her skal jeg fortelle deg om arbeidsprinsippet for denne blinkled -opplæringen, også hvilken type programvare og maskinvare du trengte
STM32F4 Discovery Board og Python USART Communication (STM32CubeMx): 5 trinn
STM32F4 Discovery Board og Python USART Communication (STM32CubeMx): Hei! I denne opplæringen vil vi prøve å etablere USART -kommunikasjon mellom STM32F4 ARM MCU og Python (den kan erstattes av et hvilket som helst annet språk). Så la oss komme i gang
STM32CubeMX -knappen avsluttes med avbrudd: 5 trinn
STM32CubeMX Button Debounce With Interrupt: Hei, i denne opplæringen vil jeg prøve å gi min enkle løsning for å forhindre knappestopp som er et veldig alvorlig problem. På internett er det mange videoer som tilbyr løsning på dette problemet, men ikke noen av dem for ekstern avbrudd. I alle disse videoene knappen