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



Benzer belgeler
3.2 PIC16F84 Yazılımı PIC Assembly Assembler Nedir?

PIC MİKRODENETLEYİCİLERİN HAFIZA YAPISI. Temel olarak bir PIC içerisinde de iki tür hafıza bulunur:

MİKROİŞLEMCİ (Microprocessor) NEDİR?

DERS 7 PIC 16F84 PROGRAMLAMA İÇERİK. PIC 16F84 örnek programlar Dallanma komutları Sonsuz döngü

16F84 ü tanıt, PORTB çıkış MOVLW h FF MOWF PORTB

Assembler program yazımında direkt olarak çizgi ile gösterilmemesine rağmen ekranınız ya da kağıdınız 4 ayrı sütunmuş gibi düşünülür.

KONFİGÜRASYON BİTLERİ

Bu yürütme, Prof. Dr. Hakan ÜNDİL (Bir haftalık derse ait ders notudur)

İstanbul Teknik Üniversitesi IEEE Öğrenci Kolu

DEVRELENDİRİLMİŞ LOJİK

Program Kodları. void main() { trisb=0; portb=0; while(1) { portb.b5=1; delay_ms(1000); portb.b5=0; delay_ms(1000); } }

Deney No Deney Adı Tarih. 3 Mikrodenetleyici Portlarının Giriş Olarak Kullanılması / /201...

LCD (Liquid Crystal Display )

# PIC enerjilendiğinde PORTB nin 0. biti 1 olacak #PIC enerjilendiğinde PORTA içeriğinin tersini PORTB de karşılık gelen biti 0 olacak

MİKROİŞLEMCİ (MİKROPROSESÖR - CPU) NEDİR? Prof. Dr. Hakan ÜNDİL (Bir haftalık derse ait ders notudur)

PIC 16F84 VE TEK BUTONLA BĐR LED KONTROLÜ

W SAYAC SAYAC SAYAC. SAYAC= ise, d=0 W

UYGULAMA 05_01 MİKRODENETLEYİCİLER 5.HAFTA UYGULAMA_05_01 UYGULAMA_05_01. Doç.Dr. SERDAR KÜÇÜK

MİKRO DENETLEYİCİLER II DERS NOTLARI (Vize) Prof. Dr. Hakan Ündil Bahar

Mikroişlemciler Ara Sınav---Sınav Süresi 90 Dk.

5. BÖLÜM - DÖNGÜ (ÇEVRİM) ve Z BAYRAĞI

LCD (Liquid Crystal Display)

MİKRO DENETLEYİCİLER II DERS NOTLARI (VİZE KONULARI) Prof. Dr. Hakan Ündil Bahar-Vize

PIC TABANLI, 4 BASAMAKLI VE SER

PIC16F877A nın Genel Özellikleri

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

DERS 5 PIC 16F84 PROGRAMLAMA İÇERİK. PIC 16F84 bacak bağlantıları PIC 16F84 bellek yapısı Program belleği RAM bellek Değişken kullanımı Komutlar

KOMUT AÇIKLAMALARI VE ÖRNEKLERİ

MİKRODENETLEYİCİLER I DERS NOTLARI Güz-Final. 1. BÖLÜM GİRİŞ ve SAYI SİSTEMLERİ 1.1. Devrelendirilmiş Lojik

BÖLÜM 3 3. PIC 16F8X KOMUTLARI 3.1.KULLANILAN SEMBOLLER: 3.2.KOMUTLAR VE KULLANIM ÖRNEKLERİ

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

1. PORTB ye bağlı 8 adet LED i ikili sayı sisteminde yukarı saydıracak programı

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

T.C. MİLLÎ EĞİTİM BAKANLIĞI DENİZCİLİK MİKRODENETLEYİCİ 2

TUŞ TAKIMI (KEYPAD) UYGULAMALARI

BSF STATUS,5 ;bank1 e geçiş CLRF TRISB ;TRISB= BCF STATUS,5 ;bank0 a geçiş

