23
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

KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 2: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 3: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 4: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 5: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 6: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 7: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 8: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 9: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 10: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 11: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 12: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 13: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 14: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 15: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 16: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 17: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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.

Page 18: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 19: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 20: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 21: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 22: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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

Page 23: KONU BAġLIKLARI MĠKROĠġLEMCĠLER · 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

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.