DIGIAC 2000 Deney Seti PAT 80286 İŞLEMCİ KARTI :



Benzer belgeler
Mikrobilgisayar Donanımı

MikroiĢlemci ile Analog-Sayısal DönüĢtürücü (ADC)

DIGIAC 2000 Deney Seti PAT İŞLEMCİ KARTI :

Mikroişlemci ile Analog-Sayısal Dönüştürücü (ADC)

MİKROİŞLEMCİ İLE A/D DÖNÜŞÜMÜ

MİKROİŞLEMCİ İLE A/D DÖNÜŞÜMÜ

DENEY III RAPORU MİKROİŞLEMCİ UYGULAMALARI LABORATUVARI

Bahar Dönemi. Öğr.Gör. Vedat MARTTİN

Mikroişlemcili Sistemler ve Laboratuvarı

JZ TEST3 (7/3) 1 makine çevrimi süresi

9. MERKEZİ İŞLEM BİRİM MODÜLÜ TASARIMI

BÖLÜM Mikrodenetleyicisine Giriş

MİKROBİLGİSAYAR SİSTEMLERİ VE ASSEMBLER

HAFTA 1 KALICI OLMAYAN HAFIZA RAM SRAM DRAM DDRAM KALICI HAFIZA ROM PROM EPROM EEPROM FLASH HARDDISK

MTM 305 MİKROİŞLEMCİLER

Adresleme Modları. Mikroişlemciler ve Mikrobilgisayarlar

İ.T.Ü. Eğitim Mikrobilgisayarının Tanıtımı

Merkezi İşlem Birimi MİKROİŞLEMCİ SİSTEMLERİ. MİB Yapısı. MİB in İç Yapısı. MİB Altbirimleri. MİB in İç Yapısı

BÖLÜM 6 Seri Port Đşlemleri

İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ MİKROİŞLEMCİLİ SİSTEM LABORATUARI MİKROİŞLEMCİLİ A/D DÖNÜŞTÜRÜCÜ

İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ MİKROİŞLEMCİLİ SİSTEM LABORATUVARI KESMELİ GİRİŞ/ÇIKIŞ

İÇİNDEKİLER 1. KLAVYE KLAVYE RB KLAVYE RBHIGH DİSPLAY... 31

DERS 12 PIC 16F84 ile KESME (INTERRUPT) KULLANIMI İÇERİK

İşletim Sistemlerine Giriş

Merkezi İşlem Birimi MİKROİŞLEMCİ SİSTEMLERİ. MİB Yapısı. MİB Altbirimleri. Durum Kütüğü. Yardımcı Kütükler

B.Ç. / E.B. MİKROİŞLEMCİLER

KASIRGA 4. GELİŞME RAPORU

BÖLÜM 7 Kesmeler.

Sistem Programlama. Kesmeler(Interrupts): Kesme mikro işlemcinin üzerinde çalıştığı koda ara vererek başka bir kodu çalıştırması işlemidir.

İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ MİKROİŞLEMCİLİ SİSTEM LABORATUARI İKİLİ TABANDA ÇOK BAYTLI ÇARPMA

MC6800. Veri yolu D3 A11. Adres yolu A7 A6 NMI HALT DBE +5V 1 2. adres onaltılık onluk bit 07FF kullanıcının program alanı

x86 Ailesi Mikroişlemciler ve Mikrobilgisayarlar

Giriş/Çıkış Arabirimi MİKROİŞLEMCİ SİSTEMLERİ. Arabirim Özellikleri. Giriş/Çıkış Adresleri. G/Ç Arabirimlerinin Bağlanması

Mikroişlemcili Sistemler ve Laboratuvarı 6.Hafta

(5 soru seçerek cevaplandırınız. Seçilen soru numaralarını yukarıdaki çizelgede işaretleyiniz) Sınav süresi 100 dakikadır. Başarılar dileriz.

BQ Modbus Analog Giriş Kartı 6 Kanal 4 20mA. Kullanım Kılavuzu. Doküman Versiyon: BQTEK

MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı

Quiz:8086 Mikroişlemcisi Mimarisi ve Emirleri

TBİL-405 Mikroişlemci Sistemleri Bölüm 2 1- % %01010 işleminin sonucu hangisidir? % %11000 %10001 %10101 %00011

