konu baġliklari mĠkroĠġlemcĠler · vize %20 final %30 dönem sonu projesi %18 4 adet quiz %16...
TRANSCRIPT
1
MĠKROĠġLEMCĠLER
VE
MĠKRODENETLEYĠCĠLER
KONU BAġLIKLARI
1.Mikroişlemci Nedir?
2.Mikroişlemci Mimarileri
3.Mikrodenetleyici Nedir?
4.Assembly Dili (PIC Assembly)
5.Arduino Programlama
Öğr. Gör. Emrah MERCAN 2
MĠKROĠġLEMCĠLER
&
MĠKRODENETLEYĠCĠLER
DEĞERLENDĠRME KRĠTERLERĠ
Vize %20
Final %30
Dönem Sonu Projesi %18
4 adet Quiz %16
8 adet Ödev %16
Herbir Quiz 4 Puan
Herbir Ödev 2 Puan
Quizlerin tarihleri belli olmayacak.
Ödevler 2 sayfa ve el yazısı olacak
Zamanında gelmeyen ödev kabul edilmeyecek.
Ödevler elden teslim edilecek posta, kargo, arkadaş yolu ile
gelen ödevler kabul edilmeyecek.
Öğr. Gör. Emrah MERCAN 4
1.MĠKROĠġLEMCĠ NEDĠR?
CPU - µP - MCU – ECU
1.MĠKROĠġLEMCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 6
1.MĠKROĠġLEMCĠ NEDĠR?
Mikroişlemci nedir?
Mikroişlemci,
«belleğe yüklenmiş komut dizisine göre,
belleklere veri yazma,
belleklerden veri okuma
ve verileri manipüle etme gibi
sayısal işlemler yapabilen entegre
elektronik devre elemanı» olarak tanımlanabilir.
Öğr. Gör. Emrah MERCAN 7
1.MĠKROĠġLEMCĠ NEDĠR?
Dolayısıyla Mikroişlemcinin çalışabilmesi için asgari
olarak;
Programın yükleneceği ve kalıcı verilerin
saklanacağı ROM bellek alanına
Program çalışırken geçici verilerin saklanacağı
RAM alanına
DıĢ dünyadan verilerin alınıp verileceği I/O
Portlarına
ihtiyaç vardır.
Yoksa tek baĢına işlemci bir anlam ifade etmez.
Öğr. Gör. Emrah MERCAN 8
1.MĠKROĠġLEMCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 9
2
1.MĠKROĠġLEMCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 10
1.MĠKROĠġLEMCĠ NEDĠR?
Mikro işlemciyi bir fabrikanın üretim bölümüne
benzetebiliriz.
Fabrikada sadece üretim bölümünün olmadığını,
Fabrika girişi (INPUT)
Ham madde deposu (ROM)
Üretim bölümü (CPU)
Paketleme (RAM)
Mamul deposu (ROM)
Fabrika sevk çıkış bölümü (OUTPUT)
gibi bölümler ile fabrikanın fabrika olabileceğini
unutmamak gerek.
Öğr. Gör. Emrah MERCAN 11
1.MĠKROĠġLEMCĠ NEDĠR?
Fabrikamız bu plastik malzeme üreten fabrika
olsun. Öğr. Gör. Emrah MERCAN 12
1.MĠKROĠġLEMCĠ NEDĠR?
Hammadde girişi Öğr. Gör. Emrah MERCAN 13
1.MĠKROĠġLEMCĠ NEDĠR?
Hammadde
Öğr. Gör. Emrah MERCAN 14
1
0 0
0
0 0
0
0
0
0 0
0
1
1
1 1
1
1
1
1 1
1 1 1
1
1.MĠKROĠġLEMCĠ NEDĠR?
Hammaddenin üretime girişi Öğr. Gör. Emrah MERCAN 15
1.MĠKROĠġLEMCĠ NEDĠR?
Üretim bölümü Öğr. Gör. Emrah MERCAN 16
1 0 0 1 0 1
1 1 0 0 1 1
0 1
1.MĠKROĠġLEMCĠ NEDĠR?
Ürün Öğr. Gör. Emrah MERCAN 17
PROGRAM 1 PROGRAM 2
ÜRÜN 2 ÜRÜN 1
1.MĠKROĠġLEMCĠ NEDĠR?
Paketleme Öğr. Gör. Emrah MERCAN 18
3
1.MĠKROĠġLEMCĠ NEDĠR?
ÜRÜN DEPO Öğr. Gör. Emrah MERCAN 19
1.MĠKROĠġLEMCĠ NEDĠR?
ÜRÜN ÇIKIŞ Öğr. Gör. Emrah MERCAN 20
1.MĠKROĠġLEMCĠ NEDĠR?
Burada dikkat edilmesi gereken nokta
Ürün giriş noktası ile çıkış noktalarında aynı
makinelerin çalışmasıdır.
Ayrıca ürün girişindeki paketler ile çıkıştaki paketler
birbirine çok benzemekte
Yalnız içerikleri farklı
Gerçekte girişte de, çıkışta da plastik var.
Ama biz girişteki plastiği manipüle ederek plastik ürün
elde ettik.
Aslında bu kadar hikayeyi, sözü bu fabrikanın mimari
projesine getirmek için anlattık
Öğr. Gör. Emrah MERCAN 21
1.MĠKROĠġLEMCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 22
Fabrika ve üretim bölümü MĠMARĠ planı
1.MĠKROĠġLEMCĠ NEDĠR?
Son kelime olan MĠMARĠ‟yi bir sonraki bölümde
açıklamak üzere bir kenara koyup,
Facebook, youtube, oyun, film ve mp3 kavramlarının
olmadığı dönemlerde
İşlemci ihtiyacının nereden ortaya çıktığına bakalım.
Maalesef savaştan dolayı.
2. dünya savaşında atılan bir füzenin koordinat
hesaplaması el ile yaklaşık 20 saat gibi bir süreyi
almaktaydı.
Bu süreyi kısaltmak için ardışık işlem yapabilen bir
hesap makinesine ihtiyaç vardı.
Öğr. Gör. Emrah MERCAN 23
1.MĠKROĠġLEMCĠ NEDĠR?
1947 yılında ENIAC ise bu işlemi 15 saniye gibi kısa
bir süreye düşürmüştü.
Tüm bu işlemler binlerce röle, kristal diyot, rezistans
ve kapasitör yardımıyla yapılmaktaydı.
İlk bilgisayar saniyede 385 çarpma işlemi veya 38
bölme yada kare kök işlemi yapabiliyordu.
Hafızasında ise 200 sayıyı saklayabiliyordu.
Öğr. Gör. Emrah MERCAN 24
1.MĠKROĠġLEMCĠ NEDĠR?
Tarih‟in bu ilk bilgisayarı 6 bayan operatör ile kontrol
ediliyor
Programlanma işlemi ise elle kontrol edilen anahtarlar
ve kablolardan oluşuyordu.
ENIAC ( Electronic Numerical Integrator And
Computer ) açılımının kısaltılmışıdır.
Bu bilgisayar, yaklaşık 30 ton ağırlığında ve kurulumu
için 167 metrekare bir alana ihtiyaç duyan devasa bir
makinedir.
Öğr. Gör. Emrah MERCAN 25
1.MĠKROĠġLEMCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 26
1.MĠKROĠġLEMCĠ NEDĠR?
ENIAC‟ın maliyeti 500.000 dolar olarak bilinmekte
ve 150 KW enerji tüketmekteydi.
Tüm bunlara rağmen ilk bilgisayar eşitlikleri
karşılaştırabilme, dört işlemi çözme ve kare kök
hesaplaması yapabilmekteydi.
Bu tür sayısal ve mantıksal iĢlemleri yapabildiği
için ilk bilgisayar unvanını kazanmıştır.
Bu bilgisayar kuşağı 1. KuĢak olarak geçmektedir.
Öğr. Gör. Emrah MERCAN 27
4
1.MĠKROĠġLEMCĠ NEDĠR?
Birinci KuĢak (Vakum Tüplü) Bilgisayarlar (1946-1959)
İlk programlama dili makine dilinde yazılmaya başlandı
ve bilgiler bellekte saklanıyordu.
Bu kuşağın temel özellikleri şunlardır:
1. ĠĢlemci malzemesi olarak çok büyük vakum tüpleri
kullanılırdı.
2. Bu yüzden fazla enerji harcarlardı.
3. Çevreye fazla ısı yayarlardı.
4. Veri programlarını ana belleklerinde tutarlardı.
5. Saklama aracı olarak manyetik teyp kullanılırdı.
6. Programlar fazla detay gerektiren makine dilinde
yazılırdı.
Öğr. Gör. Emrah MERCAN 28
1.MĠKROĠġLEMCĠ NEDĠR?
Ġkinci KuĢak (Transistörlü) Bilgisayarlar (1959-1964)
İlk dönemde kullanılan Vakum Tüplerinin yerine
transistörler kullanılmaya başlandı.
Dolayısıyla daha hızlı işlem yapmalarına rağmen daha
az elektrik harcamaktaydılar.
ASSEMBLY makine dili kullanılmaktaydı.
Bu kuşağın temel özellikleri şunlardır:
1. Ortalama 10.000 transistör ile çalışırlardı.
2. Az enerji kullanırlardı.
3. Transistörler tablolara el ile monte edilirdi.
Öğr. Gör. Emrah MERCAN 29
1.MĠKROĠġLEMCĠ NEDĠR?
Üçüncü KuĢak (Entegre Devreli) Bilgisayarlar (1964-
1970)
Transistörler bir araya getirilerek Entegre Devreler
yapıldı.
İlk Merkezi İşlem birimi CPU yapıldı.
Bu kuşağın temel özellikleri şunlardır:
1. İşlemci olarak entegre devreler kullanılırdı.
2. Düşük maliyet ile yüksek güvenirlik sağlanmaya
başlandı.
3. Manyetik diskler kullanılmaya başlandı.
4. Program ve veriler saklanabiliyordu.
Öğr. Gör. Emrah MERCAN 30
1.MĠKROĠġLEMCĠ NEDĠR?
Dördüncü KuĢak (MikroiĢlemcili) Bilgisayarlar
(1970-?)
ĠĢlem ve kontrol birimlerinin tümünün bir arada
bulunduğu chipler geliştirildi.
Bu kuşağın temel özellikleri şunlardır:
1. Mikroişlemcilerle daha hızlı işlemler yapılmaktadır
2. Daha fazla bilgi ve program saklanabilen disk ve
CD‟ler kullanılabilmektedir
3. Yapay zekâ kavramı hayata geçirilmiştir
4. Ağ sistemleri oluşturulup bilgisayarlar arasında
iletişim sağlanabildi
5. Bilgisayarlar fiziksel olarak küçülerek kullanışlı ve
taşınabilir hale geldi.
Öğr. Gör. Emrah MERCAN 31
1.MĠKROĠġLEMCĠ NEDĠR?
Bizim bu derste üzerinde duracağımız ve
programlayacağımız,
Dördüncü kuşak, ĠĢlem ve kontrol birimlerinin tümünün
bir arada bulunduğu chip‟ler (Mikrodenetleyiciler)
olacaktır.
Öğr. Gör. Emrah MERCAN 32
1.MĠKROĠġLEMCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 33
1.MĠKROĠġLEMCĠ NEDĠR?
MOORE YASASI:
Dünyanın en büyük teknoloji şirketlerinden olan
Intel'in kurucularından Gordon Moore'un 19 Nisan
1965 yılında 'Electronics Magazine' adlı teknoloji
dergisinde yayınladığı makale ile gündeme gelmiş
kendi adını verdiği yasadır.
Moore yasası, bir yasa olmaktan çok, bilgisayar
donanımında kullanılan transistor sayısı ile ilgili bir
istatistiki gözlemdir.
Bu yasaya göre her iki yılda aynı hacim içerisine
sığan transistor sayısı ikiye katlanmaktadır.
Öğr. Gör. Emrah MERCAN 34
1.MĠKROĠġLEMCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 35
1.MĠKROĠġLEMCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 36
5
1.MĠKROĠġLEMCĠ NEDĠR?
ĠġLEMCĠ ÜRETĠM TEKNOLOJĠSĠ:
Nanometre değeri işlemci içerisindeki iki transistörün
arasındaki mesafeyi ifade eder.
Bu aralık ne kadar küçük olursa bir alana daha fazla
transistör yerleştirilebilir, buda çalışmadaki başarımı
etkiler
nm miktarı düştükçe yaydığı ısı ve harcadığı
enerjide düşecektir.
Nedeni: Küçülen tasarım elemanları daha küçük
voltajlara tepki verip devreyi çalışır hale
getirdiğinden işlemcinin çalışma voltajı rahatça
düşürülebilir.
Öğr. Gör. Emrah MERCAN 37
1.MĠKROĠġLEMCĠ NEDĠR?
Mikroişlemci üretim teknolojisinin yıllara göre
dağılımı. (İşlemci Nasıl üretilir 1 2)
Öğr. Gör. Emrah MERCAN 38
1.MĠKROĠġLEMCĠ NEDĠR?
İlk ticari mikroişlemci 1971 yılında hesap makinesi
amacıyla üretilen Intel firmasının 4004 adlı 4 bitlik
ürünüdür.
Zaten ilk bilgisayarlar sadece matematiksel
hesaplamalar yapmak için üretilmişti.
Öğr. Gör. Emrah MERCAN 39
1.MĠKROĠġLEMCĠ NEDĠR?
Mikroişlemcilerin genel özellikleri hakkında daha fazla
bilgiye sahip olabilmek için ilk entegre mikroişlemci olan
INTEL 4004’ü daha yakından inceleyelim.
Tüm elektronik ürünlerde olduğu gibi işlemcileri de
tanımanın en güzel yolu bilgi sayfalarına (data sheet)
bakmaktır.
Öğr. Gör. Emrah MERCAN 40
1.MĠKROĠġLEMCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 41
1.MĠKROĠġLEMCĠ NEDĠR?
4004 Data Sheet‟ini incelemek için resme tıklayalım
Öğr. Gör. Emrah MERCAN 42
1.MĠKROĠġLEMCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 43
1.MĠKROĠġLEMCĠ NEDĠR?
INTEL 4004 DIP PAKETİ
Öğr. Gör. Emrah MERCAN 44
16
1
8
9
1.MĠKROĠġLEMCĠ NEDĠR?
INTEL 4004 PİN GÖREVLERİ
Öğr. Gör. Emrah MERCAN 45
6
1.MĠKROĠġLEMCĠ NEDĠR?
INTEL 4004 MİMARİ
Öğr. Gör. Emrah MERCAN 46
1.MĠKROĠġLEMCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 47
1.MĠKROĠġLEMCĠ NEDĠR?
8085 mimarisinin ANİMASYONU
Intel 4004 komutları hakkında ayrıntılı bilgi
Data sheet özeti
Uygulama videosu
Öğr. Gör. Emrah MERCAN 48
1.MĠKROĠġLEMCĠ NEDĠR?
Buraya kadar işlemci üreticisi olarak Intel üzerinde
durduk
PC işlemcisi olarak Intel‟in rakibi AMD‟de vardır.
Günümüzde PC‟nin dışında bir çok alanda da
(Tablet, Telefon, Televizyon, Endüstriyel sistemler,
Araçlar vb) işlemci kullanılmaktadır.
Dolayısıyla burada sayamayacağımız kadar fazla
işlemci üreticisi bulunmaktadır.
Mikroişlemci üreticilerine buradan göz atabilirsiniz.
Öğr. Gör. Emrah MERCAN 49
1.MĠKROĠġLEMCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 50
2. MĠKROĠġLEMCĠ
MĠMARĠLERĠ
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
Intel 4004 mimarisini ve 8085 mimarisini gördükten
sonra mimari kavramı ve mimari çeşitleri hakkında
bilgi verebiliriz.
Bilgisayarın komut işleme hızını etkileyen ana unsur
bilgisayarın tasarım mimarisidir.
Tasarım Mimarisi: Kaydedicilerin, veri yollarının,
iĢ hatlarının büyüklüğü, sayısı, yapısı ve yerleşimi
ile ilgili planlamadır. (Plastik Fabrikasının yerleşim
planını hatırlayalım)
Mikroişlemcinin içine yolculuk videosu
Öğr. Gör. Emrah MERCAN 52
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
Öğr. Gör. Emrah MERCAN 53
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
Öğr. Gör. Emrah MERCAN 54
7
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
Temelde 2 tip tasarım mimarisi vardır.
1- Von Neuman Mimarisi
2- Harvard Mimarisi
Bu iki temel mimari tipine bağlı olarak 2 çeşit komut
seti mimarisi vardır.
1- CISC (Von Neuman )
2- RISC (Harvard)
Öğr. Gör. Emrah MERCAN 55
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
A) ĠġLEMCĠ TASARIM MĠMARĠLERĠ
1- VON NEUMAN MİMARİSİ:
Bilgisayarlarda ilk kullanılan mimaridir.
Geliştirilen bu bilgisayarlar;
Aritmetik ve mantıksal birim,
Kontrol birim,
Bellek,
Giriş-Çıkış birimi ve
bu birimler arasında iletişimi sağlayan yolardan
oluşmaktaydı.
Öğr. Gör. Emrah MERCAN 56
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
VON NEUMAN MİMARİSİ
Öğr. Gör. Emrah MERCAN 57
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
Bu mimaride veri ve komutlar, bellekten
mikroişlemciye, aynı yolu kullanarak getirilir ve
işlenir.
Program ve veri aynı bellekte bulunduğundan,
komut ve veri gerekli olduğunda aynı iletişim yolunu
kullanmaktadır.
Bu durumda, komut için bir algetir saykılı, sonra veri
için diğer bir algetir saykılı gerekmektedir.
Öğr. Gör. Emrah MERCAN 58
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
Von Neuman mimarisine sahip bir bilgisayar
aşağıdaki sıralı adımları gerçekleştirir.
1. Program sayıcısının gösterdiği adresten
(bellekten) komutu al getir.
2. Program sayıcısının içeriğini bir artır.
3. Getirilen komutun kodunu kontrol birimini
kullanarak çöz.
– Kontrol birimi, bilgisayarın geri kalan birimlerine
sinyal göndererek bazı operasyonlar yapmasını
sağlar.
4. 1. adıma geri dönülür.
Öğr. Gör. Emrah MERCAN 59
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
Von Neuman mimarisinde, veri bellekten alınıp
işledikten sonra tekrar belleğe gönderilmesinde çok
zaman harcanır.
Veri ve komutlar aynı bellek biriminde
depolandığından, yanlışlıkla komut diye veri
alanından kod getirilmesi sıkıntılara sebep
olmaktadır.
Öğr. Gör. Emrah MERCAN 60
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
1- HARVARD MİMARİSİ:
Harvard mimarili bilgisayar sistemlerinin Von
Neuman mimarisinden farkı veri ve komutların ayrı
ayrı belleklerde tutulmasıdır.
Buna göre, veri ve komut aktarımında iletişim yolları
da bir birinden bağımsız yapıda bulunmaktadırlar.
Öğr. Gör. Emrah MERCAN 61
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
Komutla birlikte veri aynı saykıl da farklı iletişim
yolundan ilgili belleklerden alınıp işlemciye
getirilebilir.
Getirilen komut işlenip ilgili verisi veri belleğinden
alınırken sıradaki komut, komut belleğinden alınıp
getirilebilir.
Bu önden alıp getirme işlemi, dallanma haricinde
hızı iki katına çıkarabilmektedir.
Öğr. Gör. Emrah MERCAN 62
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
Harvard Mimarisi
Öğr. Gör. Emrah MERCAN 63
8
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
Bu mimari günümüzde daha çok sayısal sinyal
işlemcilerinde (DSP) kullanılmaktadır.
Bu mimaride program içerisinde döngüler ve zaman
gecikmeleri daha kolay ayarlanır.Von Neuman
yapısına göre daha hızlıdır.
PIC mikrodenetleyicileri bu yapıyı kullanır.
Öğr. Gör. Emrah MERCAN 64
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
B) ĠġLEMCĠ KOMUT TASARIM MĠMARĠLERĠ
1-CISC (Complex Instruction Set Computer)
Mimarisi :
Von Neuman mimarisi ile tasarlanan işlemcilerin
kullandığı komut setidir.
Bu mimari, programlanması kolay ve etkin bellek
kullanımı sağlayan tasarım felsefesinin bir ürünüdür.
İşlemci üzerinde performans düşüklüğü ve
işlemcinin karmaşık bir hale gelmesine neden olsa
da yazılımı basitleştirmektedir.
En önemli iki özelliği, değişken uzunluktaki komutlar
diğeri ise karmaşık komutlardır.
Öğr. Gör. Emrah MERCAN 65
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
Değişken ve karmaşık uzunluktaki komutlar bellek
tasarrufu sağlar.
Karmaşık komutlar birden fazla komutu tek bir hale
getirirler.
CISC komut seti mümkün olabilen her durum için bir
komut içermektedir.
CISC mimarisinde yeni geliştirilen bir mikroişlemci
eski mikroişlemcilerin assembly dilini
desteklemektedir.
Öğr. Gör. Emrah MERCAN 66
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
2-RISC ( Reduced Instruction Set Computer)
Mimarisi :
Harvard mimarisi ile tasarlanan işlemcilerin
kullandığı komut setidir.
RISC mimarisinin taraftarları, bilgisayar mimarisinin
gittikçe daha karmaşık hale geldiğini ve hepsinin bir
kenara bırakılıp en başta yeniden başlamak
fikrindeydiler.
70‟li yılların başında IBM firması ilk RISC mimarisini
tanımlayan şirket oldu.
Bu mimaride bellek hızı arttığından ve yüksek seviyeli
diller assembly dilinin yerini aldığından, CISC‟in başlıca
üstünlükleri geçersiz olmaya başladı.
Öğr. Gör. Emrah MERCAN 67
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
RISC‟in felsefesi üç temel prensibe dayanır.
1-Bütün komutlar tek bir çevrimde çalıştırılmalıdır:
Her bir komutun farklı çevrimde çalışması işlemci
performansını etkileyen en önemli nedenlerden
biridir. Komutların tek bir çevrimde performans
eşitliğini sağlar.
2-Belleğe sadece “load” ve “store” komutlarıyla
erişilmelidir:
Eğer bir komut direkt olarak belleği kendi amacı
doğrultusunda yönlendirilirse onu çalıştırmak için
birçok saykıl geçer. Komut alınıp getirilir ve bellek
gözden geçirilir.
Öğr. Gör. Emrah MERCAN 68
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
RISC işlemcisiyle, belleğe yerleşmiş veri bir
kaydediciye yüklenir, kaydedici gözden geçirilir ve
son olarak kaydedicinin içeriği ana belleğe yazılır.
3-Bütün icra birimleri mikrokod kullanmadan
donanımdan çalıştırılmalıdır:
Veriyolu mantığını kontrol etmek için bir komutu
küçük parçalara bölerek basitleştirilmiş
komutcuklara mikrokod denilir.
Bir mikrokodlu sistemde işlemcinin komut kodlarının
herbirine karşılık gelen mikrokod komut gruplarını
içeren belleği (tipikolarakROM) vardır.
Bir makine kodu işlemciye eriştiğinde, işlemci kodun
daha basit komutcuklara ayrılmış dizilerini icra eder. Öğr. Gör. Emrah MERCAN 69
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
Öğr. Gör. Emrah MERCAN 70
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
Genelde RISC çipleri iş hattı kanal tekniği (Pipe line)
kullanarak eşit uzunlukta segmentlere bölünmüş
komutları çalıştırmaktadır.
İşhattı tekniği komutları kademeli olarak işler ki bu
RISC‟in bilgi işlemini CISC‟den daha hızlı yapmasını
sağlar.
RISC işlemcisinde tüm komutlar 1 birim uzunlukta
olup Pipeline tekniği ile işlenmektedir.
Bu teknikte bazıları hariç, komutlar, her bir
basamağında aynı işlemin uygulandığı birimlerden
geçerler.
Öğr. Gör. Emrah MERCAN 71
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
PIPELINE Zaman Çizelgesi
Öğr. Gör. Emrah MERCAN 72
9
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
PIPELINE Çalışma Mantığı
Öğr. Gör. Emrah MERCAN 73
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
Öğr. Gör. Emrah MERCAN 74
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
CISC mimarisinde kullanılan transistor sayısı RISC‟e
nazaran daha fazladır.
Transistör sayısının bir yerde çok olması fazla
yerleşim alanı ve ayrıca fazla ısı demektir.
Bundan dolayı da fazla ısı üretimi soğutma olayını
gündeme getirmektedir.
CISC tabanlı Pentium işlemcilerde karışık ısı
dağıtıcısı veya soğutma fanlar kullanılmaktadır.
Bu büyük bir dezavantajdır.
Öğr. Gör. Emrah MERCAN 75
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
RISC-CISC KARġILAġTIRMASI
Öğr. Gör. Emrah MERCAN 76
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
3-EPIC (Explicitly Parallel Instruction Computing-
Belirtilmiş Paralel Komutlarla Hesaplama)
MĠMARĠSĠ:
Bu mimari RISC ve CISC mimarisinin üstün
yönlerinin bir arada buluştuğu bir mimari türüdür.
EPIC mimarisi, işlemcinin hangi komutların paralel
çalışabildiğini denetlemesi yerine, EPIC
derleyicisinden açık olarak hangi komutların paralel
çalışabildiğini bildirmesini ister.
Çok uzun komut kelimesi (VLIW) kullanan
bilgisayarlar, yazılımın paralelliğine ilişkin kesin bilgi
sağlanan mimari örneklerdir.
Öğr. Gör. Emrah MERCAN 77
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
Günümüz mimarilerinin kısıtı, paralelliği engelleyici
sınırlamaları olmasıdır. EPIC mimarisinin yaklaşımı
paralelliği her zaman kullanmaktır. Paralellik
mümkün değilse bile mümkün kılmanın yolları
aranır.
Öğr. Gör. Emrah MERCAN 78
2. MĠKROĠġLEMCĠ MĠMARĠLERĠ
EPIC mimarisini ticari olarak hayata geçiren Intel ve
Hp ortaklığıdır.
Intel RISC mimari tabanlı x86 işlemcilerinin
performans eksikliklerini gidermek için 1999 yılı
Ekim ayında ilk 64bit tabanlı EPIC mimarili Itanium
işlemcisini tanıtmıştır.
Bu mimarinin getirdiği en önemli yeniliklerden biri
4GB tan büyük kapasiteli Ram‟lerin
kullanılabilmesidir.
Öğr. Gör. Emrah MERCAN 79
3. MĠKRODENETLEYĠCĠ
NEDĠR?
3.MĠKRODENETLEYĠCĠ NEDĠR? Günümüzde mikroişlemciler matematiksel
hesaplamalar yapmaya devam etse de hesap
yapmanın dışındaki diğer işlemler için çok daha fazla
kullanılmakta.
Bilgisayar ile neler yapabiliriz?
Öğr. Gör. Emrah MERCAN 81
10
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 82
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 83
3.MĠKROĠġLEMCĠ NEDĠR?
Acaba işlemci sadece
Bunlarda mı vardır?
Öğr. Gör. Emrah MERCAN 84
3.MĠKRODENETLEYĠCĠ NEDĠR?
Sizce başka hangi cihazlarda işlemci vardır?
Öğr. Gör. Emrah MERCAN 85
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 86
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 87
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 88
3.MĠKRODENETLEYĠCĠ NEDĠR?
Sizce başka hangi cihazlarda işlemci vardır?
Öğr. Gör. Emrah MERCAN 89
3.MĠKRODENETLEYĠCĠ NEDĠR?
Kolunuzun var olduğunu fark ettiniz mi?
Bunun için ....……… ettiniz mi?
Öğr. Gör. Emrah MERCAN 90
ġÜKÜR
11
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 91
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 92
3.MĠKRODENETLEYĠCĠ NEDĠR?
Akıllı Fırın
Akıllı Ev
Akıllı Araba
Akıllı Televizyon
Akıllı Telefon
Vb…
Günümüzde kullanılan cihazların hemen hemen
hepsinin akıllı (smart) versiyonları bulunmaktadır.
Buradaki akıl kelimesi nereden gelmektedir?
Elbette insandan çünkü insan aklı ile iĢlemciyi üretti ve
yine aklı ile isteğine göre çalışacak şekilde
programladı.
Öğr. Gör. Emrah MERCAN 93
3.MĠKRODENETLEYĠCĠ NEDĠR?
Bu cihazları kontrol etmek için bir bilgisayara ihtiyaç var
mıdır?
Yada bu cihazlarda kullanılan işlemciler, bilgisayarlarda
kullanılan işlemciler aynı mıdır?
Elbette aynı değildir Fiyat / Performans olarak uygun bir
seçim olmayacaktır.
Dolaysıyla ucuz, düşük güçlü, karmaşık olmayan işimizi
görecek kadar hız, kapasite vb. özelliklere sahip bir
işlemciye ihtiyaç vardır.
Öğr. Gör. Emrah MERCAN 94
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 95
3.MĠKRODENETLEYĠCĠ NEDĠR?
Normal bir işlemcinin çalışabilmesi için RAM, ROM, I/O
system vb. donanımlara ihtiyaç vardır.
Fiyat / Performans ilkesi çerçevesinde ihtiyacımız kadar
RAM, ROM, I/O vb. donanımları tek bir entegre
içerisine sığdırabilseydik daha uygun olmaz mıydı?
Elbette olurdu.
İşte bu noktada yardımımıza MİKRODENETLEYİCİ
koşmaktadır.
Mikrodenetleyici ve mikroişlemci arasındaki fark
videosu için TIKLAYINIZ
Öğr. Gör. Emrah MERCAN 96
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 97
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 98
3.MĠKRODENETLEYĠCĠ NEDĠR?
Diyelim ki «akıllı» olması gereken bir projeniz var ve
bunu bilgisayara bağımlı olmadan gerçekleştirmek
istiyorsunuz hangi mikrodenetleyiciyi kullanacağız?
Yada mikrodenetleyici mi kullanacağız?
Bu sorunun cevabını vermeden önce bu alan ile ilgili
birkaç terimi açıklamakta fayda var.
Yukarıda da bahsedildiği gibi sistem bilgisayardan
bağımsız kendi kendine yetebilen (Stand-alone) bir
sistem olmak zorunda.
Öğr. Gör. Emrah MERCAN 99
12
3.MĠKRODENETLEYĠCĠ NEDĠR?
Stand-alone: A computer (usually a micro-computer)
that acts as a complete unit, not attached to any other
computers and containing application software.
Stand-alone sistemler bildiğimiz anlamda işletim
sistemine, başka bir bilgisayara yada işlemcili sisteme
ihtiyaç duymayan kendi yazılımı ile kendinden
beklenen görevi yerine getiren micro-sistemlerin
tümüne verilen addır.
Öğr. Gör. Emrah MERCAN 100
3.MĠKRODENETLEYĠCĠ NEDĠR?
Robotlar
Stand-alone
Sistemlerdir.
Öğr. Gör. Emrah MERCAN 101
3.MĠKRODENETLEYĠCĠ NEDĠR?
Gömülü (Embedded) Sistemler:
Gömülü Sistemler için kesin bir tanım yapmak kolay
değildir.
Basitçe, bir sistem içinde, belirli kontrol işlevleri için
tasarlanmış bilgisayar sistemi olarak tarif edebiliriz.
Yada PC üzerinde çalışabilen yüksek seviyeli dillerde
yazılmış programların, makine kodlarına çevrilerek
işlemcilere yada FPGA türü entegrelere gömülerek
oluşturulan sistemlere Gömülü sistem denir.
Gömülü sistemler günümüzde dijital saat gibi taşınabilir
cihazlardan fabrika kontrolleri gibi büyük sabit
sistemlere kadar geniş bir kullanım yelpazesine
sahiptir.
Öğr. Gör. Emrah MERCAN 102
3.MĠKRODENETLEYĠCĠ NEDĠR?
Gömülü sistemler genelde mekanik ve donanım
yapısını da içeren bir cihazının parçasını oluşturur.
Bu sistemler, gömüldüğü cihazın kontrolü, izlenmesi
veya çalışmasına yardımcı olması için kullanılır.
Öğr. Gör. Emrah MERCAN 103
3.MĠKRODENETLEYĠCĠ NEDĠR?
Gömülü Sistem Özellikleri:
Genellikle arayüzleri yoktur ya da çok kısıtlı kullanıcı
arayüzüne sahiptirler.
Gömülü sistem programları sürekli olarak yürütülür.
Verimlilik gömülü sistemler için büyük önem taşır. Güç
tüketimi, kod boyutu ve yürütme zamanı gibi kriterlerin,
maliyet açısından optimize edilmesi gerekir. Bu özelliği
ile masaüstü bilgisayar uygulamalarından ayrılır.
Gömülü sistemler genellikle gerçek zamanlı (real-time)
çalışmak üzere tasarlanmıştır.
Yazılım ve donanım olmak üzere iki ana kısımdan
oluşur.
(http://www.fpganedir.com/embedded/index
Öğr. Gör. Emrah MERCAN 104
3.MĠKRODENETLEYĠCĠ NEDĠR?
Yukarıdaki stand-alone ve gömülü sistem
tanımlarına
Mikrodenetleyici,
FPGA,
DSP,
PLC
gibi sistemlerin hepsi uysa da.
Genelde literatürde gömülü sistem deyince genelde
FPGA ve DSP akla gelir.
Öğr. Gör. Emrah MERCAN 105
3.MĠKRODENETLEYĠCĠ NEDĠR?
FPGA (Field Programmable Gate Array):
(Alanda Programlanabilir Lojik Kapı Dizileri)
Programlanabilir mantık blokları ve bu bloklar
arasındaki ara bağlantılardan oluşan ve geniş
uygulama alanlarına sahip olan sayısal tümleşik
devrelerdir.
FPGA‟i , üretimden sonra istenen fonksiyona göre
donanım yapısı kullanıcı tarafından değiştirilebilen
entegre devreler olarak tanımlayabiliriz.
FPGA bir işlemci değil, lojik entegredir.
İşlemci olmadığından mimarisi yoktur.
Mimariyi amacına göre kullanıcı oluşturur.
Öğr. Gör. Emrah MERCAN 106
3.MĠKRODENETLEYĠCĠ NEDĠR?
Sadece lojik kapılardan oluşuğu için çok hızlıdır.
Hızı paralel işlem yapabilmesinden kaynaklanır.
Gerektiğinde FPGA sistem bir mikroişlemci ile
desteklenir.
Sıradan entegreler ya hiç paralel işlem yapamazlar ya
da çok sınırlı yapabilirler.
FPGA‟de ise uygulamaya ve kapasiteye göre, birbirine
paralel onlarca belki binlerce işlemi aynı anda
yapabiliriz.
Bu da paralel işlem gerektiren uygulamalarda FPGA‟leri
eşsiz kılmaktadır.
Paralel işleme genelde ses ve görüntü işlemede çok
ihtiyaç duyulur. Öğr. Gör. Emrah MERCAN 107
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 108
ARDIġIL ĠġLEM
PARALEL ĠġLEM
13
3.MĠKRODENETLEYĠCĠ NEDĠR?
Paralel İşlem
Öğr. Gör. Emrah MERCAN 109
3.MĠKRODENETLEYĠCĠ NEDĠR?
Paralel İşlem
Öğr. Gör. Emrah MERCAN 110
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 111
3.MĠKRODENETLEYĠCĠ NEDĠR?
FPGA‟in mucidi olan Xilinx firması şu anda dünyanın
en büyük FPGA ve CPLD (programlanabilir platformlar)
üreticisidir.
FPGA programlamak için genelde VHDL ve Verilog
dilleri kullanılır.
Altera firması diğer bir FPGA üreticisidir.
Öğr. Gör. Emrah MERCAN 112
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 113
3.MĠKRODENETLEYĠCĠ NEDĠR?
DSP (Digital Signal Processing):
Dijital Sinyal İşlemcisi
DSP entegreleri özelleşmiş, yüksek hızlı bir
mikroişlemci olarak düşünülebilir. Kullandığımız cep
telefonlarının her birinin temelinde DSP çipleri
bulunmaktadır.
DSP çipleri hızlı, düşük maliyetli ve az enerji tüketen
çözümler sunmasının yanında karmaşık algoritmaların
verimli bir şekilde gerçekleştirilmesine de olanak tanır.
Öğr. Gör. Emrah MERCAN 114
3.MĠKRODENETLEYĠCĠ NEDĠR?
DSP kullanım alanları:
Tıp: Teşhis görüntüleme (MR, ultrason),
Elektrokardiyogram analizi, Tıbbigörüntü saklama/geri
yükleme
Ticari : Görüntü ve ses sıkıştırma, Özel film efektleri,
Video konferans
Telefon : Yankı giderici, Sinyal çoğullama, Filtreleme,
Ses ve veri sıkıştırma
Askeri : Radar, Sonar, Ordu donatım rehberi, Gizli
haberleşme
Endüstri : Petrol ve maden arama, Proses görüntüleme
ve kontrol, Sağlamlık testi, CAD ve tasarım elemanları
Akademik : Yer sarsıntısı kayıtları ve analizi, Veri
kazanımı, Spektral analiz, Simülasyon ve modelleme
Öğr. Gör. Emrah MERCAN 115
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 116
3.MĠKRODENETLEYĠCĠ NEDĠR?
Hardware in the Loop Microgrid DSP
Öğr. Gör. Emrah MERCAN 117
14
3.MĠKRODENETLEYĠCĠ NEDĠR?
FPGA - DSP karşılaştırması
Öğr. Gör. Emrah MERCAN 118
3.MĠKRODENETLEYĠCĠ NEDĠR?
PLC Nedir?
PLC (Programmable Logic Controller):
Fabrikalardaki imalat hatları veya makinelerin kontrolü
gibi işlevlerin denetiminde kullanılan endüstriye özel
standartlarda üretilmiş mikrodenetleyicili sistemdir .
En büyük artıları ise elektriksel gürültülere, sıcaklık
farklarına ve mekanik darbelere karşı dayanıklı
tasarlanırlar.
Öğr. Gör. Emrah MERCAN 119
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 120
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 121
3.MĠKRODENETLEYĠCĠ NEDĠR?
Yukarıda bahsi geçen sistemler dışında günümüzde
oldukça popüler olan
Bilgisayar ve mikrodenetleyici melezi sistemlerde
mevcuttur. ARM mimarisine sahiptirler.
İşlemcileri bilgisayar işlemcilerine benzemekle beraber
ekran kartı, wifi, rom vb. donanımlar işlemcinin içine
gömülmüş durumdadır.
Ve SoC (System on Chip) diye adlandırılırlar
Bunlar kendi içerisinde bilgisayar gibi işletim sistemleri
barındırır. (Akıllı telefon, tablet vb. SoC kullanır)
İnternet, müzik, kamera bağlantısı vb. işlemlerin yanında
portlarına motor led buton bağlayıp ayrıca yazdığınız
kodları çalıştırabilirsiniz. Öğr. Gör. Emrah MERCAN 122
3.MĠKRODENETLEYĠCĠ NEDĠR?
Bu sistemlerden en sık kullanılanları;
Raspberry Pi 3
Öğr. Gör. Emrah MERCAN 123
3.MĠKRODENETLEYĠCĠ NEDĠR?
Teknik Özellikler:
Broadcom BCM2837 SoC
1.2 GHz 4 çekirdekli 64-bit ARM Cortex-A53
2 çekirdekli Videocore IV® Multimedia
1 GB LPDDR2 bellek
Dahili 802.11b/g/n WiFi - Bluetooth 4.1
10/100 Ethernet - HDMI 1.4
Video ve ses çıkışı için 3.5mm port
4 adet USB2.0
Öğr. Gör. Emrah MERCAN 124
3.MĠKRODENETLEYĠCĠ NEDĠR?
40 adet GPIO pini, önceki Raspberry Pi modelleri ile
uyumlu
WiFi/Bluetooth için dahili çip anten
CSI (kamera) ve DSI (ekran) konektörleri
Mikro SD kart yuvası
Tüm Raspberry Pi uyumlu Linux dağıtımlarını ve
Windows 10 IoT Core işletim sistemini destekler
Boyutlar: 85 x 56 x 17 mm
Öğr. Gör. Emrah MERCAN 125
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 126
15
3.MĠKRODENETLEYĠCĠ NEDĠR?
Öğr. Gör. Emrah MERCAN 127
3.MĠKRODENETLEYĠCĠ NEDĠR?
Pi benzeri diğer kartlar,
Beaglebone
İntel edison
Orange Pi
Asus Tinker board
vb.
Öğr. Gör. Emrah MERCAN 128
3.MĠKRODENETLEYĠCĠ NEDĠR?
Şimdi sorumuzu tekrar edecek olursak
Diyelim ki «akıllı» olması gereken bir projeniz var ve bunu
bilgisayara bağımlı olmadan gerçekleştirmek istiyorsunuz
hangi mikrodenetleyiciyi kullanacağız?
Şimdi soruya vereceğiniz cevap için sizde soru
sormalısınız.
Proje hangi alanda olacak?
Bu alana uygun hızda ve özelliklerde bir sistem
kullanmanız gerecektir.
Öğr. Gör. Emrah MERCAN 129
3.MĠKRODENETLEYĠCĠ NEDĠR?
Yani görüntü yada sinyal işleyecekseniz FPGA yada DSP
kullanırsınız.
Endüstriyel otomasyon projesi ise PLC kullanırsınız.
Motor kontrol, sensör okuma vb. daha düşük işlem hızı ve
kapasitesi gerektiren diğer işlemlerde ise mikrodenetleyici
kullanırsınız.
Biz bu dersimizde mikrodenetleyici programlama
anlatacağımızdan projelerinizi mikrodenetleyici ile
yapacaksınız.
Öğr. Gör. Emrah MERCAN 130
3.MĠKRODENETLEYĠCĠ NEDĠR?
Bir çok mikrodenetleyici markası ve modeli
bulunmaktadır.
Fakat dünyada ve ülkemizde eğitim amaçlı kullanılan
başlıca mikrodenetleyici markaları;
Microchip firmasının ürettiği PIC‟ler
Atmel firmasının üretttiği AVR ve ATmega işlemciler
Texas Insturment firmasının ürettiği MSP ve ARM
Intel firmasının üretttiği 8051 ve MC51
Ve Atmega temelli açık kaynak ARDUINO platformu
Öğr. Gör. Emrah MERCAN 131
3.MĠKRODENETLEYĠCĠ NEDĠR?
Biz bunlar içerisinden PIC ile Assembley dilini
öğrendikten sonra,
C türevi programlama dili kullanan Arduino arayüzü ve
donanımını öğreneceğiz
Öğr. Gör. Emrah MERCAN 132
4. PIC ve ASSEMBLY DĠLĠ
4. PIC ve ASSEMBLY DĠLĠ
PIC (Peripheral Interface Controller)
Çevresel Arabirim Denetleyicisi
PIC Microchip firmasının 1990‟larda üretmeye başladığı
mikrodenetleyicilere verilen isimdir.
RISC ve Harvard mimarisi ile üretilmişlerdir.
Farklı İhtiyaçları karşılamak için üretilmiş farklı PIC aileleri
mevcuttur.
Veri yolu genişliğine göre 3 nesil vardır;
8-bit(PIC10,PIC12,PIC16,PIC18),
16-bit(PIC24)
32-bit(PIC32)
Video için TIKLAYINIZ
Öğr. Gör. Emrah MERCAN 134
4. PIC ve ASSEMBLY DĠLĠ
Öğr. Gör. Emrah MERCAN 135
16
4. PIC ve ASSEMBLY DĠLĠ
12 Bit Komut uzunluğuna sahip PIC‟ler;
Öğr. Gör. Emrah MERCAN 136
4. PIC ve ASSEMBLY DĠLĠ
14 Bit Komut uzunluğuna sahip PIC‟ler;
Öğr. Gör. Emrah MERCAN 137
4. PIC ve ASSEMBLY DĠLĠ
16 Bit Komut genişliğine sahip PIC‟ler;
Öğr. Gör. Emrah MERCAN 138
4. PIC ve ASSEMBLY DĠLĠ
Neden PIC?
Az sayıda komut yapısı ile kolay Assembly
programlama,
Firmanın sağlamış olduğu yazılım destekleri,
Yüksek seviyeli PicBasicPro, HitechPicC, CCSC ve
Pascal dilleri ile program yazıp derleme imkanı,
Ucuz ve kolay bulunabilir,
Dünya çapında çok sayıda kullanıcıya sahip
olduğundan örnek kod ve kaynak zenginliği.
Öğr. Gör. Emrah MERCAN 139
4. PIC ve ASSEMBLY DĠLĠ
Hangi PIC?
I/O port sayısı
Program ve EEPROM bellek miktarı
ADC, DAC, USB, PWM vb çevresel birimleri
Çalışma frekansı
Fiziksel Boyutu
Maliyeti
Projemiz için uygun olan PIC modeli seçilir.
Öğr. Gör. Emrah MERCAN 140
4. PIC ve ASSEMBLY DĠLĠ
Biz dersimizde PIC‟in başlangıç seviyesi için ideal olan
16F84A modelini inceleyeceğiz.
Öğr. Gör. Emrah MERCAN 141
4. PIC ve ASSEMBLY DĠLĠ
16F84 genel özellikleri:
18 bacaklı DIP kılıf
8 B portu – 5 A Portu olmak üzere 13 I/O
1 KB program hafızası (14bit x 1024 byte)
Program hafızası 10000 kez yazılıp silinebilir.
64 Byte ROM data hafızası (8bit x 64 byte)
10 MHz (84A- 20MHz)
4 Kesme kaynağı
8 bit timer
Öğr. Gör. Emrah MERCAN 142
B
A
PIC 16F84‟ün pin
yapısı.
P I C
1 6 F 8 4
R A 1 R A 2
R A 0
R B 7
R B 6
R B 5
R B 4
R A 3
R B 0
R B 1
R B 2
R B 3
+ V c c
O S C 1
O S C 2
G N D
M C L R
R A 4 / T 0 C L K I 14 : Besleme
(+Vcc)
5 : Toprak (GND)
15-16 : Osilatör (OSC)
Clock Pulse
3 : Reset (MCLR)
1-2-3-17-18 : 5 bitlik A portu
6 ile 13 arası : 8 bitlik B portu
Öğr. Gör. Emrah MERCAN 143
4. PIC ve ASSEMBLY DĠLĠ
Program bus
Y alnız okunabilir bellek.
ROM
Data bus
RAM
Pulse girişi
timer Kesme
Anahtarlar ledler sensörler v.b.
I/O
clock
CPU
PIC
BĠLEġĠMĠ
Öğr. Gör. Emrah MERCAN 144
17
4. PIC ve ASSEMBLY DĠLĠ
Öğr. Gör. Emrah MERCAN 145
16F84A
16F84
4. PIC ve ASSEMBLY DĠLĠ
Öğr. Gör. Emrah MERCAN 146
PIC 16F84‟de
komutun işlenmesi
İşlem İşlem
fetch fetch
CLOCK
İşlem
Execution clock
2 1 3 4
Örneğin
ise
Clock = 4 Mhz
Ex. Clock = 4 Mhz/4
= 1 Mhz‟dir
fetch
Öğr. Gör. Emrah MERCAN 147
INDIRECT ADDR
OPTION
PCL
STATUS
FSR
TRISA
TRISB
EECON1
EECON2
PCLATH
INTCON
80
81
82
83
84
85
86
87
88
89
8A
8B
RAM
INDIRECT ADDR
TMR0
PCL
STATUS
FSR
PORTA
PORTB
EEDATA
EEADR
PCLATH
INTCON
00
01
02
03
04
05
06
07
08
09
0A
0B
0C
4F
workmemory
36byte
RESET
INTERRU PT POINT
PROGRAM AREA
000
004
005
3FF
EEPROM(1Kbyte)
PORTA
5bit
PORTB8bit
EEPROM
DATAMEMORY
64byte
Öğr. Gör. Emrah MERCAN 148
Fetch/Decode
ALU
Working resistorW
stack
8 lebel
clock
reset
watch dog timer
p r o g r a m c o u n t e r
Port a‟daki
Bilgiyi al,
Portb‟ye
Aktar.
00010111
1
000101011110
010101011000
005
006
000101011110
010101011000
05
00010111
007
00010111
0 00010111
010111111000
4. PIC ve ASSEMBLY DĠLĠ
PIC Assembly programlamada
Port ayarlamaları,
Giriş- Çıkış işlemleri,
Çevresel birimler ile ilgili ayarlamalar (TMR-EEPROM-
INTR v.b.),
Değişken tanımlamaları
İş ve Aritmetik İşlem sonucundaki değişikliklerin
okunması
File Register (Dosya kaydedicisi) üzerinden yapılır.
Dolayısıyla bu alanın iyi tanınması gerekir.
Öğr. Gör. Emrah MERCAN 149
4. PIC ve ASSEMBLY DĠLĠ File Register : PIC 16F84 de fiziksel
olarak kullanılabilir olan 00h-4Fh
arasında 80 byte boyutunda kaydedici
alanıdır.
1 File Register 8 bitlik bilgiyi saklayabilir.
00h-0Ch arasını 12 Byte Special Function
Registers (SFR) PIC tarafından çevresel
birim kontrolü için kullanır.
Kullanıcılar için General Purpose Register
(GPR ) 0Ch-4Fh arası 68 Byte (Ram)
ayrılmıştır.
Örneğin:
SAYICI EQU h‟0C‟
Tanımlanmasında SAYICI 0C (13)
adresinde tanımlı bir GPR‟dir Öğr. Gör. Emrah MERCAN 150
SAYICI
SAYICI
4. PIC ve ASSEMBLY DĠLĠ
PIC Assembly programlamada kullandığımız en önemli
kaydediciler
W register (Akümülatör Kaydedicisi)
STATUS register (Durum Kaydedicisi) (SFR)
Öğr. Gör. Emrah MERCAN 151
PORTA PORTB
W
B'01001111' B'01001111'
B'01001111'
Öğr. Gör. Emrah MERCAN 152
4. PIC ve ASSEMBLY DĠLĠ
W register : Akümülatör olarak adlandırılır.
İşlemler esnasında, geçici bellek alanı olarak kullanılır.
Bilgiler bir bellek alanından diğerine doğrudan
gönderilemediğinden W Register üzerinden gönderilir
Örneğin:
PORT A‟ daki sayı PORT B‟ ye aktarılırken aşağıdaki
şekilde işlem yapılır.
Öğr. Gör. Emrah MERCAN 153
4. PIC ve ASSEMBLY DĠLĠ
CPU da işlemleri ALU yapmaktadır W register ALU ya en
yakın kaydedicidir.
Bunu Fabrika örneğimizi hatırlayarak anlayabiliriz.
Fabrikada üretim yapan makinenin hemen yanında bir
kutu vardı işlenmiş ürünler hemen depoya gönderilmez
burada birikirdi.
ALU da işleyeceği bilgileri direk depodan değil W register
üzerinden alır.
2 adet data ile işlem yapılacağında biri ALU da diğeri W
register da olur.
18
Öğr. Gör. Emrah MERCAN 154
4. PIC ve ASSEMBLY DĠLĠ
STATUS Register:
Diğer önemli register ise Status Register (Durum
kaydedicisidir).
8 bitlik durum yazmacıdır. Çalışma sırasında yapılan işlemlerle
ilgili bazı bilgileri takip etmek mümkündür.
R (Okunabilir bit) / W (Yazılabilir bit) – n (Reset değeri)
PIC‟ e enerji verildiği andaki değeri (0 0 0 1 1 x x x)
STATUS (8 BĠT)
Öğr. Gör. Emrah MERCAN 155
4. PIC ve ASSEMBLY DĠLĠ
bit7: IRP: Bank seçme bit‟i ( Register Bank Select bit )
IRP bit‟i PIC 16F84A‟larda kullanılmaz. IRP sıfır olarak
kalmalıdır.
bit 6-5: RP1:RP0: Bank seçme bit‟i ( Register Bank Select bit )
00 = Bank 0(00h-7Fh)
01 = Bank 1(80h-FFh)
Her bir bank 128 byte‟dır. PIC16F84A „da sadece RP0
kullanılır. RP1 sıfır olmalıdır.
Öğr. Gör. Emrah MERCAN 156
4. PIC ve ASSEMBLY DĠLĠ
bit 4: TO: Zaman aşım bit‟i ( Time-out bit )
1= PIC‟ e enerji verildiğinde ve CLRWDT ve SLEEP komutu
çalışınca
0 = WDT zamanlayıcısında zaman dolduğunda
bit 3: PD: Enerji kesilme bit‟i ( Power-down bit )
1 = PIC‟e enerji verildiğinde ve CLRWDT komutu çalışınca
0 = SLEEP modu çalışınca
bit 2: Z: Zero bit ( Sıfır bit‟i )
1 = Aritmetik işlem veya mantıksal işlem sonucu 0 olduğunda
0 = Aritmetik işlem veya mantıksal işlem sonucu 0
olmadığında.
Öğr. Gör. Emrah MERCAN 157
4. PIC ve ASSEMBLY DĠLĠ
bit 1: DC: Taşma ve Ödünç bit‟i ( Digit carry/borrow bit )
( ADDWF ve ADDLW komutları için )
1 = Alt dört bitin 4. bitinde taşma meydana geldiğinde
0 = Alt dört bitin 4. bitinde taşma meydana gelmediğinde
bit 0: C: Taşma ve Ödünç bit‟i ( Carry/borrow bit )
( ADDWF ve ADDLW komutları için )
1 = En soldaki 7.bitte taşma olduğunda
0 = En soldaki 7.bitte taşma olmadığında
Not: RLF ve RRF komutları çalıştığında en sol bit veya en sağ
bitin değeri carry bitine yüklenir.
Öğr. Gör. Emrah MERCAN 158
4. PIC ve ASSEMBLY DĠLĠ
I/O PORT
Giriş ve çıkış elemanlarının PIC16F84‟e bağlandığı yere
I/O port denir.
PORT A; 5 ve PORT B ise 8 bit kapasitelidir.
Burada üzerinde durulması gereken nokta bu 13 pinden
hangilerinin giriş hangilerinin çıkış olduğu.
Bu pinlerin hepsi hem giriş hem çıkış olabiliyor.
Bir portun giriş mi çıkış mı olacağını nerden ayarlıyoruz.
TRIS Register ları kullanarak I/O ayarı yapabiliriz.
File Registerda Bank1 de 85h adresindeki TRIS A; PORT
A‟ya karşılıktır.86h adresindeki TRIS B ise PORT B‟ye
karşılıktır. TRIS yazmacına 1 yazılması giriş 0 ise çıkıştır.
Öğr. Gör. Emrah MERCAN 159
4. PIC ve ASSEMBLY DĠLĠ
I/O PORT Ayarlaması
Bir Portun TRIS yazmacının X. bitine 1 yazılması O
portun X. Bitini giriş yapar, 0 yazılması ise çıkış yapar.
ÖRNEĞĠN: TRISB, PORTB‟yi temsil eder. PORTB‟nin ilk
4biti giriş son 4 biti çıkış olacak ise TRISB‟ye 00001111
bilgisi yazılır.
0 0 0 0 1 1 1 1 TRIS B
Ç Ç Ç Ç G G G G PORT B
B0 B1 B2 B3 B4 B5 B6 B7
Öğr. Gör. Emrah MERCAN 160
4. PIC ve ASSEMBLY DĠLĠ
I/O PORT Ayarlaması
PORTB nin B0-B5 pinlerine led, B6,B7 pinlerine ise buton
bağlanacak ise,
TRISB yazmacı aşağıdaki gibi olmalıdır.
TRISB=11000000
1 1 0 0 0 0 0 0 TRIS B
G G Ç Ç Ç Ç Ç Ç PORT B
B0 B1 B2 B3 B4 B5 B6 B7
Öğr. Gör. Emrah MERCAN 161
4. PIC ve ASSEMBLY DĠLĠ
I/O PORT BAĞLANTILARI
Çıkış Bağlantısı: 2 tip Çıkış bağlantısı yapılır.
Pozitif (1) mantığına göre (Source akımı)
Negatif (0) mantığına göre (Sink akımı)
Pozitif (1) mantığında (Source akımı) programdan o porta
1 gönderdiğinizde o porta bağlı elemanın çalışması aktif
olması istenir.
Örneğin PortB‟nin 2. bitine bağlı led‟e 1 gönderdiğimizde
yanmasını istiyorsak Source akımı bağlantısı yapmalıyız
PortB‟nin 2. bitine bağlı led‟e 0 gönderdiğimizde
yanmasını istiyorsak Sink akımı bağlantısı yapmalıyız
Öğr. Gör. Emrah MERCAN 162
4. PIC ve ASSEMBLY DĠLĠ
I/O PORT BAĞLANTILARI
«1» ON
«1» OFF
19
Öğr. Gör. Emrah MERCAN 163
4. PIC ve ASSEMBLY DĠLĠ
I/O PORT BAĞLANTILARI
«0» OFF
«0» ON
Öğr. Gör. Emrah MERCAN 164
4. PIC ve ASSEMBLY DĠLĠ
I/O PORT BAĞLANTILARI
Giriş Bağlantısı: Giriş (INPUT) bağlantısı yapılırken
çıkışta kullanılan 2 adet transistör kapatılır ve port girişe
yönlendirilir.
Giriş sinyali (buffer) tampon üzerinden PIC‟e doğru
akar.
Öğr. Gör. Emrah MERCAN 165
4. PIC ve ASSEMBLY DĠLĠ
I/O PORT BAĞLANTILARI
INPUT
Öğr. Gör. Emrah MERCAN 166
4. PIC ve ASSEMBLY DĠLĠ
I/O PORT BAĞLANTILARI
Hemen bir assembly program örneği ile pekiştirelim.
PortB 3. bitine bağlı ledi yakan program
Öğr. Gör. Emrah MERCAN 167
4. PIC ve ASSEMBLY DĠLĠ
LIST P=16F84A
CLRF H'06„ PORTB
BSF H'03„,5 STATUS,5
CLRF H„86„ TRISB
BCF H'03„,5 STATUS,5
BSF H'06„,3 PORTB,3
END
Öğr. Gör. Emrah MERCAN 168
4. PIC ve ASSEMBLY DĠLĠ
LIST P=16F84A ; Kullanılacak PIC Modeli
INCLUDE "P16F84A.INC" ; Adres Tanımlama Dosyası
; PIC Assembly de açıklamalar noktalı virgül ile başlar
CLRF PORTB ; Önce PORTB nin Tamamını 0 yap
BSF STATUS,5 ; TRIS‟e Ulaşabilmek için Bank 1 e geç
CLRF TRISB ; TRIS‟in İçeriğini Sıfırla PORTB Çıkış
BCF STATUS,5 ; Tekrar Bank 0 a geç
BSF PORTB,3 ; PORTB nin 3. bitini 1 yap
END ; Programı Bitir
Öğr. Gör. Emrah MERCAN 169
4. PIC ve ASSEMBLY DĠLĠ
PIC‟in çalışabilmesi için gerekli olan mecburi bağlantılar
vardır. Bunlar;
PIC enerji Bağlantısı
Osilatör Bağlantısı
Reset Bağlantısı
Bu 3‟ü olmadan PIC de herhangi bir program çalışmaz
Çıkış Bağlantısı olmadan yapılan işlemlerle ilgili herhangi
bir bilgimiz olamaz. PIC kendi çalar kendi oynar.
Yani PIC tepki veremez.
Fakat bir programda giriş şart değildir. Gerekli olduğunda
kullanılır.
Bu kurallar tüm mikrodenetleyiciler için geçerlidir.
Öğr. Gör. Emrah MERCAN 170
4. PIC ve ASSEMBLY DĠLĠ
PIC ENERJĠ BAĞLANTISI
PIC16F84 5V DC besleme gerilimi altında calışır.
14 numaralı pin (VDD) +5V (Pozitif)
5 numaralı pin (VSS) ise şasedir (Negatif)
Öğr. Gör. Emrah MERCAN 171
4. PIC ve ASSEMBLY DĠLĠ
PIC ENERJĠ BAĞLANTISI
PIC16F84 5V DC besleme gerilimi genelde 7805
entegresi yardımı ile elde edilir.
9-12V 5V
20
Öğr. Gör. Emrah MERCAN 172
4. PIC ve ASSEMBLY DĠLĠ
PIC Osilatör Bağlantısı
PIC16F84‟te 15 ve 16 numaralı pinler osilator
pinleridir. Mikrokontrolcüye yüklenen programın
çalışma frekansı OSC1 girişine uygulanan kare dalga
clock palsi ile kontrol edilir.
Genelde 4MHz
Kristal Osilatör kullanılır.
C1-C2 ise 22pf ‟dır.
Kondansatörleri içinde
olan 3 bacaklı Kristallere
Resanatör denir.
RESANATÖR
1
2
3
Öğr. Gör. Emrah MERCAN 173
4. PIC ve ASSEMBLY DĠLĠ
PIC Reset Bağlantısı
PIC16F84‟un 4 numaralı pini (MCLR), programın
çalışmasını kesip başlangıca döndurmek amacıyla
kullanılan reset ucudur.
Resetleme işlemi MCLR‟nin şase potansiyeli (Lojik-0)
alması ile gercekleşir.
Eğer sistemde resete ihtiyaç yoksa 4 nolu bu pin, bir
direnç üzerinden direk 5V‟a bağlanır.
2
3
Öğr. Gör. Emrah MERCAN 174
4. PIC ve ASSEMBLY DĠLĠ
PIC Reset Bağlantısı
2
3
Öğr. Gör. Emrah MERCAN 175
4. PIC ve ASSEMBLY DĠLĠ
I/O PORT BAĞLANTILARI
5V
2V
3V
Öğr. Gör. Emrah MERCAN 176
4. PIC ve ASSEMBLY DĠLĠ
I/O PORT BAĞLANTILARI
Bir led rengine bağlı olarak değişmekle birlikte yaklaşık
10mA akım çeker.
Bir PIC den en fazla, Source akımı ile 5V 20 mA,
Sink akımı ile 5V 25mA akım çekebildiğimize göre
Motor, lamba, ısıtıcı vb. güçlü devre elemanlarını nasıl
kontrol edeceğiz.
Tabi ki anahtarlama elemanı olan transistör, triyak, tristör
ve röle gibi elemanlar kullanarak.
Öğr. Gör. Emrah MERCAN 177
4. PIC ve ASSEMBLY DĠLĠ
I/O PORT BAĞLANTILARI
Öğr. Gör. Emrah MERCAN 178
4. PIC ve ASSEMBLY DĠLĠ
I/O PORT BAĞLANTILARI
Öğr. Gör. Emrah MERCAN 179
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY Dilinde Program Yazımı ve Yüklemesi
Editör
• WordPad veya Metin Belgesi gibi editörlerde Assembly dilinde Program Yazılır
• .asm uzantısı ile kaydedilir.
MPASM
• .asm uzantılı dosya MPASM assembler programı ile makine diline çevrilir
• Çevrilme işleminden sonra dosya uzantısı .hex olur
ICProg
• PIC Programlama kartına takılır.
• Kart ile beraber gelen yazılıma .hex dosyası aktarılır
• .hex dosyası program (PicFlash, ICProg vb.) ile PIC e yüklenir
PIC • Yüklenen Programın çalışması kontrol edilir
Öğr. Gör. Emrah MERCAN 180
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY Dilinde Program Yazımı ve Yüklemesi
21
Öğr. Gör. Emrah MERCAN 181
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY Dilinde Program Yazımı ve Yüklemesi
Öğr. Gör. Emrah MERCAN 182
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY Dilinde Program Yazımı ve Yüklemesi
Öğr. Gör. Emrah MERCAN 183
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY Dilinde Program Yazımı ve Yüklemesi
Öğr. Gör. Emrah MERCAN 184
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY Dilinde Program Yazımı ve Yüklemesi
Öğr. Gör. Emrah MERCAN 185
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY Dilinde Program Yazımı ve Yüklemesi
MicroChip firmasının ürettiği MPASM programı ve kod
yazım editörünü bir arada bulunduran ve daha detaylı
olan derleyici ortamı ise MPLAB programıdır.
Biz kod yazarken metin editörünü ve MPASM programı
kullanacağız.
Öğr. Gör. Emrah MERCAN 186
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY Dilinde Program Yazımı ve Yüklemesi
Bir PIC assembly programı 3 sütundan oluşur.
1) Etiket
2) Kod
3) Adres veya sayı
Blok olarak ise 4 bloktan oluşur
1) Başlık
2) Adres ve Değişken Atama Bloğu
3) Program
3) Varsa alt Program
4) Sonlandırma
Öğr. Gör. Emrah MERCAN 187
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY Dilinde Program Yazımı ve Yüklemesi
Öğr. Gör. Emrah MERCAN 188
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY Dilinde Program Yazımı ve Yüklemesi
Etiketler, programın 1. sütununa yazılan sembolik
isimlerdir ve PIC bellek adreslerini atamada kullanılırlar.
Etiketlerde en fazla 31 karakter kullanılabilir.
Bir etiket sembolü harf veya alt cizgi ile başlar.
Etiketde alt çizgi, soru işareti ve sembol kullanılabilir.
PIC Assembly‟de komutlar büyük harf, küçük harf veya
karışık olarak yazılabilir.
Ancak kullanılan etiketler büyük ve küçük harfe dikkat
edilerek her yerde aynı şekilde yazılmalıdır.
Öğr. Gör. Emrah MERCAN 189
4. PIC ve ASSEMBLY DĠLĠ
ÖN AYAR
(SETUP)
Sonsuz Döngü
(LOOP)
Alt Program
22
Öğr. Gör. Emrah MERCAN 190
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY Dilinde Program Yazımı ve Yüklemesi
Assembly dilinde esas olan sayı sistemi 16 „lık sistemdir.
16 „lık sistem Heksadesimal (kısaca Hex) olarak adlandırılır
Hex sayılar 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E ve F olmak
üzere 16 tabanlı sayılardır.
Aşağıda heksadesimal 6 sayısının assembly dilinde beş
değişik şekilde gösterimi verilmiştir.
PORTB EQU H’06’
PORTB EQU 0x06
PORTB EQU 06
PORTB EQU 6
PORTB EQU 06H
Öğr. Gör. Emrah MERCAN 191
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY Dilinde Program Yazımı ve Yüklemesi
Binary (ikilik) sayı gösterimi:
Binary sayılar 0 ve 1 olmak uzere 2 tabanlı sayılardır.
MOVLW B’00000110‟
Desimal sayı gösterimi:
Desimal sayılar 0,1,2,3,4,5,6,7,8 ve 9 rakamlarından oluşur.
MOVLW D’06’
Öğr. Gör. Emrah MERCAN 192
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY KOMUTLARI
Öğr. Gör. Emrah MERCAN 193
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY KOMUTLARI
Öğr. Gör. Emrah MERCAN 194
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY KOMUTLARI
Öğr. Gör. Emrah MERCAN 195
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY KOMUTLARI
Öğr. Gör. Emrah MERCAN 196
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY Kontrol Direktifleri
DEFINE : Bir komutun yada adresin program
içerisinde yerine geçebilecek takma bir isimle ifade
edilmesini sağlar.
Örnek : #DEFINE BUTON PORTA,1
IF, ELSE, ENDIF : Bu komutlar koşullu program
dallanması işlemini yapar ve sonlandırırlar.
Örnek : IF DONGU< 3
GOTO BASLA
ELSE
GOTO DONGU
ENDIF Öğr. Gör. Emrah MERCAN 197
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY Kontrol Direktifleri
EQU : Equal (eşittir) „ın kısaltılmışıdır. PIC bellek
adreslerine etiket ataması yapmak için kullanılan
komuttur.
Örnek : Aşağıdaki komut satırı STATUS registerinin
PIC belleğinde H‟03‟ adresinde olduğunu tanımlar.
STATUS EQU H‟03‟
Öğr. Gör. Emrah MERCAN 198
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY Kontrol Direktifleri
CONFIG : PIC kontrolunde osilator tipi, “Watchdog
Timer”, “Power on Reset” gibi koşulların
belirlenmesini sağlayan komuttur.
CONFIG komutunun önünde iki alt cizgi bulunur,
diğer değişkenlerin ise önlerinde birer alt çizgi ve
aralarında birer boşluk ile & sembolü bulunur.
Örnek: __CONFIG _CP_OFF &_ WDT_ OFF &
_PWRTE _ON & XT_OSC
23
Öğr. Gör. Emrah MERCAN 199
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY Kontrol Direktifleri
“Code Protect” (CP) komutu PIC entegresinin
programlanmasının ardından içerisindeki yazılımın
okunarak kopyalanmasını önlemek için kullanılır.
“Watchdog Timer” programı belirli zaman
aralıklarında başa dondurur.
“Power on Reset”, PIC‟e ilk enerji verildiğinde PIC‟i
resetler.
Öğr. Gör. Emrah MERCAN 200
4. PIC ve ASSEMBLY DĠLĠ
PIC ASSEMBLY Kontrol Direktifleri
_CP ON Kod koruma acık.
CP OFF Kod koruma kapalı.
WDTON “Watchdog Timer” acık.
WDTOFF “Watchdog Timer” kapalı.
PWRTEON “Power on Reset” acık.
PWRTEOFF “Power on Reset” kapalı.
XTOSC Kristal osilator.