Digital devrelerle ses uygulamaları - ADC - Taban Gürültüsü

Başlatan z, 23 Ocak 2013, 16:34:06

z

STM32F4 Discovery kitini kullanarak gitarla ilgili efect cihazı yapmaya çalışıyorum.

12 Bitlik ADC den 80Khz de sample alıyor ve bunu DAC'dan geri basıyorum.

ADC  önünde ve DAC çıkışında LF347 gibi ses uygulamalarında tatminkar sonuç veren opamp kullanıyorum.

Sorunum taban gürültüsünün yüksek olması. Hışş sesi ve ara ara biraz da çıtırtı.

Bu akşam devreyi komple alkolle yıkayacağım. Ses kartlarında bu tür sorunlar olmuyor.

Şimdi gelelim Analog ve Digital Gnd konusuna.

Motor uygulamalarında bu tip taban gürültüsü fazla olmayınca çok önemi yoktu. Fakat ses uygulamalarında
kulak duyduğu için çok önemli hale geliyor. Bu yüzden Analog Gnd ile Digital Gnd'yi ortak kullanmam
sorun teşkil etmiyordu.

Merak ettiğim konu çipin ADC gnd ile Digital GND pinleri çip içinden bir birine bağlımı?

STM kitte bu şansım yok ama; MCU nun Analog Gnd ucunu Digital Gnd'den tamamen ayırabilirmiyim?
Analog devrelerimin beslemesini de ayrı kaynaktan vereyim. Bu beslemenin Gnd sini MCU'nun analog Gnd'sine bağlayayım.
Ama Digital Gnd ye kesinlikle bağlamayayım.

Normalde bu bağlantı tipinin çalışması için 2 şey olması lazım.
1. ADC çıkışındaki digital verinin CPU busına çip içinde opto benzeri izolatörler kuplajı ki bunun yapılmadığını biliyorum.
2. Çipin kendi içinde Anolog Gnd ile Digital Gnd nin bir birine bağlı olması.

Bu konuda konuşalım biraz. Gördüğünüz ses yada analog uygulamalarında vs durum nasıl?
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

ULAGA

Sorularınaza bir cevap değil ancak;
İnternette şöyle bir şey ilgimi çekti, sorularınıza yanıt ararken:

http://www.idmil.org/projects/arm-based_audio_processing

HexfeT

Kaliteli ses kartlarında kullanılan ADC ve DAC'ların teknik dokümanlarını incelemek faydalı olabilir.

ADC nin Vref+ ve Vref- uçları harici olarak konfigüre edilip, Vref+ için harici precision voltaj regülatörü kullanılabilir. Vref- ucu ise analog giriş devresinin şasesi ile birleştirilebilir. Bu şekilde işlemci kaynaklı gürültünün tamamen ortadan kalkması lazım. Yalnız maalesef LQFP100 kılıfta Vref- ucunu harici olarak konfigüre etmek mümkün değil sanırım, içeriden Agnd'ye bağlı.

Ayrıca ses sistemlerinde dijital veri dip gürültüsünü bastıran özel filtreleme işlemlerinden geçiyordur muhtemelen. ADC'nin matematiksel olarak ifade edilebilen gürültü karakteristiğinin hesaba katılması bile söz konusu olabilir. Fazla mı uçtum acaba?  ::)

pisayisi

Analog ground pini yada Vssa nın adc ye veri sağlayan sensör devresinin toprağı ile aynı noktaya bağlanması ve bu pinin kablolamada ekran olarak kullanılması lazım. Vssa digital ground içten birbirine bağlı değil zaten bağlı olsa neden farklı bir tanımlama ile dışarı çıkarılsın ki? F4 discovery kitte mems mikrofon kullanıldığı ve sayısal veri olarak ses kaynağından itibaren işlendiğinden olsa gerek, analog ve dijital pinlerin toprakları  aynı . Ancak analog ground ile digital ground u kit üstünden ayırmak imkanı yok çünkü bütün pcb buna göre tasarlanmış...
Murat

z

VSSA ile VSS, çip içinden birbirine bağlı değilse dışarıdan bağlanacak demektir o zaman. Yanılıyormuyum? Bir birine bağlamazsak işler yürümez.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

Ersin

İşin doğrusu audio codec kullanmak ve dsp/fpga/arm.Codec in osc kısmı çok stabil olmalı çevirmeler düzgün olması açısından.Discovery kitine bir codec eklerseniz dörtdörtlük olur, codec yapan firmaların başlıca bazıları AD,TI,AKM ( Asahi Kasei ),Wolfson.

HexfeT

Analog ve dijital Gnd'nin mantığı tek bir şasenin her yeri dolaşması yerine iki grup halinde toplanıp dijital kısmın analog kısma etkisinin minimum olduğu bir noktada birleştirmek olabilir mi? Belki istisnası vardır ama bu ikisinin birbirinden tamamen izole olduğu bir tasarım gördüğümü hatırlamıyorum çünkü.