UYGULAMA 1 24V START CPU V LO. Verilen PLC bağlantısına göre; START butonuna basıldığında Q0.0 çıkışını aktif yapan PLC programını yazınız.

DERS 3 MİKROİŞLEMCİ SİSTEM MİMARİSİ. İçerik

İşletim Sistemlerine Giriş

Mikrobilgisayarlar. Mikroişlemciler ve. Mikrobilgisayarlar

İÇİNDEKİLER. 1-1 Lojik ve Anahtara Giriş Lojik Kapı Devreleri... 9

Program Kontrol Komutları. Mikroişlemciler ve Mikrobilgisayarlar 1

Mikroişlemcili Sistemler ve Laboratuvarı

8051 Ailesi MCS51 ailesinin orijinal bir üyesidir ve bu ailenin çekirdeğini oluşturur çekirdeğinin temel özellikkleri aşağıda verilmiştir:

Erzurum Teknik Üniversitesi RobETÜ Kulübü Robot Eğitimleri. ARDUİNO EĞİTİMLERİ I Arş. Gör. Nurullah Gülmüş

İLERI MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı

V1000-CP1E MODBUS HABERLEŞMESİ

MEB YÖK MESLEK YÜKSEKOKULLARI PROGRAM GELİŞTİRME PROJESİ

Paralel İletişim Arabirimi (PİA)

BM-311 Bilgisayar Mimarisi

Deney 10: Analog - Dijital Dönüştürücüler (Analog to Digital Converters - ADC) Giriş

8086 nın Bacak Bağlantısı ve İşlevleri. 8086, 16-bit veri yoluna (data bus) 8088 ise 8- bit veri yoluna sahip16-bit mikroişlemcilerdir.

BQ Modbus Analog Giriş Kartı 6 Kanal PT100 - PT1000. Kullanım Kılavuzu. Doküman Versiyon: BQTEK

8086 dan core2 ya yazaç yapısını tanımak. Bayrak yazacının içeriğinde yer alan bayrakların görevlerini tanımlamak. Real mod çalışmada bellek

Mikrobilgisayarlar ve Assembler. Bahar Dönemi. Vedat Marttin

MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı

Von Neumann Mimarisi. Mikroişlemciler ve Mikrobilgisayarlar 1

8051 Ailesi MCS51 ailesinin orijinal bir üyesidir ve bu ailenin çekirdeğini oluşturur çekirdeğinin temel özellikkleri aşağıda verilmiştir:

B2 KANTAR İNDİKATÖRÜ KULLANIM KILAVUZU

Giriş/Çıkış Arabirimi MİKROİŞLEMCİ SİSTEMLERİ. Giriş/Çıkış Adresleri. MİB ve G/Ç Arabirimi. Asenkron Veri Aktarımı. MİB ve Çevre Birimleri Bağlantısı

BM-311 Bilgisayar Mimarisi. Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü

Oterm EE101 Kablosuz Oda Termostatı. Oterm EE101 Kullanım Kılavuzu

Yığın MİKROİŞLEMCİ SİSTEMLERİ. Yığın. Örnek MİB için Yığın. Yığma İşlemi. Çekme İşlemi

DERS 13 PIC 16F84 ile DONANIM SAYICI KULLANIMI İÇERİK KESME

DENEY II RAPORU MİKROİŞLEMCİ UYGULAMALARI LABORATUVARI

SAYISAL MANTIK LAB. PROJELERİ

Mikrobilgisayar Mimarisi ve Programlama

TUŞ TAKIMI (KEYPAD) UYGULAMALARI

BLGM423 Gömülü Sistem Tasarımı

Çok sayıda adım motoru tasarımı olmasına rağmen, bu motorlar iki değişik temel tür altında toplanabilir: değişken relüktanslı veya hibrid yapılı.

Deney 4. Gerçek Zamanlı Kesme Uygulamaları

4-Deney seti modüler yapıya sahiptir ve kabin içerisine tek bir board halinde monte edilmiştir.

Bölüm 9 A/D Çeviriciler

6. DİJİTAL / ANALOG VE ANALOG /DİJİTAL ÇEVİRİCİLER 1

Bilgisayar Yapısı MİKROİŞLEMCİ SİSTEMLERİ. Bilgisayar Temel Birimleri. MİB Yapısı. Kütükler. Kütükler

