24LC512 kapasitesi, Pic hafızası veya Eproma ses kayıt yöntemi

Başlatan t2, 12 Aralık 2011, 15:50:01

CaFFeiNe

Alıntı yapılan: t2 - 12 Aralık 2011, 19:34:48
Bana bu işte fazla ses lazım değil.  2 saniye konuşma sesi yeterli. picin içine gömmeye çalışacağım. olmazsa 24LC512 takarım. Daha fazlası gerekirse başka bir model yapılır. şimdilik gerek yok. 2sn ses kime yeter ki? yetiyor işte çok dar kapsamlı bir iş . hep aynı lafı söyleyecek. mesela hoşgeldin diyecek hepsi o. güle güle demesine gerek yok.

picle olması lazım

#include <18F452.H>
#use delay(clock=4000000)

long a;

void main ()          // Ana Fonksiyon
{
  a = read_program_eeprom(0);
}


asm koduna baktım program hafızasından bir word okumak (2 bayt haliyle) 10 cycle gibi hadi ıvırzıvır 20cycle tutsa 1MIPS/20 = 50KWord = 100KByte yaparki 4Mhz kristal için
ses için fazla bile yanlışmıyım?

t2

Konuşma sesi için 8000 bayt yeterli

CaFFeiNe

şöyle 1-2 saniyelik pic içine gömüp deneme yapmak için ses dosyası nereden buluruz?
ham formatta picin program hafızasına yazıp portlardan R2R dac ile dinleyebilecek gibi

t2

R2R ye gerek yok hpwm ile oluyor. 8 khz 8 bit dosyanın baytlarını alıp sırayla hpwm i ayarlanacak aralarına 100uSn gecikme konacak. aslında 125uSn fakat picin kendi işlemleri nedeniyle ince ayar yapılır. wav dosyanın başındaki 40 bayt kadar kısım kullanılmaz.

t2

Evet az önce yaptım çok güzel oldu. Pwm çıkışından 2k2 ve 100n ile 2 kat filtre yaptım bunların çıkışına 2n2 ve 10k seri bağlayarak pc mikrofon girişine girdim. mikrofon girişinde ayrıca toprağa doğru 2k2 bağlı. Mik girişi stereo gibi görünse de yanlış bilinmektedir. Jakın ortası ve ucu kısa devre edilecek.

Mucit23

Alıntı yapılan: t2 - 13 Aralık 2011, 00:58:00
Evet az önce yaptım çok güzel oldu. Pwm çıkışından 2k2 ve 100n ile 2 kat filtre yaptım bunların çıkışına 2n2 ve 10k seri bağlayarak pc mikrofon girişine girdim. mikrofon girişinde ayrıca toprağa doğru 2k2 bağlı. Mik girişi stereo gibi görünse de yanlış bilinmektedir. Jakın ortası ve ucu kısa devre edilecek.

Merhaba.
Merak ettiğim bir iki konu var.
Sesin iyi çıkabilmesi için her data gönderiminden sora 100us ile 125 us arası beklemek yeterli geliyormu.
Diğer bir konu ise kayıt için pice bağlanacak olan mikrofon donanımı nasıl olmalıdır. Ayrıca ADC örnekleme min. ne kadar olmalıdır.

t2

#21
Ben bu devrede mikrofonu pice bağlamadım. pic pwm çıkışındaki sesi duyabilmek için anfi niyetine pc mikrofon girişine bağladım.

ses:
cdata 153, 146, 127, 108, 99, 108, 127, 146, 153, 146, 127, _
108, 99, 108, 127, 146, 153, 146, 127, 108, 99, 108, _
127, 146, 153, 146, 127, 108, 99, 108, 127, 146, 153, _
...


1600 satır civarı şöyle bir tablo yaptım. Sesi bilgisayardan wav dosyadan  tablo haline çevirip pic kodu içine yüklüyoruz. Bunu yapmak için delphi programı yazdım. Elde yapılamaz. Sonuçta wav  dosyadaki data baytlarını araya virgül koyarak metin halinde yazmış oluyoruz.