Bir de 12Bit çözünürlüğün ne kadar yeterli olacağı konusu var. İçinde ADC olan sırandan bir ses sisteminde bile çözünürlük 16Bit ve ses sistemlerinde kullanılan ADC'lerin çalışma mantığıda farklı olsa gerek.

Faydalı olabilir:
http://www.beis.de/Elektronik/ADDA24QS/AD24QS.html
http://www.beis.de/Elektronik/ADDA2496/AD2496-2_SP.GIF
http://www.cirrus.com/en/pubs/proDatasheet/CS5361_F2.pdf

peko


Hocam faydası olur mu bilmem, mp3 player örneği var.. bazı örnekleri denemek gerektiğini düşünüyorum..
Dip gürültüsü donanımsal mı yoksa yazılımsal mı bilebilmek açısından.

http://www.veengle.com/s/STM32F4%20Discovery%20Board.html



mesaj birleştirme:: 24 Ocak 2013, 00:13:45


Burda da dip gürültüsü bariz duyulur derecede..

Mini STM32 Plays QVGA Video with Sound!

mesaj birleştirme:: 24 Ocak 2013, 00:18:20



stm32 webradio
" Bazıları zeka'sını iş'i zorlaştırmak için, bazıları ise kolaylaştırmak için kullanır.. "

OG

Alıntı YapHışş sesi ve ara ara biraz da çıtırtı.
Bazen bir notch, bazen lowpass filtre gerekebiliyor.

f(sample) ne kadar yüksek olursa o kadar iyi çünkü

f(sample) - f(audio) değeri kullanılan band içinde olmaması için.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

pisayisi

Alıntı yapılan: z - 23 Ocak 2013, 23:26:52
VSSA ile VSS, çip içinden birbirine bağlı değilse dışarıdan bağlanacak demektir o zaman. Yanılıyormuyum? Bir birine bağlamazsak işler yürümez.

Evet birbirine bağlanması gerekiyor aksi halde adc ye ground seviyesini bildirdik diyelim işlemci içinde bir isolatör olmadığından vssa nın vss ye bağlanmadığı durumda referans gerilim karmaşası olacak. Hocam bence mems mikrofon var kitin üstünde bir de ordan ortam sesi kaydetmeyi deneyin. Ya da st nin wav player demo uygulaması var kafa ağrıtmadan direk onu da kullanabilirsiniz. Nasılsa kendi kulaklık çıkışı var kitin ancak orda işler hep codec chipleri ile yürüdüğünden ben gürültülü bir çıkış olacağını sanmıyorum.
Murat

z

Codec çiplerine bulaşmak istemiyorum. Hızlı ve içinde  ADC ve DAC olan herhangi bir ARM çipiyle halledeyim istiyordum.

Codeclerde yanlış hatırlamıyorsam SR tipi değil Delta tipi ADC kullanılıyor ve bunun çıkışında quantiser diye bir blok oluyor. Bu blok, ADCnin aynı sinyali bazen 1 bazen 0 olarak çevirdiği bitleri ham haliyle değil bir algoya göre düzenliyor ve bu zemindeki hışşş sesini azaltıyor.

Demekki bu konuları da konuşmanın vakti geldi.

MCU nun ADC devrelerine ait VSSA nın çip içinden VSS ye bağlandığını düşünüyorum. Böyle yaptıklarında dışarıdan iki pini bağlamış gibi olmuyoruz.

Gerçi yongalardan anlamam ama  dediğim gibi yapmazlarsa çipin içine iki ayrı yonga koymaları lazım. Yada mevcut tabanın üstüne bir üst katman oluşturup ADC'yi kurmaları lazım. (Bu durumda VSSA ile VSS arasında kısa devre değil de omaj görmemiz gerekebilir.)

Bana e^st de diyebilirsiniz.   www.cncdesigner.com

z

Ne oldu şimdi Analog Gnd meselesi?

Forumda MCU içindeki ADC nin aniden değer değiştirmesi benzeri sorunlar için Analog Gndyi ayırın önerileri geliyordu?

Analog Gnd'yi nasıl ayıracağız?  Analog Gnd'yi Digital Gndye bağlamadan uzunca bir yol ile analog devrelerin olduğu yere taşısak olurmu? Nereye gitti ise orada digital Gnd ile bağlansın mı? Bu uzun Gnd gürültü kapsa sorun olurmu?

Bugüne kadar Analog Gndyi hemen MCU nun etrafını çevrelemiş Digital Gnd'sinin bağlı olduğu Gnd yüzeyine bağlıyıveriyordum. Şimdi ne yapayım?
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

peko


@z Hocam,

http://www.eevblog.com/forum/eda/analog-and-digital-ground-connection-question/

Link'teki PCB ye bi göz atmanı öneririm. Sanırım buna yakın bir tasarım şuan için uygun olacaktır.

" Bazıları zeka'sını iş'i zorlaştırmak için, bazıları ise kolaylaştırmak için kullanır.. "