Bu sayfadaki yazılar
Sayfanın metni
Sayfa 48
Bilgisayarınızı belirli komutlar çerçevesinde kendi kendine çalışan bir araç olarak görüyorsanız yanılıyorsunuz. Fabrikadan çıktığı haliyle masanıza yerleştirdiğiniz bilgisayar, software ile işlenecek bir hammaddedir aslında. Eğer “aletinizi” gerçekten seviyorsanız, size daha yakın olmasını, günlük hayatla daha anlamlı bir ilişkiye geçmesini, söz yerindeyse “sosyalleşmesini” istiyorsanız, bir yandan software ile işlerken, diğer yandan hardware ile “cilasını çekeceksiniz”. Hardware derken, sizden ilk aşamada yeni ve karmaşık tasarımlar beklendiğini zannetmeyin. Çok basit bağlantılarla bilgisayarınızın kullanım alanını genişletebilirsiniz. Bu yazıda sözünü edeceğimiz bağlantı sistemi de “basit ve kullanışlı” devrelere bir örnek. Üstelik deneysel amaçlı bir “analog joystick”in üretimini evinizde gerçekleştirebilmenize de yardımcı olacak nitelikte. Ancak bu konuya girmeden önce, bilgisayarın temel işleyiş ilkelerine kısa bir biçimde değinmekte yarar var. Bilgisayarlar belleklerine ikili (binary) sayı sistemine göre yazılmış olan sayılarla mantıksal işlemler yaparak çalışırlar. Bütün sayılar ikili sistemde gösterilebilir. Bilgisayarın içindeki sinyaller ya 5 Volt civarında, ya da 0 Volt civarındadır. 5 Volt “1”i (mantıksal doğru), 0 Volt ise “0”ı (mantıksal yanlış) temsil eder. Sinyallerin çeşitli kombinezonları aracılığıyla bütün sayıların gösterilmesi, bilgisayarın elektronik devrelere dayanan çalışma sisteminin temelini oluşturur. İkili sistemde yazılan sayıların her bir basamağına bit denir. Bir bayt ise sekiz bitten oluşur. Öyleyse bir baytla 0'dan 255'e (2^8—1) kadar her sayı gösterilebilir. İki bayt bir araya getirilerek 0'dan 65.535'e kadar veya işaretli kodlama kullanılarak —32.768'den 32.767'ye kadar sayılar gösterilebilir. Bu nedenle BASIC'teki tamsayı değişkenler —32.768 ile 32.767 arasındaki değerleri alabilirler. Gerçek dünyadaki veriler ise sadece doğru ve yanlıştan oluşmazlar. Klavyedeki tuşların basılmış hali 1 ile basılmamış hali 0 ile gösterilerek bilgisayarın anlayacağı hale getirilebilir. Ama robot kollarının pozisyonları, motorların hızları, ayar voltajları sürekli değişerek pek çok değer alabilir. Bu noktada analog ve dijital sinyaller arasındaki farkın ne olduğunu tanımlayalım. Dijital sinyaller adım adım değişir (tıpkı, tamsayılarla sayı saymak gibi). Bu değişme özellikle bilgi işlemeye çok uygundur. Analog sinyallerse sonsuz küçük adımlarla değişir. Öyleyse, bilgisayarların gerçek dünyayla haberleşebilmeleri ve veri toplayabilmeleri için analog sinyallerin bir şekilde dijital sinyallere dönüştürülmesi gerekir.
INTERFACE
Bu yazıda, ilk olarak, Commodore 64'ün içinde bulunan ve bilgisayarınıza dört taneye kadar analog sinyali bağlayabilmenizi sağlayan bir “arabirim”e (interface) değineceğiz. Sinyal girişleri değişken dirençlerden alınacak şekilde tasarlanmıştır, ama voltajların ölçülmesini sağlamak da göründüğü kadar zor değildir. Bu arabirimi deneysel amaçlarla kullanabilmek için kablo, konnektör ve klemenslerden oluşan basit bir bağlantı aracı yapabilirsiniz. Sonuçta, bilgisayarınıza bir joystick, bir ışık kalemi (light pen) ve kendi tasarlayacağınız diğer gereçleri bağlayabilirsiniz. Commodore 64'te joystickler ve oyun düğmeleri ile kullanılmak üzere yapılmış iki konnektör vardır. Her “port” mantık sinyallerini okuyabildiği gibi, analog bir joystickle kullanılmak üzere iki tane de analog girişe sahiptir. Basit bir komutuyla girişteki devreleri bir konnektörden diğerine anahtarlamak mümkündür. Konnektörlerden birinde ayrıca bir de ışık kalemi (light pen) bağlantısı vardır. Evde yapılan bir joystick, bilgisayarın bağlantı devreleriyle ilgili bilginizi sınamanızı sağlayabilir. Üstelik bu joystick ilerde, analog girişleri (port) denemek amacıyla da kullanılabilir. Bu kadar basit bir projeyi kurarken bile, tasarlanan aletin çalışmaması söz konusu olabilir. Bunu engellemek için yapılacak en önemli şey, adım adım ilerlemek ve varılan her aşamada yapılan işin doğruluğundan emin olmaktır. Önce oyun soketlerinden biri (Control Port 1) için bir konnektör yapılmalıdır. Bu noktada, malzeme olarak 9'lu D tipi erkek konnektör, dokuzlu sıra klemens ve bu ikisini birbirine bağlamaya yetecek kadar kablo yeterlidir. Kabloyu 30 cm'lik bitişik kablo veya 30'ar cm uzunluğunda çok renkli kablo türleri arasından siz seçeceksiniz. Bu düzenek, kullanışlı bir bağlantı noktasını (yani sıra klemens) klavyenin yakınına getireceğinden, hardware ve software'in aynı zamanda denenebilmesini ve geliştirilmesini sağlar. Kabloları klemense düzgün bir şekilde ve anlamlı bir sırayla bağlamak ileride işleri çok kolaylaştıracaktır. Biz, bağlantıların aşağıdaki tabloya göre yapılmasını öneriyoruz:
RLY
Soy3 Zoy2 | Yoyo
wv TPty Ov
590
Ve gr Düğ
Seyl 530y3
Resim 1: Bağlantılar
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 49
Sıra Klemens: —— Fiş (9'lu D tipi) İğne No:
Bütün bağlantıları yaptıktan sonra fişi takın ve kontrol edin. Başarılı bir elektronik devre yapımının sırrı, hiçbir şeye güvenmeyip, işlerin yolunda olup olmadığını kontrol etmektir. Örneğin, bir kablonun ucunda bir sinyalin olduğunu düşünüyorsanız, diğer ucunu mutlaka kontrol edin. Yaptığınız lehime çok güvenip kontrol etmezseniz çalışmayan devredeki hatayı bulmak için saatler harcayabilirsiniz. Her yaptığınızdan emin olarak ilerlemeniz zaman açısından ekonomik değilmiş gibi görünse de, ortaya çıkacak ilk çalışmayan devreyi çalıştırmak için harcayacağınız zaman, bunun böyle olmadığına sizi inandıracaktır. Yaptığınız işleri kontrol için 6 Volt DC'ye ayarlanmış bir multimetre (avometre) kullanılabilir. Multimetrenin eksi ucu 0 Volt'a bağlanmalıdır. Doğru bağlanmış bir konnektörle bulunacak voltajlar aşağıdadır:
Resim 2: Potansiyometrelerin bağlanması.
0.5 Volt 4-5 Volt arası 4-5 Volt arası 4-5 Volt arası 4-5 Volt arası
Bu voltajlar elde edilmişse altı bağlantı doğru yapılmış demektir. Analog girişleri (PotX, PotY) kontrol etmek için aşağıdaki program kullanılabilir:
10 PRINT PEEK(54297),PEEK(54298) 20 GOTO 10
Bu program RUN edildiğinde, ekran iki kolon halinde yazılmış “255”'lerle dolmalıdır. Bu sonucu aldıktan sonra, analog girişleri 100 ohm'luk direnç üstünden, bir kablo ile sırayla 5 Volt'a değdirilir. Her bir girişe karşılık gelen sütundaki sayıların, telin değmesine bağlı olarak, sıfıra yakın değerler aldığını ekranda görmemiz gerekir. Bu denemeyi de başarıyla tamamladıktan sonra, son olarak anahtar tipi joystickler için yapılmış olan ve düğme/ışık kalemi girişlerini denemek üzere aşağıdaki programı kullanmakta yarar var:
10 PRİNT PEEK(56321)AND 31 20 GOTO 10
Programı RUN ettikten sonra, 5 Volt'a bağlamış olduğunuz direnç ve kabloyu söküp, 0 Volt'a bir kablo bağlayın. (Bu kez direnç kullanmadan.) Kablonun diğer ucunu teker teker ve düğme/ışık kalemi girişlerine değdirin. Ekranda görülen değerler 31'den sırasıyla 30, 29, 27, 23, 15'e değişecektir. Yani, her bir girişe karşılık gelen bitler 0 Volt'a bağlanmadıkları sürece 1 (doğru) olarak kalacaklardır.
ANALOG GİRİŞ: NASIL ÇALIŞIR?
Burada bütün işi Commodore 64'ün içindeki “SID” ses entegresi yapmaktadır. SID'ın analog girişleri okumak için iki girişi vardır. 64'ün içinde, bunları iki ayrı kanala bağlayan özel bir anahtar bulunmaktadır. Her bir giriş kanalı şu şekilde çalışır: Giriş biti ilk önce entegre tarafından topraklanır ve böylece bir kondansatör bo-