PD103 BUTON LED UYGULAMA DEVRESİ UYGULAMA ÖRNEKLERİ MALZEME LİSTESİ

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

MİKRODENETLEYİCİLER I DERS NOTLARI Prof. Dr. Hakan Ündil Güz (Vize sonuna kadar olan kısımdır.)

Sistem Gereksinimleri: Uygulama Gelistirme: PIC Mikroislemcisinin Programlanmasi: PIC Programlama Örnekleri -1

PIC Mikrodenetleyicileri

Hacettepe Robot Topluluğu

DERS 11 PIC 16F84 ile ALT PROGRAMLARIN ve ÇEVRİM TABLOLARININ KULLANIMI İÇERİK. Alt Program Çevrim Tabloları Program Sayıcı ( Program Counter PC )

Mikroişlemci: Merkezi işlem biriminin fonksiyonlarını tek bir yarı iletken tümleşik devrede birleştiren programlanabilir sayısal elektronik devre

BUTON KONTROLÜ. Pull-Down Bağlantı (Ters Bağlantı) Butona basılmadığında Giriş=1 Butona basıldığında Giriş=0

MİKRODENETLEYİCİLER II DERS NOTLARI Prof. Dr. Hakan ÜNDİL Bahar-FİNAL KISMI

MİKRODENETLEYİCİLER ÖRNEK PROGRAMLAR

IŞIĞA YÖNELEN PANEL. Muhammet Emre Irmak. Mustafa Kemal Üniversitesi Mühendislik Fakültesi. Elektrik-Elektronik Mühendisliği Bölümü

MİKROİŞLEMCİLER VE MİKRO DENETLEYİCİLER 2 DERS NOTLARI Prof. Dr. Hakan Ündil Bahar-Final

MIKROBILGISAYARLAR ve PIC PROGRAMLAMA TEST ÇALIŞMA SORULARI

PIC 16F877 nin kullanılması

BİLİŞİM TEKNOLOJİLERİ

PIC Mikrodenetleyiciler. Hazırlayan:Öğr.Gör.Bülent ÇOBANOĞLU 1

MİKRODENETLEYİCİ GELİŞTİRME SETİ TASARIM VE UYGULAMALARI. öğrencilerine eğitimleri esnasında iş hayatında karşılaşabilecekleri kontrol işlemleri ve

Bu dersimizde pic pinlerinin nasıl input yani giriş olarak ayarlandığını ve bu işlemin nerelerde kullanıldığını öğreneceğiz.

T.C. MİLLİ EĞİTİM BAKANLIĞI MEGEP (MESLEKİ EĞİTİM VE ÖĞRETİM SİSTEMİNİN GÜÇLENDİRİLMESİ PROJESİ) BİLİŞİM TEKNOLOJİLERİ MİKRODENETLEYİCİLER 1

Hacettepe Robot Topluluğu

# PIC enerjilendiğinde PORTB nin 0. biti 1 olacak #PIC enerjilendiğinde PORTA içeriğinin tersini PORTB de karşılık gelen biti 0 olacak

T.C. MİLLÎ EĞİTİM BAKANLIĞI MEGEP (MESLEKİ EĞİTİM VE ÖĞRETİM SİSTEMİNİN GÜÇLENDİRİLMESİ PROJESİ) ENDÜSTRİYEL OTOMASYON TEKNOLOJİLERİ

5.Eğitim E205. PIC16F628 ve PIC16F877 Hakkında Genel Bilgi IF THEN ELSE ENDIF HIGH-LOW GOTO-END- PAUSE Komutları Tanıtımı ve Kullanımı PIC16F628:

DENEY-1. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ

ELEKTRİK-ELEKTRONİK TEKNOLOJİSİ

MİKRODENETLEYİCİLER 2 DERS NOTLARI Prof. Dr. Hakan ÜNDİL Bahar-Final Kısmı

BÖLÜM Mikrodenetleyicisine Giriş

