Mikrodenetleyici, günlük olarak kullandığımız elektronik aletlerin çoğunu kontrol eden gömülü bir bilgisayar çipidir. Gömülü bir sistemdeki belirli bir işlemi yönetmek için tasarlanmış kompakt bir entegre devredir.
Mikrodenetleyici, elektronik cihazları kontrol etmek için tasarlanmış bir çiptir. Belirli bir görevi yerine getirmek ve belirli bir uygulamayı çalıştırmak için ayrılmış tek bir entegre devreye yüklenir.
Mikrodenetleyici, tek bir metal oksit yarı iletken (MOS) entegre devre (IC) yongası üzerinde bulunan küçük bir bilgisayardır. Mikrodenetleyici içinde CPU, bellek ve programlanabilir giriş/çıkış çevre birimleri yer alır. Mikrodenetleyiciler, gömülü uygulamalar için tasarlanmıştır.
Gömülü uygulamalar için özel olarak tasarlanmış devrelerdir. Otomatik olarak kontrol edilen elektronik cihazlarda yaygın olarak kullanılmaktadır. Bellek, işlemci ve programlanabilir giriş/çıkış birimleri içerir.
Mikrodenetleyiciler
Bir mikrodenetleyici, tek bir çip üzerinde bir işlemci, bellek ve Giriş/Çıkış (G/Ç) çevre birimleri içerir. Bileşenleri şunları içerecek şekilde genişletilebilir: Dijital G/Ç, Analog G/Ç, Zamanlayıcılar, İletişim arayüzleri...
Mikrodenetleyici, işlemci, bellek ve çevre birimlerinden oluşan ve gömülü bir sistem olarak kullanılabilen bağımsız bir sistemdir.
Mikrodenetleyiciler genellikle, minimum ölçüde bellek ve program büyüklüklerine ihtiyaç duyarlar. Anahtar, röle, LED, kristal ekranlar, radyo frekans cihazları ve sıcaklık, nem, ışık sensörleri gibi giriş ve çıkış cihazları kullanırlar. Gömülü sistemlerde genellikle klavye, ekran, disk vb. birimler kullanılmaz.
Mikrodenetleyici, genellikle aşağıdaki özelliklere sahip tek bir tümleşik devredir:
Mikrodenetleyiciler bir çok sayıda genel amaçlı giriş/çıkış pini (GPIO) içerir. GPIO pinleri, bir giriş veya çıkış durumuna göre yazılımlarla yapılandırılabilir. GPIO pinleri bir giriş durumuna göre yapılandırıldığında, genellikle sensörleri veya harici sinyalleri okumak için kullanılırlar. Çıkış durumuna göre yapılandırılan GPIO pinleri, LED'ler veya motorlar gibi harici cihazları, harici güç elektroniği yoluyla, genellikle dolaylı olarak çalıştırabilir.
Birçok gömülü sistemin analog sinyaller üreten sensörleri okuması gerekir. İşlemciler 0 ve 1'lerden oluşan dijital verilere işlem yapabildiğinden, okunan analog sinyallere işlem yapabilmek için Analog-Dijital dönüştürücüye (ADC) ihtiyaç duyulur. Analog-Dijital dönüştürücü, gelen analog verileri işlemcinin tanıyabileceği dijital bir biçime dönüştürürü. Bazı mikrodenetleyicilerde daha az yaygın olarak, işlemcinin analog sinyaller veya voltaj seviyeleri vermesini sağlayan Dijital-Analoğ dönüştürücü (DAC) kullanılır.
Mikrodenetleyicilerde, çeşitli zamanlayıcılar içerir. En yaygın zamanlayıcı türlerinden biri programlanabilir aralık zamanlayıcıdır (PIT). Bir PIT, bir değerden sıfıra veya sayım yazmacının kapasitesine kadar sayabilir. Sıfıra ulaştığında, işlemciye saymayı bitirdiğini belirten bir kesme gönderir. Bu özellik, bir ortamda bulunan klima veya ısıtıcıyı açmaya gerek olup olmadığını görmek için çevre sıcaklığını periyodik olarak kontrol eden termostat gibi cihazlarda kullanılır.
Kişisel bilgisayar bir programı çalıştırdığında, program önce diskten tahsis edilmiş bellek bölgesine yüklenir.
Mikrodenetleyici içinde okuma için herhangi bir disk bulunmaz.
Mikrodenetleyiciler, hızlı ve etkin, düşük maliyetli ve düşük güç tüketimli elemanlardır.
Mikrodenetleyiciler, otomobil motor kontrol sistemleri, tıbbi cihazlar, uzaktan kumandalar, ofis makineleri, cihazlar, elektrikli aletler, oyuncaklar ve diğer gömülü sistemler gibi otomatik kontrollü cihazlarda kullanılır. Cihazları kontrol etmek için, ayrı bir mikroişlemci, bellek ve giriş/çıkış aygıtları yerine, mikrodenetleyicileri kullanarak, boyutu ve maliyeti düşürebiliriz.
Mikrodenetleyici türleri aşağıda gösterilmektedir:
Mikrodenetleyiciler, Assembly, C, Python ve Javascript programlama dilleri ile programlanabilir.
Mikroişlemci | Mikrodenetleyici |
---|---|
Kişisel bilgisayarlarda kullanılır. | Gömülü sistemlerde kullanılır. |
Sadece bir CPU(Merkezi İşlem Birimi)'dan oluşur. | Tamamı tek çipe entegre edilmiş bir CPU, Bellek ve G/Ç portlarından oluşur. |
Von Neumann modeline göre imal edilir. | Harvard mimarisine göre imal edilir. |
Karmaşık ve pahalıdır. İşlenecek çok sayıda talimat vardır. | Daha ucuz ve basittir. Daha az talimat içerir. |
Aynı anda birden fazla görevi gerçekleştirebilir. | Aynı anda sadece tek bir görevi gerçekleştirebilir. |
RAM, ROM, G/Ç portları ve zamanlayıcılar haricen eklenebilir ve sayı olarak değişebilir. | RAM, ROM, G/Ç portları ve zamanlayıcılar harici olarak eklenemez. Bu bileşenler bir çip üzerinde birlikte yer alır ve sayısı sabittir. |
RAM, ROM ve diğer çevre birimlerine arabirim oluşturmak için harici bir veri yolu kullanır. | RAM, ROM ve diğer çevre birimlerine arabirim oluşturmak için dahili bir kontrol veriyolu kullanır. |
Gereken bellek miktarına veya G/Ç port sayısına tasarımcılar karar verebilir. | Bellek miktarı veya G/Ç port sayısı için kullanılan değerler, bir mikrodenetleyiciyi için sınırlı ancak belirli bir görev için uygun bir sistem oluşturur. |
Program ve veri depolama sağlamak için harici bellek kullandığından, bellek kısıtlaması yoktur. | Programı depolamak ve yürütmek için çip üzerinde gömülü Flash bellek kullanıldığıdan, daha kısa bir başlatma süresi ve kodu hızlı bir şekilde yürütme olanağı sağlar. Bellek alanı sınırlıdır. |
Harici bellek ve G/Ç port için harici destek, mikroişlemci tabanlı bir sistemi daha ağır ve daha maliyetli hale getirir. | Mikrodenetleyiciler, mikroişlemcilerden daha hafif ve ucuzdur. |
Harici cihazlar daha fazla alan gerektirir ve güç tüketimleri daha yüksektir. | Mikrodenetleyici tabanlı bir sistem daha az güç tüketir ve daha az yer kaplar. |