LCD (Liquid Crystal Display)

EEM 306 Mikroişlemciler ve Lab. Doç.Dr. Mehmet SAĞBAŞ

XC8 ile PİC uygulamaları

PIC 16F877 nin kullanılması

icono Kullanıcı Kılavuzu

PIC MİKROKONTROLÖR TABANLI MİNİ-KLAVYE TASARIMI

Ders 3 ADRESLEME MODLARI ve TEMEL KOMUTLAR

Bölüm 3: Adresleme Modları. Chapter 3: Addressing Modes

MİKROİŞLEMCİ SİSTEMLERİ

PİC HAKKINDA KISA KISA BİLGİLER GİRİŞ/ÇIKIŞ PORTLARI

Bahar Dönemi. Öğr.Gör. Vedat MARTTİN

BQ351 Modbus Röle Kontrol Ünitesi. Kullanım Kılavuzu. Doküman Versiyon: BQTEK

Mikroişlemcili Sistemler ve Laboratuvarı

MİKROBİLGİSAYAR LABORATUVARI DENEY RAPORU

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Arduino nedir? Arduino donanım ve yazılımın kolayca kullanılmasına dayalı bir açık kaynak elektronik platformdur.

Deney 2. Kesme Uygulamaları

TEKNOMOBİL UYDU HABERLEŞME A.Ş. KULLANICI KILAVUZU Rev. 1.0 Satcom SCATEL

İŞLETİM SİSTEMİ İşletim sistemi kullanıcıyla bilgisayar donanımı arasında iletişim sağlayan programdır.

7. HAFTA KBP208 VE ASSEMBLER. Öğr.Gör. Kürşat M. KARAOĞLAN.

Bölüm 4 Ardışıl Lojik Devre Deneyleri

Transkript:

DIGIAC 2000 Deney Seti DIGIAC 2000 deney seti, çeşitli işlemler gerçekleştirmek üzere tasarlanmış üç adet kart ve hem program yazmak hem de kartlarla haberleşmeyi sağlamak için kullanılacak bir adet bilgisayardan oluşmaktadır. Bilgisayarda simgesel dilde kod yazmak ve bu kodu makine diline dönüştürmek için, çalışabilir kod üretebilme yeteneğine sahip MERLIN isimli bir metin düzenleyici program kullanılacaktır. MERLIN programına bilgisayarın masaüstünden kolayca erişebileceksiniz. Ayrıca MERLIN in çalışması için gerekli olan bilgisayar ile kartlar arası bağlantılar yapılmış durumdadır. Deney kitinde üç adet kart vardır; PAT 80286 mikrobilgisayarı DT35 uygulama kartı Tuş takımı ve gösterge birimi PAT 80286 İŞLEMCİ KARTI : Mikroişlemci EPROM O/Y Bellek Kullanıcı ı Sayıcı/Zamanlayıcı RS-232 Arayüzü Kesme Denetiçisi Anahtarlamalı Hatalar PAT sistemi 10Mhzlik sistem saati frekansı ile çalışan bir adet 80286 mikroişlemci kullanmaktadır. Saat frekansı işlemci içerisinde ikiye bölünerek, 5MHz işlemci saati elde edilmiştir. İki adet 32K boyutunda EPROM vardır. Bu 64K lık alanda PAT monitör programı, küçük bir öğretici uygulama yazılımı ve sistem test yazılımı yüklüdür. Ayrıca kartta 2 tane daha 32K lık EPROM takabilmek için yer ayrılmıştır. İki adet 32K lık RAM kullanıcı programları ve yığınları için 62K lık bir bellek alanı sağlamaktadır. Diğer 2K lık alan ise sistem değişkenleri ve sistem yığını için kullanılmaktadır. Sistem kullanıcı giriş/çıkışı için 2 adet 8256 MUART (Multifunctions Universal Asynchronous Receiver Transmitter) kullanır. Biri sistem tarafından, diğeri kullanıcı programları tarafından kullanılır. Kullanıcı MUART ı harici cihazların kontrolü için 16 tane TTL uyumlu giriş/çıkış hattı içerir. Kullanıcı MUART ı beş adet yerleşik sayıcı/zamanlayıcı içerir. Sistem iki adet RS232 arayüzü içerir; Kanal A (Channel A) ve Kanal B (channel B). Her ikiside iki yönlüdür ve sistem MUART ından gelirler. Sistem MUART tarafından üretilen veya harici bir cihaz tarafından üretilen kesmelerin öncelikleri için bir adet 8259 kesme denetim devresi içerir Kartta yer alan 8 anahtar, çeşitli hata testlerinde kullanılırlar İTÜ Bilgisayar Mühendisliği 1