Mikroişlemcili Sistemler ve Laboratuvarı 8.Hafta

EEM 419-Mikroişlemciler Güz 2017

8 Ledli Havada Kayan Yazı

ELEKTRİK-ELEKTRONİK TEKNOLOJİSİ

ROBOT KOL BİTİRME PROJESİ DÖNEM İÇİ RAPORU

PIC MIKRODENETLEYICILER-3: GECĠKME ve KESME PROGRAMLARI

Hacettepe Robot Topluluğu

PIC UYGULAMALARI. Öğr.Gör.Bülent Çobanoğlu

MİKRO DENETLEYİCİLER 1 DERS NOTLARI (Final) Prof. Dr. Hakan Ündil Güz

Bank değiştirme Bir banktan diğerine geçmek için STATUS register denilen özel registerin 5. ve 6. bitinin durumunu değiştirmek gerekir.

2. Sayı Sistemleri. En küçük bellek birimi sadece 0 ve 1 değerlerini alabilen ikili sayı sisteminde bir basamağa denk gelen Bit tir.

MİKRODENETLEYİCİLER II DERS NOTLARI Prof. Dr. Hakan ÜNDİL Bahar-FİNAL KISMI

MPLAB IDE ve ISIS ile ASSEMBLY DİLİNDE UYGULAMA GELİŞTİRMEK

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

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

Haftalık Ders Saati Okul Eğitimi Süresi

PIC PROGRAMLAMA STEP MOTOR SÜRÜCÜ VE KONTROL AMAÇ NEDİR? Unipolar Step Motorlar. Uç TESPİTİ NASIL YAPILIR?

Internet Programming II

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

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

TEMEL BİLGİSAYAR BİLİMLERİ. Programcılık, problem çözme ve algoritma oluşturma

ÖĞRENME FAALİYETİ-1 1. MİKRODENETLEYİCİ PROGRAMI YAZMA

ONDOKUZ MAYIS ÜNİVERSİTESİ

Ders Tanıtım Sunumu. Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı. Öğr. Gör. Murat KEÇECİOĞLU 1

NB Ekran Seri Port Üzerinden Veri Okuma/Yazma. Genel Bilgi Protokol Oluşturma Veri Okuma Veri Yazma

EEProm 24C08 UYGULAMA AMAÇ 24C08 MCU_VCC. e r : d e G. Sayfa - 1

KESME (INTERRUPT) NEDİR?

A.Ü. GAMA MYO. Elektrik ve Enerji Bölümü ALGORİTMA VE PROGRAMLAMA 1.HAFTA

Yrd.Doç. Dr. Bülent ÇOBANOĞLU. Sakarya Üniversitesi, Teknoloji Fakültesi

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Komutların İşlem Süresi

Hacettepe Robot Topluluğu

BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN

2. Sayı Sistemleri. En küçük bellek birimi sadece 0 ve 1 değerlerini alabilen ikili sayı sisteminde bir basamağa denk gelen Bit tir.

XC8 ile PİC uygulamaları

Yrd. Doç.Dr. Bülent ÇOBANOĞLU. Hazırlayan:Yrd.Doç.Dr.Bülent ÇOBANOĞLU 1

Transkript:

1 MİKROİŞLEMCİLER

RESET Girişi ve DEVRESİ Program herhangi bir nedenle kilitlenirse ya da program yeniden (baştan) çalıştırılmak istenirse dışarıdan PIC i reset yapmak gerekir. Aslında PIC in içinde besleme gerilimi belirli bir seviyeye ulaşınca programın çalışmasını sağlayan bir RESET devresi ( Power-on reset ) vardır. Ayrıca PIC16F84 de yine RESET fonksiyonu gören 4 nolu bacakta ucu vardır. Master ( Ana ) Clear ( Silme - Başlatma ) kelimelerinden oluşturulmuş giriş lojik resetleme gerçekleştirir. Yani, resetleme işlemi için bu girişe önce kısa bir süre lojik 0 verilmeli daha sonra lojik 1 uygulayarak, programın enerji verildiği andaki duruma (başa) dönüp tekrar başlaması sağlanmalıdır. Bunun için aşağıdaki gibi bir Reset devresi kullanılabilir. 2

