SES VE MÜZİK İÇİN
Bu seferki devremiz, çevreden gelen ses bilgilerini dijitale (bilgisayarın anlayacağı biçime) çevirmeyi amaçlıyor. Donanım gereksinimi, benzeri devrelere göre oldukça az olan bu ayki uygulamamızın bir diğer özelliği de oldukça ekonomik olarak gerçekleştirilebilmesi. Vereceğimiz devre ve kullanım programı (Basic-extension şeklinde) yardımıyla, çevreden gelen birçok ses sinyalini, mesela radyodan, rahat bir biçimde bilgisayarın hafızasına okut-
BELLİ
J /
AYHAN KALAYLIOĞLU manız sağlanıyor. Hafızanın alabileceği ses bilgisi miktarı, kullanılan örnekleme hızına bağlı olarak değişiyor. Kullandığınız örnekleme hızı, aynı zamanda dijitale çevrilen bilginin ses kalitesini de belirliyor. Yüksek bir hız seçerseniz, örneklemenin kalitesi yükseliyor, fakat hafızayı daha süratli harcıyor. Kullanılabilecek tüm RAM bölgesini bu iş için ayırdığınızda, en yüksek hızda 14, en düşük hızda 45 saniye örnekleme yapmanız mümkün
A
LR
Ses örneği bilgisayarın hafızasına alındığında, bu örnek belirli işlemlerden geçirilip işlenip bilgisayarın ses kanallarından verilebiliyor. RAP, ECHO veya HALL efektlerine benzer efektler elde etmek de mümkün. Bunun için geri verme frekansı ile oynamak veya geri verme hızını değiştirmek veya örneğin geri verilmesi bitmeden tekrar başlatmak gibi teknikler kullanılıyor. Bütün bunları, gerek ufak bir yardımcı BASIC programla, gerek direkt modda elden vereceğiniz komutlarla yapmanız mümkün. Herhalde çoğunuz, tanıtım kısmını burada bitirip, olayın teknik kısmına geçmemizi istiyorsunuz. Peki öyleyse başlıyoruz!.. Speech-Basic, bir adet iki bitlik ses digitizer devresi ve 4 KByte uzunluğunda Basic-extension (Basic'e özel bir konuda bazı özel komutlar eklemek suretiyle daha zengin bir Basic yaratmak) programından oluşuyor. Her ikisinin birlikte uyumlu çalışması sonucunda gerek sesleri gerek müzik parçalarını rahat bir biçimde örneklemeniz ve işlemeniz sağlanıyor. Speech-Basic için kullanabileceğiniz 57.5 KByte'lık maksimum hafıza miktarı yüksek hızdaki örneklemede bile 14 saniye yetiyor. Bu süreyi, ses kalitesinden fedakârlık ederek 45 saniyeye kadar uzatmanız mümkün. En kötü durumda bile ses kalitesi, SAM ses synthesizer programından daha yüksek!
DEVRENİN GERÇEKLEŞTİRİLMESİ
Devreyi epoksi üzerine, Şekil 1'de verdiğimiz yerleşim planıyla kurarsanız hiçbir sorunla karşılaşmazsınız. Plaketi işlemeye üşenen olursa delikli pertinaksta kullanabilir. Plaketin üzerindeki delikler için 0.8 mm'lik bir matkap ucu en uygunudur. 1 kOhm'luk trimmer için delik çapını biraz daha geniş tutmanızı hatırlatalım. İlk önce rezistansları plakete yerleştirin ve lehimleyin. Böylece sıra kondansatörlere gelir. Tantal tipte olanların kutuplarının doğruluğuna dikkat edin. 10 mikrofarad'lık olanın eksi kutbu plaketin dışına, 1 mikrofarad değerinde olanın eksi kutbu ise LM 324 çipine dönük olmalıdır. Trimmeri de yerine yerleştirdikten sonra JOYSTICK port'una girecek olan fişi monte edin ve lehimleyin. Beş kanallı olan kısmının plaketin yukarısında, dört kanallı kısmının plaketin bakırlı tarafında olmasına dikkat edin. Kuvvetli yapıştırıcılar kullanarak, bu montajı biraz daha da sağlamlaştırabilirsiniz. Sıra geldi tel köprüleri yerleştirmeye. Bunlardan ikisi JOYSTICK fişinin, plaket ile irtibatını sağlıyor.
r
—
2 köprü" ———” TE 2x1.2Ka | TALSI4 Tel köprü — a LM 324 2 Ses kaynağı ? köprü
2x478n
A 2x18Ka e Ha
ApF
İ
Devre elemanlarının yerleşim planı
Üçüncü tel köprü LM 324 ve 74LS14 çipleri arasında yer alıyor. Dördüncü tel köprü, 1 mikrofaradlık kondansatörün eksi kutbunu, girişin şasesiyle bağlıyor. Sinyal girişi ise çift kanallı bir koaksiyel kablo tarafından yapılıyor. (İki koaksiyel kablonun dışındaki zırhı şaseye bağlıyor.) Herhangi bir stereo ses çıkışını, ses kaynağınız olarak kullanmak için iki seçeneğiniz var. Birincisi yalnızca tek kanalı kullanmak. Bir diğeri ise her iki kanalın ses bilgilerini birleştirmek. Pek tabii ki, bunu stereo çıkışın iki kanalını birbirine kısa devre ederek yapmıyorsunuz. En güvenli yöntem, bu iki ses kaynağının geldiği kanalların üzerine birer 47 nF değerinde kondansatörleri seri olarak eklemek. Böylece, ses kaynağınıza zarar verme olasılığınız ortadan kalkıyor. 47 nF'ların seri olarak yer aldığı yeni ses kaynaklarınızı gönül rahatlığıyla birbirine kısa devre edebilirsiniz. Biraz daha açıklama yapalım isterseniz. Ses kaynağınızın şase çıkışı zaten ortaktır. Onunla ilgilenmeyin. Sizin ilgileneceğiniz, her iki kanalın “canlı” uçlarıdır. Bunların sonrasına 47'şer nanofarad'lık kondansatörler ekleyeceksiniz. Canlı tarafla hiçbir irtibatınız olmayacak yani. Tekli kullanımlar için zaten devre üzerinde bir izolasyon sağlanmış olduğu için araya hiçbir şey bağlamanıza gerek yok. Diyelim ki ses kaynağınızın şasesini tam olarak bulamadınız, böyle durumlarda, çıkışlı bir ses kuvvetlendirici katıyla karşı karşıyasınız demektir. Böyle durumlarda yapılacak ses karıştırma işlemi başka birçok şeyi de karıştırabileceğinden, sadece ve sadece tek kanalı kullanmanızı salık vereceğiz. Dönelim montaj işinde en son kaldığımız yere. Girişin yapılacağı koaksiyel kablonun montajını yapmıştık en son. Şimdi devre üzerinde tek eksik olan şey çiplerin monte edilmesi işlemi. Burada dikkat edilecek işlem LM 324'ün üzerindeki çentiğin ses girişine, diğer iki çipin de tam ters yöne dönük olması gerektiği. Gelelim malzemelerin temin işine. Buradaki malzemeler oldukça bol ve rahat olarak, üstelik de ucuza piyasadan temin edilebiliyor. Şimdilik garanti etmemekle birlikte, Teleteknik bu malzemelerin hepsini bir poşet içinde satışa sunacak. Yer olarak Teleteknik'in Demo-Center binasını kullanacaklar. Poşete baskılı devrenin de dahil olması ve İstanbul dışındakiler için ödemeli gönderilmesi de ihtimaller dahilinde.
Malzeme listemiz aşağıda.
Yarı iletkenler: 1 LM 324 1 74LS14 1 74LS00
Kondansatörler: 1 5.6 nF 1 1 mikrofarad/16V Tantal 1 10 mikrofarad/16V Tantal
Rezistanslar: (Hepsi 1/4 Watt, tolerans)
2 470 Ohm 2 1.2 kOhm 2 18 kOhm 2 22 kOhm
Trimpotlar: 1 1 kOhm (yatık pozisyonda) Diğerleri: 1 Plaket 3 Entegre devre soketi (14 bacaklı) 1 JOYSTICK fişi (9 kanallı) 1 Koaksiyel kablo 1 Ses kaynağına bağlamak için fiş (kullanacağınız ses kaynağına özel ve mono)
ÇALIŞMA PRENSİBİ
Algıladığımız ses, havada oluşan 20 ila 15000 Hertz frekanslı dalgalardır. Bilgisayarın bu dalgaları algılayabilmesi için özellikle bunları bilgisayarın algılayabileceği bir şekle sokmak lazımdır. Havadaki ses dalgalarını algılayan ilk birim bir mikrofondur. Bu ünite, algıladığı hava basınç değişimlerini (sesin başka bir tanımı) çok zayıf elektrik sinyallerine dönüştürür. Digitizer denilen ünitenin görevi ise kesiksiz ve seviyesiz olarak gelen elektrik sinyallerini seviyeli olarak dijitale çevirmektir. Dijital ile analog arasındaki farkı göstermek için Şekil 3'ü yayınladık. Digitizer'ın çözünürlüğü ne kadar yüksekse sinyal o kadar çok seviyeyle temsil edilir. Yani, daha açık olarak belirtirsek ses kalitesi o kadar yüksektir. Tabii bu durumda kullanılacak hafıza miktarı da artacaktır. Bizim devremiz iki bitlik çözünürlüğüyle dört seviyeyi temsil edebiliyor. Bu sayının, bilgisayarın hafıza kapasitesinin kullanımı ile, kulağın istediği ses kalitesi arasındaki dengeyi kurduğu inancındayız. Digitizer devremizi, bir walkman'in, radyo-teyp sisteminin veya müzik setinin kulaklık çıkışına bağlayabilirsiniz. Devreye ulaşan ses sinyali üç adet işlemsel kuvvetlendirici ile dört değişik seviyeye ayrılır ve bu seviyelerle karşılaştırılır. Seviye karşılaştırmalarının temiz birer dijital seviyeyi temsil etmeleri için her işlemsel kuvvetlendiricinin çıkışına birer ters çeviren tetikleyici kapı konulmuştur. Geriye kalan son çipin içindeki mantıksal kapıların görevi, karşılaştırmalar sonunda elde edilen üç adet sinyali iki bitlik dijital bilgi olarak toparlıyor. Bu şekilde dört değeri temsil edebiliyoruz. Aşağıda sırasıyla, her değeri gösteren iki bitlik çıkışları ve karşılaştırmada elde edilen ara değerleri bulacaksınız.
1. değerde bitler:00; 1; karşılaştırma:110 3. değerde bitler:10; karşılaştırma:100 4. değerde bitler:li; karşılaştırma:000
Devremiz oluşturulan bu iki biti 2 numaralı JOYSTICK portunun UP (yukarı) ve DOWN (aşağı) kanallarına gönderiyor. Buradan da bu iki bit saniyede 18000 okunabiliyor. Gelen bilgilerin dördü bir araya getirilip bir Byte olarak paketlenip hafızada saklanıyor. Sesin daha sonra geri verilme işlemi SID çipinin $D418 ($54272 - 54248 = 24) adresli ses şiddeti ayarlama register'ı üzerinden yapılıyor. Söz konusu register'ın bir özelliği, herhangi bir ses kanalı açık olmasa da, buranın değeriyle oynayarak bu register'ı dijitalden analoga çeviren bir ünite olarak kullanabileceğimiz. Ses geri verilirken sadece bilgisayarın ses kanalları kullanıldığından devrenin takılı olmasına gerek yoktur. Yani siz bir sesi kendi sisteminizle örnekleyip başkasına bir program olarak gönderebilirsiniz. O da, digitizer devresi olmamasına rağmen sesi dinleyebilir. Programın sağladığı bir avantaj, elde edilen değişik örnekleme seviyesine karşılık gelecek ses şiddeti değerini (0'dan 15'e kadar) sizin belirlemeniz. En basit kombinasyon tipleri olarak 6 değişik lineer kombinasyonu gösterebiliriz. (Hepsinin 0 olması da dahil, bu durumda geri verilen ses duyulmaz.) Bu lineer kombinasyonlar:
0,0, 0, 0 0,1, 2, 3 0,2, 4, 8 0,3, 6, 9 0,4, 8,12 0, 5,10, 15 olarak gösterilebilir. İsterseniz daha değişik ve lineer olmayan kombinasyonlar da deneyebilirsiniz. Elde edeceğiniz neticeleri beğenmenize bağlı sadece. İsterseniz bu kombinasyonları dinamik (ses geri verilmekte iken) olarak da değiştirebilirsiniz. Böylece demin yukarıda sözünü ettiğimiz HALL ve ECHO efektlerini elde etmeniz daha da kolaylaşır.
İLK SEFER
İlk kaydımızı yapmadan önce donanımımızın bir fonksiyon testi ve basit bir ayar yapmak gerekli. Bunun için önce “Speech-Basic” adlı listing'i MDE ile yazın ve diskette saklayın. Ayar işlemini yapmanız için bir de ufak ayar tornavidasına ihtiyacınız olacak. Bilgisayarınızı kapatıp, digitizer devrenizi JOYSTICK-PORT'a takın. Henüz herhangi bir ses kaynağı bağlamayın. Bilgisayarınızı açıp tüm tuşları kontrol edin. Tüm tuşlar gayet güzel çalışıyorsa sorun yok! Böylece devrenin yapımında büyük bir hata yapmadığınızı garanti ettiniz. Şimdi Speech-Basic programını;
LOAD“SPEECH-BASIC”',8
ile yükleyin ve RUN komutunu kullanarak çalıştırın. Bilgisayar, hemen “C 64 SPEECH SYSTEM V2.7” mesajı ile cevap verecektir. Speech-Basic mesajlarını daimi küçük harf modunda verir. Diyelim ki Speech-Basic herhangi bir şekilde bilgisayarın kontrolünü kaybetti (mesela RESTORE'dan sonra). Böyle durumlarda, yeni bir komut olan RESET komutunu kullanarak Basic'in birçok şeyi düzeltmesini sağlarsınız. Bu arada hata