PAT monitör programı işlemler için sistemi başlatmada, tuş takımını okumada ve göstergeyi sürmede kullanılan pek çok yeteneği olan bir yazılımdır. Hem terminal kipinde, hem de tuş takımı kipinde çalışabilir. Tuş takımı kipinde, kullanıcı sisteme 24 adet tuş içeren bir karttan erişebilmektedir. Terminal kipinde ise, kullanıcı PAT sistemine RS232 portu üzerinden uygun bir terminalden veya bir terminal benzetim yazılımından terminal klavyesiyle erişebilmektedir. Her iki kipe de hiçbir saklayıcı veya bellek gözü etkilenmeden geçiş yapmak mümkün olmaktadır. Terminal kipinde çalışılırken PAT: yazılı bir komut istemi görülür. Bu komut istemi gördükten sonra yazılacak her satır PAT a bir komut olarak gönderilecektir. 80286 işlemcisi 24 adres hattına sahiptir. Bunlardan 20 tanesi PAT tarafından kullanılmaktadır. Böylece PAT 1MB lık bir belleği adresleyebilir. 80286 16 bitlik bir işlemcidir. Dolayısıyla 20 bitlik bir adres üretebilmesi için birden fazla saklayıcının birleştirilmesi gerekmektedir. Bu birleştirme işleminde, ilk saklayıcının 16(10H) ile çarpılmasıyla sağlanır. Mesela, belirtmek istediğimiz adres bellekte F000 segmanında yer alsın. Ayrıca belleğin bu segmanı içinde 8000 numaralı gözde yer alsın. Bu durumda bu adresi 80286 da şöyle ifade edebiliriz. Önce segment_no yu 10H ile çarpacağız; F000H * 10H = F0000 olarak bulunur. Şimdi bu segment değeri içinde kayıklık kadar ilerleyeceğiz ; F0000 + 8000 = F8000 adresi aranılan adrestir. Burada ilk saklayıcıya segman saklayıcısı, diğer saklayıcıda kayıklık saklayıcısı denilir. Şimdi de sistemin bellek haritasına bir göz atalım; 00000H-007FFH arasındaki oku/yaz bellek kısmı PAT monitör programı ve sistem kesme vektörleri için ayrılmıştır. Kullanıcı için ayrılan RAM 00800H 0FFFFH arasındadır. İTÜ Bilgisayar Mühendisliği 2

