Mikrodenetleyici: Tek
bir silikon yonga üstünde birleştirilmiş bir mikroişlemci, veri ve program
belleği, sayısal (lojik) giriş ve çıkışlar (I/O), analog girişler ve diğer
çevre birimleri (zamanlayıcılar, sayıcılar, ADC, DAC vb.) barındıran
mikrobilgisayarlardır.
Mikrodenetleyicilerin
geliştirilmesinin temel nedeni mikroişlemcilerin dezavantajlarını ortadan
kaldırmaktır. Mikroişlemciler güçlü cihazlar olsa da, tam bir çalışma sistemini
tasarlamak için RAM, ROM, Giriş I/O bağlantı noktaları ve diğer dış bileşenleri
gerektirir. Mikroişlemcilerin maliyeti çok yüksek olduğu gibi ekonomik
olarak daha uygun olan mikrodenetleyiciler geliştirildi. İlk mikroişlemci
Texas Instruments tarafından 1971 yılında geliştirilmiştir.
Mikrodenetleyici Blok Diyagramı |
Mikrodenetleyiciler
temelde gömülü sistemlerde kullanılır. Mikrodenetleyici geliştirme süreci, mikroişlemci
ile benzerlik gösterir.
Mikrodenetleyiciler veriyolu
genişliği, bellek yapısı ve komut setine dayanarak sınıflandırılabilir. Veriyolu
genişliği veri yolu boyutunu belirtir. Yüksek veriyolu genişliği genellikle
daha iyi performans sağlar. Hafıza yapılarına göre gömülü hafıza ve dış bellek
olmak üzere göre iki gruba ayrılabilir. Gömülü hafızada gerekli veriler ve
program belleği IC içine gömülür. Harici bellek ise mikrodenetleyiciler içerine
gömülü bir program belleğe sahiptir. Komut setine göre sınıflandırma,
mikroişlemciyle benzerdir. Kullanılan mimariler CISC veya RISC bilgisayar
mimarileridir. Çoğunlukla mikrodenetleyiciler üzerinde 80 komut seti ile
CISC mimarisi kullanılır. Ayrıca Von Neumann ve Harvard bilgisayar
mimarisine göre de sınıflandırılabilir.
Mikrodenetleyici Simülayonu |
Mikroişlemci: Sayısal
bilgileri adres ve veri yolu ile alan, bu bilgileri bir hafıza biriminde saklı
program komutlarına uygun olarak işleyen ve elde edilen sonuçları sayısal
çıktıya dönüştüren mantık devreleridir.
Halk dilinde "çip" olarak bilinen mikroişlemci,
tek bir entegre devre (IC) genel amaçlı bir merkezi işlem birimi (CPU) ile tam
bir dijital bilgisayardır. Sanki sistem kontrolü yapan, I/O işlemlerini
depolayan ve sık sık aritmetik ve mantıksal işlemleri gerçekleştirip bilgisayar
programının komutlarını yürütmek için kullanılan küçük ama çok güçlü bir
elektronik beyindir. Bir mikroişlemci tanımındaki anahtar terim ‘genel
amaçlı’ olduğudur. Yani mikroişlemci yardımıyla birkaç ekstra bileşen ile basit
bir sistem ya da bir büyük ve karmaşık makineyi elde edebilirsiniz,
Mikroişlemci Simülasyonu |
Mikroişlemciler verileri ve talimatları
(programları) aynı hafızada saklanırdı. Sonrasında ise Von Neumann mimarisinin
kullandı. Bu mimari basit olsa da, arkaplan da pek çok karmaşıklığı
beraberinde getiriyordu. Dezavantajlarından biri tek bir veri yolu paylaşılmak
istenildiğinde veriye aynı anda erişilemiyordu. Bu da genellikle cihazın
genel performansını düşürür. Daha sonra Harvard mimarisi kullanıldı
böylece veri ve komutlar ikisi de aynı anda veriye erişilebilir durum geldi. İlk
ticari Mikroişlemci 4004 olarak adlandırılan 1971 yılı Kasım ayında Intel
tarafından piyasaya sürüldü.
Bir mikroişlemcinin beş önemli bileşeni vardır. Bunlar
Aritmetik ve Mantık Birimi (ALU), Kontrol Birimi, Registers, Instruction
Decoder ve Veriyolllarından oluşur.
Mikroişlemci Simülasyonu |
Mikrodenetleyici ve
Mikroişlemci ile Arasındaki Farklar
Mikroişlemci ve mikrodenetleyiciler
arasındaki en temel fark, mikrodenetleyiciler belirli bir işlevi
gerçekleştirmek üzere bir kere programlanıp, sürekli çalışması gereken durumlarda
kullanılır. Mikroişlemci ise geniş kapsamlı ve duyarlı işlevleri
gerçekleştirmek için seçilen bir sistemlerdir.
Diğer bir fark ise
mikrodenetleyicilerde bütün birimlerin (CPU, RAM, ROM, Portlar vb.) tek yonga
üzerinde bulunmasıdır.
8051 entegresi hem
mikroişlemci hem de mikrodenetleyicidir.
Mikrodenetleyici Paketleme
DIP (Dual Inline Package): Paralel sıralı pinlerden oluşan
dikdörtgen şeklinde tasarlanmış pakettir.
PLCC (Plastic Leaded Chip Carrier): J harfine benzeyen kurşundan oluşan
metal şerit etrafında ve paketin kenarının 0.05 pin aralıklarla (1.27 mm) altından
sarılır. PLCC paketleri kare veya dikdörtgen şeklinde olabilir.
QFP (Quad Flat Package):
Bir QFP veya Quad
Flat Paketi bir olan yüzeye monte entegre devre dört tarafı her birinden uzanan pinlerden
oluşur. 0.4-1.0 mm arasında değişen bir aralıklarla 32 ile 304 kadar pin
arasında değişen versiyonları yaygındır.
Paket Simülasyonları |
Mikrodenetleyici Programlama
Arduino IDE
|
C/C++
|
Assembler
|
|
Geliştirme Kolaylığı
|
Kolay
|
Orta
|
Çok Karmaşık
|
Kütüphaneler
|
Var
|
Var
|
Yok
|
Hız
|
Yavaş
|
Hızlı
|
Oldukça Hızlı
|
İşlemci Özelliklerine Erişebilme
|
Çok Sınırlı
|
Pek Çoğuna
|
Tümüne
|
Mikrodenetleyici Programlama Simülasyonu |
Mikrodenetleyici Seçme Kriterleri
1. Referans belgeleri (Datasheet)
var mı?
2. Basit bir geliştirme ortamı sağlıyor mu?
3. İşlemci frekansı 8 MHz’den daha yüksek mi ?
4. Dijital, Analog ve PWM pinlerinin sayısı
yeterli mi?
5. Çalışma gerilimi (3V-5V) yeterli mi?
6. Fiyatı 10$’dan az mı?
7. Gerekli iletişim protokolleri (UART ve SPI) var
mı?
Aşağıda Atmel firmasının web sitesinde Microcontrollers Selector sizin
projenize uygun olan mikrodenetleyici seçmenize imkan sağlıyor(yukarıdaki
kriterleri de göz önünde bulundurun).
Atmel Microcontroller Selector Kullanım Sayfası |
Bir sonraki yazımda görüşmek üzere…