Spisu treści:
- Krok 1: Wymagania dotyczące oprogramowania i sprzętu
- Krok 2: Ustal plan projektu
- Krok 3: Jak skonfigurować i wdrożyć ADC i DAC z DMA?
- Krok 4: Wyjdź do mówcy
- Krok 5: Wniosek
Wideo: Mikrofon STM32CubeMx (STM32F407VG): 5 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:30
Cześć! W tym projekcie postaramy się uzyskać dźwięk za pomocą mikrofonu (zewnętrznego, a nie wbudowanego) i odtworzyć go przez głośnik. Ten samouczek będzie bardzo krótki, ponieważ wyjaśnię części projektu, odnosząc się do niektórych filmów. Przejdźmy więc do projektu:)
Krok 1: Wymagania dotyczące oprogramowania i sprzętu
Wymagania sprzętowe:
- Płyta wykrywania STM32F4 (lub dowolna inna płyta STM32F4)
- MAX9814 mikrofon elektretowy ze wzmacniaczem
- Moduł wzmacniacza audio PAM8403
- Głośnik 4 omów
Wymagania Systemowe:
- STM32CubeMX
- Keil uVision5
Krok 2: Ustal plan projektu
Więc najpierw zrozummy, co chcemy zrobić. Najpierw chcemy uzyskać dźwięk z mikrofonu elektretowego. Jak wiesz, MCU przetwarza wszystko cyfrowo. Dźwięk jest jednak sygnałem analogowym. Musimy więc przekonwertować go na sygnał cyfrowy i robi to ADC (przetwornik analogowo-cyfrowy), a proces ten nazywamy próbkowaniem. Możesz wyszukać więcej informacji. Tutaj jest jedna ważna kwestia: Aby właściwie uzyskać dźwięk z głośnika, częstotliwość próbkowania powinna być co najmniej dwa razy wyższa niż częstotliwość dźwięku na wyjściu. Nazywa się to twierdzeniem Nyquista-Shannona.
Po przetworzeniu go na sygnał cyfrowy możemy go przetworzyć tak, jak chcemy, a następnie ponownie wyprowadzić ten dźwięk. Jednak głośnik potrzebuje sygnału analogowego. Więc musimy przekonwertować ten sygnał cyfrowy na analogowy z powrotem. Do tego wykorzystamy DAC (przetwornik cyfrowo-analogowy). Na koniec możemy wypuścić ten dźwięk:)
Krok 3: Jak skonfigurować i wdrożyć ADC i DAC z DMA?
Jak powiedziałem, nauczyłem się tego procesu również z filmu. Podam link do tego filmu. Bądź cierpliwy i słuchaj uważnie. Doskonale wyjaśnia cały proces.
Linki: Część1 i Część2
*Uwaga: zaznacz ten wiersz w kodzie i włącz ciągłe żądanie DMA:
hadc1. Init. DMAContinuousRequests = WŁĄCZ;
Krok 4: Wyjdź do mówcy
Po wykonaniu wszystkich czynności musisz podłączyć głośnik jak na powyższym obrazku. Następnie odtwórz dźwięk w telefonie i zmniejsz dźwięk do limitu, którego prawie nie słyszysz. Następnie zbliż telefon do mikrofonu, a usłyszysz głośno dźwięk z głośnika. Nie mów do mikrofonu, bo ciężko będzie wyłapać, czy jest wyjście z głośnika, czy nie:)
Krok 5: Wniosek
Tak więc dotarliśmy do końca projektu. Jeśli masz jakieś pytanie lub problem, nie wahaj się zapytać:)
Zalecana:
Zmodyfikuj tani mikrofon pojemnościowy LDC: 7 kroków (ze zdjęciami)
Modyfikacja taniego mikrofonu pojemnościowego LDC: Od dawna jestem audiofilem i zapalonym majsterkowiczem. Co oznacza, że moje ulubione projekty dotyczą Audio. Jestem również głęboko przekonany, że aby projekt DIY był fajny, musi być jeden z dwóch wyników, aby projekt był wart wykonania
Mikrofon do alkomatu: 25 kroków (ze zdjęciami)
Mikrofon do alkomatu: Mikrofon do alkomatu to system do niepozornego zbierania zestawów danych o zawartości alkoholu we krwi. Innymi słowy, trzeźwość człowieka można zmierzyć za pomocą urządzenia, które praktycznie nie różni się niczym od stojaka
STM32L100 Migająca dioda LED przy użyciu Atollic TrueSTUDIO i STM32CubeMX: 5 kroków
STM32L100 Blink LED przy użyciu Atollic TrueSTUDIO i STM32CubeMX: W tym projekcie opowiem o tym, jak migać LED przy użyciu 32L100discovery. Więc tutaj opowiem Ci o zasadzie działania tego samouczka z miganiem, a także jakiego rodzaju oprogramowania i sprzętu potrzebujesz
STM32F4 Discovery Board i komunikacja Python USART (STM32CubeMx): 5 kroków
STM32F4 Discovery Board i komunikacja Python USART (STM32CubeMx): Cześć! W tym samouczku postaramy się nawiązać komunikację USART między MCU STM32F4 ARM a Pythonem (można go zastąpić dowolnym innym językiem). Więc zacznijmy:)
Odbicie przycisku STM32CubeMX z przerwaniem: 5 kroków
STM32CubeMX Button Debounce With Interrupt: Cześć, w tym samouczku postaram się przedstawić moje proste rozwiązanie zapobiegające odbijaniu się przycisków, co jest bardzo poważnym problemem. W Internecie jest wiele filmów oferujących rozwiązanie tego problemu, ale żaden z nich nie dotyczy przerwania zewnętrznego. We wszystkich tych filmach przycisk