Kart üzerinde bir sıfırlama(reset) düğmesi yer alır. Bu düğmeyle yapacağınız yeniden başlatmalarda saklayıcı ve bellek içerikleri silinmeyecektir. Dolayısıyla program hatalarında, tıkanmalarında bu tür bir sıfırlama tercih edilmelidir. Kartın bağlı olduğu kutudaki güç düğmesinden yapacağınız sıfırlama ise tüm bellek ve saklayıcı içeriklerini temizleyecektir. Tuş Takımının Kullanımı : Sistemi ilk açtığınızda veya her sıfırlamadan sonra tuş takımının üstündeki göstergede ready ifadesi görülür. Bir adres girmek için M tuşuna basılır ve göstergede Adr 0100 görülür Adr address manasındadır ve 0100 de kayıklık numarasıdır. Burada şu unutulmamalıdır ki, bu kayıklık değeri için segment numarası 0800 dür. Bu kayıklık değerini tuş takımından yeni değerler girerek veya + ve tuşlarını kullanarak değiştirmek mümkündür. Segment numarasını değiştirmek için S tuşuna basarak yine kayıklıkta olduğu gibi değiştirebiliriz. Bir adres belirledikten sonra, bu adresin içeriği gösterilmek istenildiğinde M tuşuna basılmalıdır. Bu işlemden sonra adresin kayıklık değeri ve adresteki veri gösterilecektir. Bu şekilde bir kod parçası girdikten sonra bunu çalıştırmak içinse G tuşuna basıp kodun başlangıç adresi girilmelidir. Daha sonra tekrar G tuşuna basıldığında ise kod çalışacaktır. P tuşu ise port içeriklerini görmede ve değiştirmede kullanılır. P tuşuna basıldığında göstergede prt default_port_adresi şeklinde bir görüntü belirir. Öntanımlı port adresi 0080H dir. Siz bu adres yerine başka adres girerek ve daha sonra tekrar P tuşuna basarak istediğiniz portun içeriğini öğrenebilir veya değiştirebilirsiniz. B tuşu ise hata ayıklama işlemlerinde kullanılır. B tuşuna bastığınızda yazdığınız adrese duraksama noktası (breakpoint) konulur. Eğer duraksama noktasını kaldırmak isterseniz K tuşunu kullanabilirsiniz. 80286 da Giriş / Çıkış İşlemleri : 80286 işlemcisi yalıtılmış bir sisteme sahiptir. Dolayısıyla için farklı komutlara sahiptir. 80286 da IN ve OUT komutları giriş ve çıkış için kullanılmaktadır. sırasında adres yolunda 16 bitlik adresler dolaşır. yalıtılmış ve tüm cihazları veri yolunun düşük 16bitlik kısmına bağlanmışlardır. Bu sebepten işlemleri için belleğe erişilir gibi 24 bitlik adresler yerine 16 bitlik adresler kullanılır. Veriler mikrobilgisayara portlar aracılığıyla girer ve çıkar. PAT ta 2 tane 8256 MUART (Mutifunctional Universal Asynchronous Receiver Transmitter) bulunmaktadır, bunlardan biri kullanıcı için biride sistem için ayrılmıştır. Kullanıcı arabirimi 2 tane 8 bitlik porta sahiptir. Ayrıca sayıcı/zamanlayıcı saklayıcı sistemine ve seri iletişim yapabilme kapasitesine sahiptir. İTÜ Bilgisayar Mühendisliği 3

Programlarınızda kullanabileceğiniz bazı port numaraları aşağıda sunulmuştur ; 8259 Kesme Kontrol Devresi Okuma Saklayıcısı Yazma Saklayıcısı adresi Komut Sözcüğü Komut Sözcüğü 0040H Komut Sözcüğü Komut Sözcüğü 0042H Sistem 8256 MUART ı Okuma Saklayıcısı Yazma Saklayıcısı adresi Mode Mode 0066 Port1 Kontrol Port1 Kontrol 0068 Port1 Port1 0070 Port2 Port2 0072 Timer1 Timer1 0074 Timer2 Timer2 0076 Kullanıcı 8256 MUART ı Okuma Saklayıcısı Yazma Saklayıcısı adresi Mode Mode 0086 Port1 Kontrol Port1 Kontrol 0088 Port1 Port1 0090 Port10 Port2 0092 Timer1 Timer1 0094 Timer10 Timer2 0096 Terminal kipinde portların içeriklerini görmek veya değiştirmek için CP komutu kullanılır. Tuş takımında ise aynı işlem P tuşu ile yapılabilir. İTÜ Bilgisayar Mühendisliği 4

Port1(portb) in her bir biti ayrı ayrı giriş/çıkış olarak yönlendirilebilir. Port2(porta) nin ise alçak anlamlı 4 biti ve yüksek anlamlı 4 biti bir bütün olarak giriş/çıkış olarak yönlendirilebilir.port1 adresi 90H Port2 adresi ise 92H dir. İki özel giriş/çıkış komutu vardır: IN : Giriş portunun içeriğini akümülatöre yükler. Örn: IN AL,90H OUT : Akümülatör içeriğini çıkış portuna yükler. Örn: OUT 90H,AL Port1 i istenilen şekilde yönlendirmek üzere, adresi 88H olan Port1 kontrol kütüğü ne, giriş olacak bitler için 0 ve çıkış olacak bitler için 1 şeklinde kodlanmış veri yazılır. Mesela; Port1 in 7,5,4,0 bitleri çıkış 6,3,2,1 bitleri giriş olarak yönlendirmek için MOV AL,B1H OUT 88H,AL program parçası yazılmalıdır. Port2 nin yönlendirilmesi için mod saklayıcısının düşük anlamlı 3 biti kullanılır. 4lü olacak şekilde ikiye ayrıldığı için bu portun koşullanması için 3 bit yeterlidir. P2C2 P2C1 P2C0 YAB* DAB** 0 0 0 giriş giriş 0 0 1 giriş çıkış 0 1 0 çıkış giriş 0 1 1 çıkış çıkış * Yüksek anlamlı bitler ** Düşük anlamlı bitler Mod saklayıcısının adresi 86H dir. Mesela; Port2 yi YAB giriş ve DAB çıkış olacak şekilde yönlendirmek için: yazılmalıdır. MOV AL,01H OUT 86H,AL İTÜ Bilgisayar Mühendisliği 5