Giriş / Çıkış Portları (I / O) PIC16F84 de A ve B olmak üzere iki adet port ve 5 i A portunda, 8 i B portunda olmak üzere 13 adet dijital (sayısal) giriş/çıkış vardır. PIC deki bu portlardan dışarı lojik bilgi alınabilir ya da içeri lojik bilgi gönderilebilir. Bu giriş/çıkışlar yazılacak program ile ister giriş, ister çıkış yapılabilir. RB0. RB7 (B portunun 8 pini birden) istenirse içerden 50 KΩ dirençle (Pull-Up direnci ) ( + ) beslemeye bağlanmış gibi etki gösterir (Giriş iken geçerli). Bu durum option register (opsiyon saklayıcısı) ile geçerli kılınır yada iptal edilebilir. A portuna ait 4. bit ( RA4 ) ucuna bir de TOCK1 yazılmıştır. Bu nedenle 16F84 ün harici timer/counter ( zamanlayıcı / sayıcı ) özelliği de vardır. Yani isterse dışarıdan gelen (uygulanan) darbenin süresi ölçülebilir veya gelen darbeler sayılabilir. NOT : RA4 ucu normal çıkış portu yapılırsa, bu uç ile ( + 5 volt) arasına bir 10KΩ luk bir direnç(pull Up) bağlanır. Çünkü RA4 pini açık kollektör (open collector) biçimindedir. 3

Assembly Dilinde Dikkat Edilecek Hususlar Noktalı Virgül ( ; ): Bir satırın başına (;) konursa o satır (HEX) koda dönüştürülmez. Bu satır sadece bilgi amaçlıdır. Daha sonra programı değiştirir ya da geliştirirken hatırlanması gereken bilgiler (;) simgesinden sonra yazılabilir. Program Bölümleri: Assembly programının da Başlık, Atama, Program ve Sonuç bölümleri vardır. Editör önce sanal olarak 3 kolona bölünür. Bunlar Etiket, Komut, Adres (ya da Data) bölümleridir. Düzenli ( 3 kolona göre ) yazılmış, noktalı virgüller (;) ile gerekli açıklamalar yapılmış programlar kolaylıkla anlaşılır. 4

Etiketlerin (Label) Özellikleri: Birinci kolonda yer alan Etiketler PIC belleğindeki bir adresin atandığı ve hatırlatmayı kolaylaştıran kelimelerdir. Mesela; 16F84 de PORTB nin 0x06 adresinde olduğu belli olduğuna göre (bknz. File Register tablosu) her sefer 0x06 yı hatırlamak ve yazmaktan kurtulmak için ( başlangıçta bir kere ) PORTB EQU 0x06 komutu yazarak 0x06 yerine programın kaynak dosyasını oluştururken PORT B kullanılabilir. (EQU eşitleme demektir). Ayrıca adres atanmayan etiketler de vardır. BASLA, DONGU gibi GOTO DONGU ( DONGU ye git ) komutun etiketi DONGU olan satıra (komuta) gitmeyi sağlar. Etiketleri kullanırken, ilk kolona yazmaya, bir harfle başlamaya, Türkçe karakter kullanmamaya (DÖNGÜ değil DONGU) ve küçük/büyük harf duyarlılığına ( DONGU yerine başka yerde dongu yazılmaz) dikkat edilmelidir. 5

