8. Deney Programlanabilir Zamanlayıcı (PZM) Deneyin Amacı ¾ ¾ ¾ Programlanabilir zamanlayıcının (PZM) tanınması PZM’nin koşullanması PZM ile uygulama geliştirme Deney Öncesi Yapılması Gerekenler Deneyde kullanılacak olan PZM’nin (MC6840) teknik bilgileri incelenmeli, PZM nin iç yapısı tanınmalı ve nasıl programlandığı öğrenilmelidir. Deney İçeriği Mikrobilgisayar ile olay sayma ve süre ölçme işlemleri sık sık yapılmaktadır. Özellikle gerçek zaman dizgelerinde bu tür işlemlere sık rastlanır. Olay Sayma Belli bir zaman aralığında gerçekleşen olayların sayısının bilgisayar tarafından sayılması işlemine “olay sayma” adı verilmektedir. Olay sayma işleminde, zaman aralığı saniye saat ya da bir başka olayın başlangıç ve bitişi olabilir. PZM zaman aralığı belirleme işleminde kullanılabilir. Bu uygulamada PZM, belli zaman aralığı üretecek biçimde koşullanır. PZM çalışmaya başladığında, belirlenen aralıklarla MİB’i uyarır. Uyarma kesme biçiminde olabileceği gibi yoklama biçiminde de olabilir. Süre Ölçme İki olay arasında geçen sürenin ölçülmesi de sıkça görülen işlemlerdendir. İki olay arasında ne kadar sürenin geçtiğini ölçmek için PZM kullanılabilir. Bu uygulamada, olay başlangıcında PZM sıfırlanır ve ardından saymaya başlanır. Olay bittiğinde, PZM nin aldığı değere bakılarak, geçen zaman ölçülmüş olur. PZM’nin ilke şeması Şekil-1’de gösterilmiştir. Şekil-1: PZM’nin ilke şeması Mikrobilgisayar Lab. 8. Deney - 1 MC6840’ta üç adet 16 bitlik programlanabilir sayıcı bulunmaktadır. Her sayıcı iki sekizlikten kuruludur. Her sekizlik sayıcıya erişme olanağı vardır. İTÜ-Eğit üzerinde bulunan PZM’nin temel adresi $6100 olarak belirlenmiştir. Bunun sonucu olarak, PZM içindeki birimlerin adresleri aşağıdaki gibi oluşur: Denetim kütüğü 1/3 (CR20) Denetim kütüğü 2 (salt yaz) Durum kütüğü (salt oku) 1. Sayıcı 2. Sayıcı 3. Sayıcı $6100 $6101 $6101 $6102-$6103 $6104-$6105 $6106-$6107 MC6840 içinde bulunan her bir sayıcının bir girişi, bir çıkışı ve bir izin girişi bulunmaktadır. Girişler, sayıcıların saat girişleridir ve C harfi ile gösterilmişlerdir (C1, C2, C3). İzin girişleri, lojik sıfırda etkindir ve saat girişine izin verir. İzin girişleri G harfi ile gösterilmektedir (G1, G2, G3). Sayıcı çıkışları O harfi ile gösterilmektedir (O1, O2, O3). MC6840’ın giriş ve çıkışları, MC6840 kırmığının sol yanındaki konnektöre bağlıdır. Deney sırasında bu konnektör üzerinden gerekli bağlantıları gerçekleyiniz. Bağlantı konnektörünün uçlarının işlevleri yandaki şekilde gösterilmiştir. Bu deney kapsamında; 1. Kare dalga üretilmesi 2. Farklı darbe/boşluk oranlarında işaret üretilmesi 3. Bölücü devre C1 G2 O1 O2 G1 C2 G3 O3 C3 Top gerçeklenecektir. Kare Dalga Üretilmesi Darbe boyu ile boşluk boyu eşit olan işarete kare dalga işaret denir. Birinci sayıcı kullanılarak bir kare dalga üreteci gerçeklenecektir. Bu amaçla; 1. Saat işareti olarak sistem saatini (iç saat) kullanınız. 2. Çalışma kipi olarak, “sürekli çalışma” kipini seçiniz. 3. Sayma/Denetim kipi olarak normal 16 bit sayma kipini seçiniz. Bu seçim değerlerine göre MC6840’ı koşullayıp çalıştırınız. Birinci sayıcının çıkışını osiloskopta inceleyiniz. Deney sırasında, G1 izin girişini toprağa bağlayarak, ilgili sayıcının çalışmasına izin vermeyi unutmayınız. MC6840 ta CR10 (1. Denetim kütüğünün 0. biti) lojik 1 olduğu sürece sayıcılar saymamaktadır. Bu nedenle, saymanın başlaması için bu bitin sıfırlanması gerekmektedir. PZM’nin Reset girişi sıfıra çekildiğinde CR10 lojik 1 olur. Farklı Darbe/Boşluk Oranlarında İşaret Üretilmesi İkinci sayıcıyı, darbe ve boşluk süreleri farklı bir işaret üretecek biçimde koşullayınız. Bu deneyde, PZM yine sürekli çalışma kipinde çalışacak biçimde ayarlanacak ve saat girişi olarak iç saat kullanılacaktır. Sayma/Denetim kipi olarak bu deneyde ikili sekiz bitlik sayma (dual 8 bit counting) kipi seçilecektir. Sayıcı çıkşını osiloskopta izleyiniz Bölücü Sayıcılar bölücü olarak da kullanılabilir. PZM’nin bölücü olarak kullanılmasına örnek olarak şu çalışmayı gerçekleyiniz: Birinci sayıcının çıkşını üçüncü sayıcının girişine bağlayınız. Buna koşut olarak, üçüncü sayıcıya bölmek istediğiniz sayıyı (N tam sayıyı) yazınız. Sayıcı çıkışını osiloskopta izleyiniz. Mikrobilgisayar Lab. 8. Deney - 2 Raporda İstenenler Kare Dalga Üretilmesi Deneyi ile ilgili: Deney sırasında kullandığınız; • Koşullama • Altprogramlar ve • Programı simgesel dilde, makine dilindeki kodları ile birlikte rapora yazınız. Osiloskopta gördüğünüz dalga şeklini ölçekli olarak çiziniz Farklı Darbe/Boşluk Oranlarında İşaret Üretilmesi Deneyi ile ilgili: Gerçeklediğiniz programı simgesel dilde, makine dilindeki kodları ile birlikte rapora yazınız. Osiloskopta gördüğünüz dalga şeklini ölçekli olarak çiziniz Bölme Deneyi İle İlgili Olarak Gerçeklediğiniz programı simgesel dilde, makine dilindeki kodları ile birlikte rapora yazınız. Osiloskopta gördüğünüz dalga şeklini ölçekli olarak çiziniz Gerçek Zaman Saati Gerçek zaman saati ile ilgili kısa bir araştırma raporu yazınız. Mikrobilgisayar Lab. 8. Deney - 3