80286 İşlemcisinin Saklayıcı Kümesi : 80286 da yer alan saklayıcılar 16 bitliktir. Bunlardan AX, BX, CX ve DX e 8 bitlik erişim mümkündür. Bu yüzden bu saklayıcılar iki kısımdan oluşmuş şekilde gösterilmektedirler. Genel Amaçlı Saklayıcılar Saklayıcı Yüksek Anlamlı Kısım Düşük Anlamlı Kısım AX AH (8 bit) AL (8 bit) BX BH (8 bit) BL (8 bit) CX CH (8 bit) CL (8 bit) DX DH (8 bit) DL (8 bit) SP BP SI DI Yığın göstergesi Taban göstergesi Kaynak sıra saklayıcısı Hedef sıra saklayıcısı Segman Saklayıcıları Durum Denetim Saklayıcıları CS Kod segmanı IP Komut göstergesi DS SS Veri segmanı Yığın segmanı F Bayraklar ES Ekstra segman MSW Makine durum sözcüğü Bahsi geçen F saklayıcısı mikroişlemciler dersinde görülen klasik işlemci tipindeki durum-denetim saklayıcısının içerdiği bayrakları içeren bir saklayıcıdır. İTÜ Bilgisayar Mühendisliği 6

IP saklayıcısı komutun kayıklık değerini tutar. CS ise segment numarasını tutar. Dolayısıyla CS-IP saklayıcı çifti 80286 için program sayacı yapısını oluşturmuş olurlar. Tabii ki yine bu saklayıcıdaki bilgiler bir adres olarak yorumlanacakları için bu iki saklayıcıdaki toplam bilginin 20 bitlik bir adres olduğu unutulmamalıdır. Terminal kipinde veya tuş takımı kipinde bir saklayıcının içeriğini görmek veya değiştirmek için R komutu veya tuşu kullanılmalıdır. Bunların dışında için kullanılan kullanıcı MUART ında da 5 tane 8-bitlik zamanlayıcı saklayıcısı yer alır. DC motor kontrol deneyinde bu zamanlayıcılardan birini olay sayma işinde kullanmanız gerekecektir. Bunun için bu tür bir saklayıcının ne tür bilgiler içerdiği aşağıda sunulmuştur. 80286 İşlemcisinde Kesme : 80286 kesmeler için 1K lık oku/yaz bellek ayırmıştır. Bu sebeple iç içe birçok kesmeye izin verecek donanıma sahiptir. Kesmeler bir dış donanımdan gelebileceği gibi program akışlarında INT komutu kullanılması ile veya bazı hata durumlarında (sıfıra bölme, mevcut olmayan işlem kodu) oluşabilir. Bu durumlara exception denir. Maskelenebilen ve maskelenemeyen kesmeler vardır. Maskelenebilen kesmelere izin STI (set interrupt enable flag) ile verilir ve CLI (clear interrupt enable flag) ile kaldırılır. Maskelenemeyen kesmeler üzerinde bu tip işlemler yapılamaz. Kesme hizmet programlarından dönmek için RETURN komutu kullanılır. Kesme hizmet programına bağlanırken Komut İşaretçisi, Bayraklar, ve CX saklayıcısı yığına itilir. RETURN komutu yürütüldüğünde ise bu değerler çekilir. NMI (non maskable interrupt) en öncelikli kesmedir. Bağlanılacak kesme hizmet programı başlangıç adresi 0000:0008-0000:000F adres aralığına önce kayıklık sonra segman gelecek şekilde yazılmalıdır. İTÜ Bilgisayar Mühendisliği 7

