DERS 12 PIC 16F84 ile KESME (INTERRUPT) KULLANIMI

Slides:



Advertisements
Benzer bir sunumlar
EGE ÜNİVERSİTESİ İzmİr Atatürk SağlIk Yüksekokulu Ebelİk Bölümü ZORUNLU Stajlar HAKKINDA GENEL BİLGİLER.
Advertisements

ARM Tabanlı Mikrodenetleyici Temelleri ve Programlama
DERS 10 PIC 16F84 ile ZAMAN GECİKME DÖNGÜLERİ
PLC.
8259A Programlanabilir Kesme Denetleyicisi (PIC)
DERS 7 PIC 16F84 PROGRAMLAMA.
Endüstriyel Otomasyon Mekatronik Mühendisliği Bölümü
ÜNİTE DEĞERLENDİRMESİ 1.Sınıf Türkçe
Prof. Dr. Eşref ADALI Yrd. Doç. Dr. Şule Gündüz Öğüdücü SürümA
E- İ MZA KULLANIM REHBER İ 1- E-imza pin numarasını öğrenme 2- Doküman Yönetim Sisteminde E-imza’nın kullanımı.
4 Kontrol Yapıları: 1.Bölüm.
8088 Kesme Operasyonu.
MikroC ile PIC Programlama
PIC MIKRODENETLEYICILER-3: GECİKME ve KESME PROGRAMLARI
ORHAN EREN İLKOKULU 1-A.
DERS 6 PIC 16F84 PROGRAMLAMA.
BÖLÜM 2: BİLGİSAYAR SİSTEM YAPILARI
Örnek Bİr VerİtabanI TasarImI
ZAMBAK 1 SORU BANKASI UĞUR CESUR 1 ZAMBAK 1 SORU BANKASI ÖZEL SORULARI Hazırlayan: UĞUR CESUR.
İŞLETİM SİSTEMLERİ EYLÜL 2012.
PIC 16F84 ile ALT PROGRAMLARIN ve ÇEVRİM TABLOLARININ KULLANIMI
PIC Mikrodenetleyiciler
MikroC ile PIC Programlama
Marmara Ünv. Bilgisayar Mühendisliği Bölümü
DERS 6 PIC 16F84 PROGRAMLAMA.
8051 MİKROKONTROLÖR AİLESİ
5. EGITIM Mikrodenetleyiciler PIC16F628 – PIC16F877
Microsoft Power Point Dersi
TEST – 1.
DERS 8 PIC 16F84 PROGRAMLAMA.
Mikroişlemci (μP) Mikroişlemci çoğu zaman bilgisayarların beyni olarak adlandırılır. Bilgisayar yazılımındaki tüm işlemleri yapmakla sorumludur ve merkezi.
TOPLAMA İŞLEMİNDE VERİLMEYEN TOPLANANI BULMA.
HABTEKUS' HABTEKUS'08 3.
Timer 1 16bit (65535) Programlanabilir dahili ve harici saat kaynağı
Mikroişlemciler ve Mikrobilgisayarlar
Bölüm 2 – Kontrol Yapıları
8 ? E K S İ L E N EKSİLEN _ 5 5 ÇIKAN FARK(KALAN) 8.
Akış Kontrol Mekanizmaları
DERS 3 MİKROİŞLEMCİ SİSTEM MİMARİSİ
Üsküdar Halk Eğitim Merkezi Eczane Çalışanlarının Eğitimi Bilgisayar Dersi Ayşenur Buyruk
DERS 10 PIC 16F84 ile ZAMAN GECİKME DÖNGÜLERİ
DERS 5 PIC 16F84 PROGRAMLAMA.
DERS 14 PIC 16F84 ile EEPROM VERİ BELLEĞİ KULLANIMI.
KESMELER (Interrupts)
DERS 13 PIC 16F84 ile DONANIM SAYICI KULLANIMI
DERS 9 PIC 16F84 PROGRAMLAMA.
Toplama Yapalım Hikmet Sırma 1-A sınıfı.
LD/LDI LD X0 LDI X0 X0 Y0 X0 Y1 Temel Komutlar
Ali AKMAN Subroutine, Interrupt, LPM BİL325  C Ders - 5.
Atatürk Üniversitesi Uzaktan Eğitim Araştırma ve Uygulama Merkezi Atatürk Üniversitesi Uzaktan Eğitim Araştırma ve Uygulama Merkezi.
CCS C İLE PIC PROGRAMLAMA DERS-2-
BİLGİSAYAR MİMARİLERİ 2.Hafta: Bilgisayar Bileşenleri
BİLGİSAYAR MİMARİLERİ 7.Hafta: Çoklu-Çevrim İşlemci
DERS 4 MİKROİŞLEMCİ PROGRAMLAMA. Dr. Emin Argun Oral, Atatürk Üniversitesi 2008 Ders 4, Slayt 2İÇERİK Yüksek seviyeli programlama dilleri Düşük sevyeli.
Adım Adım Algoritma.
BİLGİSAYAR MİMARİLERİ 11.Hafta: Pipeline Sorunları
İnformasiya texnologiyaları kafedrası Mövzu № 9. Assembler. ( Assembler anlayışı. Assemblerin təyinatı. Assemblerdə operatorların formatı. Direktivlər.
İnformasiya texnologiyaları kafedrası Mövzu № 9. Assembler. ( Assembler anlayışı. Assemblerin təyinatı. Assemblerdə operatorların formatı. Direktivlər.
DERS 5 PIC 16F84 PROGRAMLAMA.
PIC 16F84 ile ALT PROGRAMLARIN ve ÇEVRİM TABLOLARININ KULLANIMI
DERS 9 PIC 16F84 PROGRAMLAMA.
DERS 10 PIC 16F84 ile ZAMAN GECİKME DÖNGÜLERİ
DERS 6 PIC 16F84 PROGRAMLAMA.
MİkroİŞlemcİler ve programlanmasI Mekatronik Mühendisliği Bölümü
DERS 12 PIC 16F84 ile KESME (INTERRUPT) KULLANIMI
DERS 13 PIC 16F84 ile DONANIM SAYICI KULLANIMI
NİŞANTAŞI ÜNİVERSİTESİ
Bölüm 1 Genel Kavramlar Bilgi Saklama
DERS 14 PIC 16F84 ile EEPROM VERİ BELLEĞİ KULLANIMI
Bölüm 1 Genel Kavramlar TOC Bilgisayarın Temel Birimleri Bilgi Saklama Bilgisayara İstediğimiz İşleri Nasıl Yaptırırız C Programlama Dili Nedir? C Programının.
Sunum transkripti:

DERS 12 PIC 16F84 ile KESME (INTERRUPT) KULLANIMI

İÇERİK KESME NEDİR KESME ÇEŞİTLERİ INTCON SAKLAYICISI RBO/INT KESMESİ PORTB (RB4-RB7) LOJİK SEVİYE DEĞİŞİKLİK KESMESİ

KESME PIC’in bazı portlarındaki veya yapısında bulunan bir sayıcıda belli şartların oluşması durumunda, çalışmakta olan programın geçici olarak kesilerek (ara verilerek) ayrı bir alt programın işletilmesi ve bu alt programın bitiminde de tekrar ara verilen programa kalındığı noktadan geri dönülmesi işlemidir. Bunun alt program işletilmesinden farkı; Alt program kullanıcı tarafından istenilen anda CALL komutu ile çağrılır Interrupt donanım tarafından belli şartlar oluştuğunda başlatılır

KESME İŞLEM ADIMLARI Bir interrupt oluştuğunda o an çalışmakta olan komut tamamlanır Sonraki çalışacak komutun bulunduğu program belleği adresi (Program Counter saklayıcısının değeri) yığın saklayıcısına (Stack) atanır Programın işletilmesi standart kesme programının başlangıç adresi olan h’04’ adresine dallanılır (kesme alt programı işletilir) RETFIE komutu ile kseme alt programı sonlandırılır STACK’de bulunan değer PC’ye aktarılır ve çalışmakta olan programa kaldığı yerden devam edilmiş olur

KESME İŞLEM ADIMLARI Kesme programının işletilmesi adımları, Mikrodenetleyiciler ve PIC Prog., sayfa 158

KESME TÜRLERİ PIC 16F84’de interrupt oluşturan 4 kaynak vardır: RB0/INT ucuna gelen lojik 1 veya 0 sinyali ile TMR0 sayıcısından gelen zaman aşımı ile PORTB 4.-7. Bitleri lojik seviye değişikliği ile Veri belleğine yazma işleminin tamamlanması ile

INTERRUPT İŞLEMİNİN KONTROLÜ Interrupt işlemlerini düzenleyip kontrol etmek amacıyla INTCON file register’ı kullanılır. Bu file register iki amaçla kullanılır: Belirli tür kesme işlemlerine izin verme Kontrol bayrakları (flag) sayesinde bir kesme oluştuğunda hangi tür olduğunu belirlemede

INTCON SAKLAYICI INTCON saklayıcı bitlerin açıklaması, Mikrodenetleyiciler ve PIC Prog., sayfa 164

INTERRUPT İŞLEMİNİN KONTROLÜ INTCON file register’ının 7. Bit olan GIE aslında donanım tarafından kullanılır: Bir kesme oluştuğunda GIE ‘0’ olur Bu sayede kesme alt programı çalışırken oluşabilecek yeni bir kesme ile kesme programının çalışması aksamaz RETFIE komutu ile ana programa geri dönüldüğünde ise GIE ‘1’ yapılır Bu sayede de olası sonraki kesmelerin geçerli olması (enable) sağlanır Dolayısıyla bu bayrağın kontorlünün alt programda ele alınması gerekmez.

RB0/INT KESMESİ Bu PIC’ın RB0/INT ucundan gelen lojik 0 veya 1 sinyali ile kesme oluşturması işlemidir Mesela şu ana kadar programlarımızda bir tuşa basılı olduğunu anlamak için sanki ana programda bir parçasıymış gibi sürekli olarak bunu kontrol ettiriyorduk Bu kesmenin kullanımı ile ana program asıl işlevini yaparken tuşa basıldığı bir kesme ile haber verilir ve gerekenler ilgili alt programda yapılabilir

RB0/INT KESMESİ RB0/INT interrupt’ı kullanabilmek için RB0/INT bacağı giriş olarak programlanmalı INTCON saklayıcısı içerisindeki INTE biti 1 yapılarak bu kesmeye izin verilmeli Bu uçtan gelen sinyalin 01 geçişinde mi yoksa 10 geçişinde mi kesme oluituracağı belirlenmelidir. Bu amaçla kullanılan OPTION saklayıcısının 6.biti (INTEDG): 0 = düşen kenarda kesme 1 = yükselen kenarda kesme oluşturur

RB0/INT KESMESİ ALT PROGRAMI Burada dikkat edilecek noktalar: Programın başlangıcında INTE bitini 0 yap Alt program işlemlerini gerçekleştir INTF bayrağını 0 yap INTE bitini 1 yap RETFIE ile alt programdan dön

RBO/INT kesmesi için bir örnek program akış diyagramı, Mikrodenetleyiciler ve PIC Prog., sayfa 165

RBO/INT kesmesi için bir örnek program, Mikrodenetleyiciler ve PIC Prog., sayfa 165

RBO/INT kesmesi için bir örnek program, Mikrodenetleyiciler ve PIC Prog., sayfa 165

PORTB (RB4-RB7) LOJİK SEVİYE DEĞİŞİKLİK KESMESİ Bu PIC’in RB4-RB7 pinlerinin lojik seviyelerinde değişiklik olması durumunda bir kesmenin oluşması olyıdır Genellikle enerji kaynaklarından tasarruf etmek için bir işlemin yapılmadığı uyku modunda bulunan PIN’i aktif hale getirmede kullanılır Mesela klavyede bir tuşa basıldığında PIC bunu bir kesme olarak algılar ve normal çalışmasına başlar

PORTB (RB4-RB7) LOJİK SEVİYE DEĞİŞİKLİK KESMESİ RB4-RB7 interrupt’ı kullanabilmek için RB <4:7>uçları giriş olarak programlanmalı INTCON saklayıcısı içerisindeki RBIE biti 1 yapılarak bu kesmeye izin verilmelidir

RB4-RB7 KESMESİ ALT PROGRAMI Burada dikkat edilecek noktalar: Programın başlangıcında RBIE bitini 0 yap Alt program işlemlerini gerçekleştir RBIF bayrağını 0 yap RBIE bitini 1 yap RETFIE ile alt programdan dön

RB4-RB7 kesmesi için bir örnek program, Mikrodenetleyiciler ve PIC Prog., sayfa 170

KESME (INTERRUPT) KULLANIMI DERS 12 PIC 16F84 ile KESME (INTERRUPT) KULLANIMI - SON - Kaynak: Mikrodenetleyiciler ve PIC Prog., Orhan ALTINBAŞAK, ISBN 975-883-409-6