ADC örnekleme kısmı sesi kaydederken  lazım olur. konuşma sesi için 8kHz yeterlidir. 11025 veya 22050 yapsan daha iyi olur. Örnekler arası çalarken veya kaydederken ne kadar beklenecei kafamıza göre seçebileceğimiz bir şey değil.

8 kHz  ses çalıyorsan 1/8kHz = 125u Sn beklemek gerek aksi halde ses hızlı veya yavaş çıkacaktır. Sesi kaydederken örnekleme frekansı ne ise çalarken de o olmalı. benim süreyi ayarlamaktaki amacım bekleme esnasında picin yaptığı diğer işlerdir. iki örnek arası bekleme süresi 125uS yi aşmayacak şekilde ayarlamak gerek.

Mucit23

Anladım demek istediğinizi. Ses sinyalini işlerken ADC örnekleme hızı ne kadar yüksek olursa sesimizinde boyutu haliyle okadar yüksek olur. Dolayısıyla ses sinyalini pwm sinyaline yansıttığımız zaman yine yine adc okurken iki örnek arası beklenen kadar beklemek gerekiyor. Birkaçtane hızlı çalışan eepromlardan sipariş etmiştim. Onlar gelsin bende bir uygulama yapayım bu konuda

Elektroemre

epprom fiyatları ne kadar biilmiyorum ama MBIT'lik flashhafızalarda çok pahalı sayılmaz.
http://tr.farnell.com/spansion/s25fl004k0xmfi040/memory-flash-4m-3v-spi-8soic/dp/1861625

My75

Alıntı yapılan: Elektroemre - 13 Aralık 2011, 16:27:07
epprom fiyatları ne kadar biilmiyorum ama MBIT'lik flashhafızalarda çok pahalı sayılmaz.
http://tr.farnell.com/spansion/s25fl004k0xmfi040/memory-flash-4m-3v-spi-8soic/dp/1861625

Güzel ürün,farnell de bu fiyat ise normalde dahada ucuzdur.

8 adet 24LC512 kullanmaktansa bu daha mantıklı.. :)
Tomurcuk için çaba göstermeyen dal,odun kalmaya mahkumdur...

CaFFeiNe

Alıntı yapılan: My75 - 13 Aralık 2011, 19:28:44
Güzel ürün,farnell de bu fiyat ise normalde dahada ucuzdur.

8 adet 24LC512 kullanmaktansa bu daha mantıklı.. :)

bide 5V olsalar :)

fryrmnd

bu pwm olayı ile sd kart veyahut herhangi bir hafızadan ses verisini okuma olayını,t2 hocam filtre ile halletmiş galiba bazılarında da sanırım dac kullanılıyor. bu işin hesaplamaları  ile düzgün bir şekilde anlayabileceğim bir link verebilirmisiniz. elektronik bilgim kıt olunca pwm veri okumada ne amaçla kullanılıyor vs tam yatmadı.

okylmz

Alıntı yapılan: t2 - 12 Aralık 2011, 16:20:37
O zaman buna 8 saniye ses gömeriz. Pic pwm inden sesi çıkartırız. sudan ucuz yav.
merhaba ben olaya temelden girecem de :)
sorularım bu yüzden;
8 saniyeyi hangi teorik hesaplamalardan sonra elde ettiniz?
teşekürler..

fryrmnd

vallaha konu kapandı. hep bilmeyenler tükkan açtı ha  ;D

t2

Konu 24LC512 olup gerçekten kapanmıştır.  pic içine 2 saniyelik sesi sığdırdım, işim halloldu. hatta 1 saniye daha sığabilirmiş. Ama 8saniye gerekseydi  ISD çipi kullanmaz 24LC512 kullanırdım. 8 saniye yav tepe tepe kullan. cümle bile kurdurulabilir.  Lütfen, parolayı, tuşlayın. Teşekkürler. Yanlış giriş. tebrikler kolsaati kazandınız :)