Mesela, KHP adresi 0080:0200 ise; offset: 0000:0008 = 00 0000:0009 = 02 segment: 0000:000A = 80 0000:000B = 00 şeklinde yazılması gerekir. Kesme vektörleri : Kesme Vektör No Kesme Vektörü K* E** Öncelik IR0 20H 0080H E H En yüksek IR1 21H 0084H E L IR2 22H 0088H E L IR3 23H 008CH E H IR4 24H 0090H E H IR5 25H 0094H H Kullanıcı muart IR6 26H 0098H H Sistem muart IR7 27H 009AH E H En düşük * Kullanıcıya açık mı? E:Evet, H:Hayır ** Low mu yoksa High iken mi etkin? L:Low; H:High, muart: muart kullanılıyor. Her kesme hizmet programı sonunda yeniden kesme alınabilmesi için kesmenin bitiğini belirtmek için kesme kontrolörü ne 20H yazılmalıdır. İTÜ Bilgisayar Mühendisliği 8

Kesme izin ve reset saklayıcıları Mod Saklayıcısı L0 Zamanlayıcı 1 P2C0 port2 kontrolü L1 L2 Zamanlayıcı 2 veya iskele kesmesi Kullanılmıyor P2C1 P2C2 (daha önce anlatılmıştı) L3 L4 Zamanlayıcı 3 veya zamanlayıcı 3 ve 5 RS232 alıcı kesmesi CT2 CT3 Sayıcı/zamanlayıcı L5 RS232 verici kesmesi TSC Sayıcı/zamanlayıcı 5 kontrolü L6 Zamanlayıcı 4 veya zamanlayıcı 10 ve 4 T24 Sayıcı/zamanlayıcı 2 ve 4 kaskat L7 Zamanlayıcı 5 veya iskele 2 el sıkışma Değerlerinin lojik 1 olması ilgili kesmelere izin verildiğini gösterir. Adres saklayıcısının okunması tüm kesmeleri kaldırır. T35 Sayıcı/zamanlayıcı 3 ve 5 kaskat RESET tüm kesmelerden önceliklidir. Sistemi başlangıç koşullarına getirir. Vektörü : F000H=FFF0H dir. Buradaki ilk komut tersine çevrildiğinde JMP 0000 olduğu görülür. Buradan da PAT ın monitör programı istenmektedir. Baştan başlama (reset) işlemi üç değişik şekilde yapılabilir Soğuk başlama (cold start), monitörü yeniden başlatma ve sıcak başlama. Soğuk başlama PAT kartına gerilim verilmesiyle yapılır. Bu durumda oku/yaz bellek sıfırlanır. Monitör programı yeniden başlatma, albaştan (Reset) tuşuna 2 kez arka arkaya basılması ile yapılır ve tüm değişkenler başlangıç değerlerini alırlar ancak oku/yaz bellek etkilenmez. Sıcak başlama albaştan düğmesine bir kez basılmasıyla oluşur. Hiç bir değişken ya da program etkilenmez. İTÜ Bilgisayar Mühendisliği 9

DT35 UYGULAMA KARTI DT35, mikrobilgisayarın kontrol edebileceği aygıt ve araçları içeren bir birimdir. Yazılan programların çeşitli çevre birimler üzerindeki kontrolünü göstermek amacıyla tasarlanmıştır. İçeriğinde; 1. 8-bit Dijital-Analog çevirici (DAC) 2. 8-bit Analog-Dijital çevirici (ADC) 3. DAC tarafından sürülen, geri beslemeli bir motor 4. ADC tarafından okunabilen bir potansiyometre 5. DAC tarafından kontrol edilen bir optik verici ile ADC tarafından okunan bir optik alıcı 6. TTL uyumlu bir giriş/çıkış portundan kontrol edilen bir ses verici 7. TTL uyumlu iki giriş/çıkış portundan kontrol edilen bir ultrasonik verici ve alıcı 8. İki adet 8 bit port (Port-A ve Port-B) ve içeriklerini görüntülemek için bu portlar tarafından sürülen 16 led Port A: Dijital-Analog çeviciye 8-bit veri yazmada, Analog-Dijital çeviriciden 8-bit veri okumada kullanılır. Port B: DAC, ADC dönüşümlerini kontrol etmede, motorun geribeslemesini okumada, ses vericiyi sürmede ve ultrasonik alıcı-vericinin uzaklık ayarını kontrol etmede kullanılır. Giriş-Çıkış Portlarının Kullanımı: Giriş-çıkış portlarını gözlemleme için ledlerin durumuna bakılır. Eğer bir led, lojik 1 konumundaysa yanar, lojik 0 konumunda ise sönüktür. İTÜ Bilgisayar Mühendisliği 10

