STM32F401 ile PCM5102 32 Bit Audio DAC Yapımı

👤 Yazar: ozcan 📅 Tarih: 04.07.2026 14:58 👁️ Görüntüleme: 74

STM32F401 ve PCM5102A ile USB DAC Yapımı: 32-Bit/96kHz Yüksek Çözünürlüklü Ses Kartı

STM32CubeIDE ile Derleme Rehberi ve Donanım Konfigürasyonu

Dijital ses projelerine meraklıysanız ve kendi yüksek kaliteli ses kartınızı tasarlamak istiyorsanız, har-in-air'ın açık kaynaklı projesi harika bir temel sunuyor. Bu rehberimizde, piyasada kolayca bulunabilen STM32F401RCT6 "Black Pill" geliştirme kartı ve popüler Texas Instruments PCM5102A DAC modülünü bir araya getirerek üstün performanslı bir harici USB ses kartını nasıl yapacağınızı adım adım inceliyoruz.

Cihaz, bilgisayarınıza takıldığı anda bir USB Full Speed Class 1 Audio aygıtı olarak otomatik olarak tanınır ve herhangi bir harici sürücü kurulumu gerektirmez. Gücünü tamamen USB üzerinden alan bu sistem, asenkron ses aktarımı sayesinde pürüzsüz bir dinleme deneyimi sunar.

Ses Kalitesinin Sırrı: 32-Bit Genişletme ve Örnekleme

Bu projenin en büyük avantajlarından biri ses sinyallerini işleme biçimidir. Bilgisayarınızdan oynattığınız standart 16-bit çözünürlüğe sahip ses akışları (örneğin 44.1kHz veya 48kHz standart müzik dosyaları), STM32F401 üzerindeki firmware tarafından dijital olarak 32-bit veri çerçevesine (data frame) genişletilir ve 96kHz örnekleme frekansına yeniden örneklenir (resampling).

I2S protokolünün Philips standardında 32-bit veri formatı kullanılarak PCM5102A modülüne aktarılan bu veri, kulaklıklarınızdan çok daha yüksek dinamik aralıkta, bas ve tiz frekanslarının net olarak ayrıldığı, odyofil seviyesinde zengin detaylara sahip bir ses almanızı sağlar.

Donanım Bağlantı Şeması (Pinout)

STM32 Black Pill kartı ile PCM5102A modülü arasındaki bağlantıları aşağıdaki tabloya göre yapmanız gerekir. Donanımsal gürültüyü engellemek için 5V ve GND hatları arasına paralel olarak 100uF 16V kondansatör ve 5V TVS diyot eklenmesi tavsiye edilir.

STM32F401 Pin PCM5102A Pin Açıklama / Görev
5V VCC / VIN Güç Girişi (+5V)
GND GND Ortak Toprak
B13 BCK I2S Bit Clock (Sinyal Saati)
B15 DIN I2S Data Input (Ses Verisi)
B12 LCK I2S LR Clock (Sol/Sağ Kanal Seçimi)
B8 XMT Mute (Active Low - Ses Kontrolü)
Bağlantı Yok SCK / FLT / DMP / FMT Modül üzerindeki bu pinlerin tamamını GND'ye köprüleyin. (Dahili saat üretimi, normal gecikme ve I2S format seçimi için)

STM32CubeIDE ile Projeyi Derleme ve Yükleme

Proje kodlarını düzenlemek ve mikrodenetleyiciye yüklemek için STMicroelectronics firmasının resmi geliştirme ortamı olan STM32CubeIDE kullanılmaktadır. Projeyi içe aktarmak ve derlemek için şu adımları izleyin:

  1. Aşağıdaki bağlantıdan indirdiğiniz kaynak kod ZIP dosyasını bilgisayarınızda bir klasöre çıkartın.
  2. STM32CubeIDE'yi açın. Üst menüden File > New > Makefile Project with Existing Code seçeneğine tıklayın.
  3. Açılan pencerede Existing Code Location kısmına kodları çıkardığınız dizini gösterin. Toolchain (Derleyici araç takımı) olarak Cross GCC for ARM Cortex-M devices seçeneğini seçip Finish butonuna tıklayın.
  4. Proje içe aktarıldıktan sonra proje adına sağ tıklayıp Properties penceresine gidin. C/C++ Build > Settings menüsü altındaki MCU Settings tabından hedef çip olarak STM32F401RC modelini veya kendi MCU'nuzu seçin (Bu adım hata ayıklayıcının doğru çalışması için kritiktir).
  5. Proje klasöründeki Makefile dosyasını açarak MCU = STM32F401 ve DAC = PCM5102A tanımlamalarının aktif olduğundan emin olun. Değil ise satır başlarındaki # işaretlerini konfigürasyonunuza göre ayarlayın.
  6. Karta kodu yüklemek için ST-Link V2 programlayıcınızı bağlayın. STM32CubeIDE arayüzündeki Build (Çekiç ikonuna) basarak projeyi derleyin, ardından Run / Flash butonuna basarak yazılımı kartınıza yükleyin.

Cihaz Ayarları (Windows)

Kart başarıyla programlandıktan sonra USB Type-C kablosu ile bilgisayarınıza bağlayın. Denetim Masası > Ses > Oynatma aygıtları listesinden cihazınızı bulun. Özellikler penceresindeki Gelişmiş sekmesinden varsayılan biçimi 32-bit, 96000 Hz (Stüdyo Kalitesi) olarak ayarlayarak en yüksek başarım oranını elde edebilirsiniz. Android cihazlarınızda da kullanabilirsiniz. Android 8'de test edilmiştir.

Proje Dosyaları

STM32CubeIDE için uyumlu hale getirilmiş, gerekli tüm HAL ve CMSIS sürücü dosyalarını içeren kaynak kod paketini aşağıdaki bağlantıdan indirebilirsiniz:

[ STM32F411_USB_AUDIO_DAC.zip Dosyasını İndir]

Bu makale, GitHub'daki har-in-air/STM32F411_USB_AUDIO_DAC açık kaynak projesinin teknik verileri ve donanım mimarisi referans alınarak yenidir.com için özel olarak düzenlenmiştir.

💬 Yorumlar

Henüz yorum yapılmamış. İlk yorumu siz yapın!

Bir Yorum Bırakın

Güvenlik Kontrolü:

Yenidir.com
↑ Sayfa Başı
📞 İletişim ✉ E-Posta Gönder 🟥 YouTube
© 2026 Yenidir.com
Yenidir CMS V0.1