İçindekiler:
- Adım 1: Yazılım ve Donanım Gereksinimleri
- Adım 2: Proje Planını Belirleyin
- Adım 3: DMA ile ADC ve DAC Nasıl Kurulur ve Uygulanır
- Adım 4: Hoparlöre Çıkış
- Adım 5: Sonuç
Video: STM32CubeMx Mikrofon (STM32F407VG): 5 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:19
Selam! Bu projede mikrofon kullanarak (harici değil onboard mikrofon) ses almaya ve hoparlörden çalmaya çalışacağız. Bu ders çok kısa olacak çünkü proje bölümlerinin açıklamalarını bazı videolara referansla vereceğim. Neyse projeye geçelim:)
Adım 1: Yazılım ve Donanım Gereksinimleri
Donanım Gereksinimleri:
- STM32F4 keşif kartı (veya başka bir STM32F4 kartı)
- Amplifikatörlü MAX9814 elektret mikrofon
- PAM8403 ses yükseltici modülü
- 4 OHM hoparlör
Yazılım gereksinimleri:
- STM32CubeMX
- Keil uVision5
Adım 2: Proje Planını Belirleyin
Öyleyse, önce ne yapmak istediğimizi anlayalım. İlk olarak elektret mikrofondan ses almak istiyoruz. Bildiğiniz gibi MCU her şeyi dijital olarak işler. Ancak ses analog sinyaldir. Bu yüzden, onu dijital sinyale dönüştürmemiz gerekiyor ve bu, ADC (analog to digital converter) tarafından yapılır ve işleme örnekleme denir. Daha fazla bilgi için arama yapabilirsiniz. Burada önemli bir nokta var: Hoparlörden uygun şekilde ses alabilmek için örnekleme frekansı çıkıştaki ses frekansından en az iki kat fazla olmalıdır. Buna Nyquist-Shannon teoremi denir.
Dijital sinyale dönüştürdükten sonra istediğimiz gibi işleyebilir ve tekrar o sesi verebiliriz. Ancak, hoparlörün analog sinyale ihtiyacı vardır. Yani, bu dijital sinyali tekrar analoga dönüştürmemiz gerekiyor. Bunun için DAC (dijitalden analoğa dönüştürücü) kullanacağız. Sonunda o sesi çıkarabiliriz:)
Adım 3: DMA ile ADC ve DAC Nasıl Kurulur ve Uygulanır
Dediğim gibi ben de bir videodan bu işlemi öğrendim. Bu videonun linkini vereceğim. Sabırlı olun ve dikkatlice dinleyin. Tüm süreci mükemmel bir şekilde açıklıyor.
Bağlantılar: Bölüm1 ve Bölüm2
*Not: Kodunuzda bu satırı kontrol edin ve DMA sürekli isteğini etkinleştirin:
hadc1. Init. DMAContinulousRequests = ETKİNLEŞTİR;
Adım 4: Hoparlöre Çıkış
Tüm adımları yaptıktan sonra hoparlörü yukarıdaki görüntüdeki gibi bağlamanız gerekiyor. Daha sonra telefonunuzda ses çalın ve sesi zar zor duyabileceğiniz limite kadar azaltın. Ardından, telefonu mikrofona yaklaştırın ve hoparlörden yüksek sesle ses duyacaksınız. Mikrofona konuşmayın çünkü hoparlörden çıkış olup olmadığını anlamak zor olacak:)
Adım 5: Sonuç
Böylece projenin sonuna geldik. Herhangi bir sorunuz veya sorununuz varsa lütfen sormaktan çekinmeyin:)
Önerilen:
Bir Çift Kulaklığa Mikrofon Ekleme: 6 Adım
Bir Çift Kulaklığa Mikrofon Ekleme: Sesini gerçekten sevdiğiniz ancak mikrofonu olmayan bir çift kulaklığınız var mı? Bu kolay talimatı izleyin ve en sevdiğiniz kulaklıkları cep telefonunuzla kullanmaya hazır hale getirin. Sorumluluk Reddi: burada açıklanan prosedür m
4 Mikrofon Mikser Preamplifikatörü: 6 Adım (Resimlerle)
4 Mikrofon Mikser Preamplifikatörü: Bir süre önce şu sorunu çözmem istendi: küçük bir koro dört sabit mikrofonu çalıyor. Bu dört mikrofondan gelen ses sinyallerinin yükseltilmesi, karıştırılması ve elde edilen sinyalin bir ses gücüne uygulanması gerekiyordu
Atollic TrueSTUDIO ve STM32CubeMX Kullanan STM32L100 Yanıp Sönen LED: 5 Adım
Atollic TrueSTUDIO ve STM32CubeMX Kullanarak STM32L100 Yanıp Sönen LED: Bu projede size 32L100discovery kullanarak bir LED'in nasıl yanıp söneceğini anlatacağım. Bu yüzden burada size bu yanıp sönen öğreticinin çalışma prensibinden bahsedeceğim ve ayrıca ne tür bir yazılım ve donanıma ihtiyacınız olduğunu da anlatacağım
STM32F4 Discovery Board ve Python USART İletişimi (STM32CubeMx): 5 Adım
STM32F4 Discovery Board ve Python USART İletişimi (STM32CubeMx): Merhaba! Bu derste STM32F4 ARM MCU ve Python arasında USART iletişimi kurmaya çalışacağız (herhangi bir başka dil ile değiştirilebilir). O halde başlayalım
STM32CubeMX Düğmesi Kesintili Geri Dönme: 5 Adım
Kesintili STM32CubeMX Düğme Geri Dönmesi: Merhaba, bu derste çok ciddi bir sorun olan düğme sıçramasını önlemek için basit bir çözüm sunmaya çalışacağım. İnternette bu soruna çözüm önerecek çok video var ama hiçbiri harici kesme için değil. Bu videoların tümünde düğme