Portların hatlarının kullanıldığı yerler: Port Kullanımı Yön Açıklama PA0 D0 PA1 D1 PA2 D2 PA3 PA4 PA5 D3 D4 D5 1 byte veri DAC a yazılır ya da ADC den okunur D0=lsb D7=msb PA6 D6 PA7 D7 PB0 EN Ç PB1 WR Ç DAC ın enable girişi lojik 0 da olduğu müddetçe DAC yoldan (D0-D7) gelen bilgiyi analoga çevirir. Enable girişi lojik 1 olduğu vakit son kez çevirme işlemi yapılır ve çıkış o değerde dondurulur. Bu girişin lojik 1 den 0 a geçişinde analog dijital dönüşümü başlar. PB2 BSY G Bu çıkış analog-dijital dönüşümü başladığı zaman lojik 0 a iner ve yaklaşık 9μ s sonra lojik 1 e çıkar ve verinin yoldan okunabileceğini belirtir. PB3 RD Ç Bu giriş ADC nin çıkışından verinin okunabilmesi için lojik 0 a indirilir. Aksi halde çıkış yüksek empedans konumunda bekler. PB4 DSC G DC Motordaki optik kesici diski için çıkış. Bu diskin üzerindeki 2 delik vasıtasıyla 2 pozitif darbe oluşmaktadır. PB5 PZO Ç Piezo ses vericisi için kontrol girişi PB6 UTX Ç Bu girişin lojik 1 olması ultrasonik vericiyi aktif eder. PB7 URX G Ultrasonik alıcı tarafından 40 khz lik ses algılandığı zaman çıkışta 40 khz lik dalga oluşturur. Aksi halde çıkış lojik 1 dedir. İTÜ Bilgisayar Mühendisliği 11

DT35 Kitinin Blok Diyagramı İTÜ Bilgisayar Mühendisliği 12

Dijital-Analog Çevirici (DAC): Çizimi yukarıda verilen 8-bitlik DAC, bir anahtar vasıtasıyla motora yada optik vericiye bağlanır. Dijital Analog çeviricide girişten gelen 0-FF arası dijital işaret 0-2.55V arası analog işarete dönüştürülür. DAC tan çıkış alabilmek için PB0 lojik 0 yapılarak EN sinyali oluşturulur, ondan sonra da veri A portuna yazılır. Çıkış anahtarın durumuna göre motora ya da optik vericiye gönderilir. Analog-Dijital Çevirici (ADC): 8-bitlik ADC, bir anahtar vasıtasıyla optik alıcıya ya da potansiyometreye bağlanır. Diyagramı; İTÜ Bilgisayar Mühendisliği 13

Analog Dijital çeviricide girişten gelen 0-2.55V arası analog işaret 0-FF arası dijital işarete dönüştürülür ve A portundan dışarı verilir. DAC tan çıkış alabilmek için aşağıdaki işlemler yapılmalıdır: 1. WR ve RD girişleri lojik 1 yapılır. 2. Çevirme işlemine başlamak için WR girişine (1 0 1) bit dizisi gönderilir. Burada dikkat edilmesi gereken nokta bu gönderim işleminin 200 ns den küçük olması gerektiğidir. 3. Çevirme işlemi bitene kadar beklenmelidir. Bunun için de BSY çıkışının lojik 1 e gelip gelmediği gözlenmelidir. Eğer çevirme işlemi için yazılan kod 9μ s (bir çevirme işleminin maksimum süresi) den fazla süreceği biliniyorsa bu kontrole gerek kalmamaktadır. 4. RD girişi lojik 0 yapılarak ADC nin veri çıkışı aktif edilir. 5. A portundan veri okunur. 6. RD girişi lojik 1 yapılarak ADC nin veri çıkışı pasifize edilir. Bu sürecin zaman diyagramı aşağıdaki gibidir: İTÜ Bilgisayar Mühendisliği 14