PIC Assembly Komutları PIC 16F84 de toplam 35 komut vardır. Bu komutlar 4 ana grupta toplanabilir: 1 ) Byte Yönlendirmeli Komutlar 2 ) Bit Yönlendirmeli Komutlar 3 ) Sabitle Atama Komutları 4 ) Kontrol Komutları Komutlar yazılırken bazı tarif harfleri kullanılır. Bunlar; f : File register ( RAM de, veri belleğinde bir adresi temsil eder ) d : Destination ( Hedef yeri ); varsayılan değeri lojik 1 dir. d = 0 ise ( sonuç W registerine kaydedilir ) d = 1 ise ( sonuç File registerine kaydedilir ) k : Sabit veya adres etiketi b : Bit ifade eder b : İkili sayı ifade eder ( Örn :b 00001111 ) d : Onlu sayı ifade eder ( Örn :d 18 gibi ) şeklindedir.. NOT : MPASM, 0 yerine W ; 1 yerine F kullanmaya izin verir. 6

Byte Yönlendirmeli Komutlar : Mikrodenetleyiciler MOVF 0x03,0 MOVF PortA,0 MOVF Status,0 7

Bit Yönlendirmeli Komutlar : Mikrodenetleyiciler Kontrol Komutları : BCF 0x03,5 BCF PortB,3 BSF PortA,2 RETURN RETFIE 8

Sabit ile Kullanılan Komutlar : Mikrodenetleyiciler MOVLW 0x2F ADDLW b 00010111 ADDLW d 13 Sayı ve Karakter Yazılışları : Assembly dilinde programı yazarken sayılar çeşitli sayı formatlarında (biçimlerde) yazılabilir. 9

16 Tabanlı (Hexadecimal) Sayıların Yazılışları : Atamalarda 0x03, 3, 03, 03h, h 03 şekillerinden biri kullanılabilir. Ancak diğer komutlarda 0x03 yada h 03 tarzında kullanmak zorunludur. PORTB EQU 0x06 MOVLW h 03 Diğer komut PORTB EQU 6 MOVLW 0x03 PORTB EQU 06 Atama komut PORTB EQU 06h PORTB EQU h 06 10 Tabanlı (Decimal) Sayıların Yazılışları : MOVLW d 15 MOVLW d 23 2 Tabanlı (Binary) Sayıların Yazılışları : MOVLW b 00101100 MOVLW b 10101010 ASCII Karakterlerin Yazılışları : RETLW B RETLW x 10

ATAMA Komutları : EQU : Byte yönlendirmeli atama komutudur. EQU komutu ile hatırlanması zor olabilen özel file register adresleri başlangıçta atama yapılarak tanımlanabilir. PortA EQU H 05 PortB EQU H 06 #DEFINE : Bit yönlendirmeli atama komutudur. #DEFINE Led PortB,0 #DEFINE Anahtar PortA,2 #DEFINE RP0 Status,5 Port Yönlendirme İşlemleri : PORTB nin 0. ve 2. bitleri çıkış, bu iki bitin dışındaki diğer bitlerin (1,3,4,5,6,7 ) giriş yapılabilir. İstenen bu durumu gerçekleştirebilmek için TRISB registeri kullanılır. TRISB registerinde lojik 1 yapılan bitler GİRİŞ, lojik 0 yapılan bitler de ÇIKIŞ olur. Bir önceki cümledeki durumu gerçekleştirmek için TRISB ye ne yazılmalıdır? 11

Akış Diyagram Çizimi : Genellikle program yazmadan önce akış diyagramı çizmekte büyük yarar vardır. Akış Diyagramları programcının ve daha sonra programı geliştirecek bir başkasının rahatça anlayabileceği tarzda olmalıdır. Aşağıda akış diyagramı için kullanılan bazı standart semboller verilmiştir. Programcı programı yazarken rahatça anlayacağı şekilde akış diyagramını ayrıntılı şekilde vermelidir. 12

Akış diyagramı her zaman bir tek komuta karşılık gelmeyebilir. İstenirse sembollerin içine gerekli komut doğrudan yazılabilir. Bütün mesele programcının yada ilerde programı geliştirecek kişinin akış diyagramını anlayabilmesidir. MPLab ile Derleme : Proteus ile Simulasyon : 13