pwm yontemi ile ses uretmek

Başlatan buiba, 16 Ekim 2010, 00:01:15

buiba

yaptigim bir devrede pic ile epromdaki verileri okuyarak ses cikisi uretiyorum.ses dosyasini  8khz ornekleme ile eproma kaydediyorum ve picin tek pininden pwm metodu ile ses uretiyorum.cikista alcak geciren filtremde mevcut.ancak ses altinda yuksek frekansta islik sesi gibi cok rahatsiz edici bir ses geliyor bunu nasil engeleyecegimi cozmus degilim.ancak 16khz ornekleme ile kaydedip ses uretirsem bu sorun ortadan kalkiyor.bu konuda neler yapilabilir ?

t2

#1
Sesi örneklemeden önce alçak geçiren filtreden geçirelim.Sorun düzelebilir.
Sorun çıkarken örnekleme frekansın nedir? Eğer 8khz ise alçak geçiren filtre 8khz değil 4khz olmalı. Yani örnekleme fr. yarısından daha düşük veya eşit.

buiba

ornekleme 8 khz ,filtreyle baya ugrastim,hatta sesi 2 alcak geciren filtreden gecirdim islik sesi biraz azaldi ama yine var.

t2

#3
SESİ KAYDETMEDEN ÖNCE geçirdiğinizden eminseniz, Filtrelerin kesim frekansı nedir? 3500 Hz yap. İşe yararsa ıslık filan kalmaz. Ses biraz kalın olur.  Ya da DC bias kaymıştır. Ses yokken 8bit datanın 128 olması lazım. Gerçekten öyle mi? Bu ses verisini pcm dosya (wav) olarak pcden dinleme imkanınız varsa oradan da düdük sesi geliyor mu diye bakabilirsiniz. Yada pcden mükemmel olarak dinlediğiniz 8 bit sesi aynen eproma kaydedip pwm ile yeniden oluşturma kısmında sorun olup olmadığını anlayabilirsiniz.

Kayıtlarda sorun yoksa bile belki de sesi üretme kısmında sorun vardır. Orada da DC bias önemli. Ses yokken beslemenin ortası bir gerilim yani 2.5 volt görmeniz lazım. ses bunun üzerinde ve altında değişecek.

PWM töntemiyle ses üretimine dair orijinal bir örnek vardı. PROTON ile yazılmıştı. Bunu incelemek lazım.  Proton derleyicisini yazan kişi yapmıştı. Les

yas

Üretiğin pwm sinyali yazılımsal olarakmı yoksa donanımsal olarakmı üretiyorsun? Eğer yazılımsal olarak yapıyorsan hazır pwm komutunu kullanmadan kendi yaptığın rutini kullanarak dene. Birde ürettiğin pwm sinyalinin frekansını yükselterek filitrenin daha etkin iş görmesini sağlayabilirsin.
Kolay gelsin

buiba

t2 hocam kayıtta,pcden dinlediğimde sorun yok.ve 16 khz orneklemede de sorun yok.ancak bahsettınız dc bias durumundan olabılır onu arastıracagım.
yas hocam zaten pwm için pic'in kendi modulunu kullanmıyorum.soft olarak epromun (x) adresindeki veriyi (1) zamanı olarak.aynı veriyi 255'ten cıkartarak (0) zamanı olarak bulup pwm surelerını buluyorum.