Şimdi Ara

MİKRODENETLEYİCİ VE İŞLEMCİLERİN ÇALIŞMA PRENSİPLERİ AYNI MIDIR

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
5
Cevap
0
Favori
67
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Ne gibi farklılıkları vardır?


    < Bu ileti mobil sürüm kullanılarak atıldı >



  • Mikrodenetleyici içerisinde çevre birimleri de yer alır. Mesela Analog-Dijital çeviriciler, çevre birimleri ile haberleşmeyi sağlayan MSSP ve EUSART modülleri, Timer modülleri, depolama, RAM vs. vs. Mikrodenetleyici içerisinde de mikroişlemci yer alır.

    Mesela bir mikrodenetleyici içerisindeki MSSP modülü ile doğrudan I2C ekrana bağlanıp veri gönderebilir. SPI flash hafızaya bağlanıp içerisinden veri okuyabilir, ya da içerisine veri yazabilir. Veya SHT11 gibi bir sensörden veri toplayabilir. Ya da portları üzerinden bir lambayı yakıp söndürebilir. Mesela ADC'si ile ortamdaki ışık yoğunluğunu algılayıp bunu ekrana yazdırabilir, ya da PWM modülünü kullanarak aldığı ışık verisine göre lambayı dim edebilir.
    Ama bunları mikroişlemci kendisi yapamaz. Çünkü bunları yapmak için gereken dahili modülleri yoktur.



    < Bu mesaj bu kişi tarafından değiştirildi ipli jeton -- 3 Nisan 2024; 14:2:23 >
    < Bu ileti mini sürüm kullanılarak atıldı >
  • Hocam peki CPU programlaması nasıl yapılmaktadır
    Mcu programlamak ile aynı kavram gibi mi yoksa daha mı farklı

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • Benzerlikleri var. Ama ikisi farklı alanlardır. MCU içerisinde sigorta da denilen yapılandırma Byte'ları vardır.
    MCU'nun saat hızının ne olacak, kristal mi dahili osilatör mü kullanılacak, SPI ya da I2C mi kullanılacak, kullanılacaksa ne hızda vs. olacak, vs. vs. için yapılandırma byte'ları ayarlanır. Çok eski derleyicilerde bu iş tek tek elle yapılıyordu. Güncel derleyicilerde programı yazmadan önce grafik arayüz üzerinde bunları belirliyorsun. Otomatik olarak koda ekleniyor.

    MCU'nun görevi donanımları kontrol etmektir. MicroController Unit ifadesi buradan gelir.
    CPU'nun görevi verilen işlemleri yapıp çıktı üretmektir. Mesela Intel'in 8086 serisi CPU iken, 8051 serisi MCU'dur.

    Bilgisayarlarımızın içindeki CPU bize hesap makinesi programında 2x2 yaptığımızda CPU doğrudan bunu ekrana yansıtmaz. Hafızaya alır. printf fonksiyonu ile hafızanın bu adresindeki veri grafik sürücüsüne gönderilir. Grafik sürücüsü de 4 rakamını ekranın istenen pozisyonuna yerleştirir. Biz de sonucu bu sayede ekranda görürüz.
    MCU ise mesela analog girişten 4V algıladığında bir motoru çalıştırabilir ya da durdururabilir. MCU içerisinde de bir CPU vardır. Ama MCU'nun işi daha çok hesaplama yapıp sonucunu döndürmek değil, kullanıcının yazdığı programa göre kendisine bağlı şeyleri kontrol etmektir.

    CPU da kendisine bağlanacak ek donanımlarla bu işi yapabilir. Ama mesela MCU'da
    Output_b(0x0F); komutu ile yapabileceğimiz çıkış portunun ilk 4 bitini yüksek yap şeklindeki bir komutu CPU ile bu kadar basit yapamayız. CPU üzerinde MCU'larda olduğu gibi A, B, C diye giden, kontrol edebileceğimiz port yoktur. Bizim harici bus üzerinden bir bu işi yapacak kontrolcü bağlamamız ve o kontrolcüye ilk dört bitini yüksek yap dememiz gerekir. Burada da bu harici kontrolcünün driver'ları falan devreye girer. MCU'da kısacık bir kodla yapabileceğimiz bu basit bir şey için bile satırlarca kod yazmamız gerekebilir.

    MCU'ların avantajı burada devreye giriyor. Hem küçüktür, az yer kaplar. Aynı işi yapacak CPU'lu bir sisteme göre kodlaması çalıştırması çok daha basittir. En önemlisi ucuzdur.

    Her ikisi de C gibi bir dille yazılabilir. Dil olarak çok fazla farkı yoktur. Ama ikisi arasındaki farklardan ötürü birinde kullanılan diğerinde kullanılmayan komutlar bulunur. (Mesela MCU'larda port giriş çıkış komutları)

    < Bu ileti mini sürüm kullanılarak atıldı >




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.