PIC mi AVR mi ARM mı MIPS mi? Amaçlarla araçları karıştırmak üzerine…

Ülke olarak kamplaşmaya çok meraklı olduğumuz çok bilinen bir gerçek. Belki de bunu sadece kendimizi atfetmek doğru değil. Dünyada da benzer durumları görebiliyoruz. Sosyal, politik vs… konularda kamplaşmalar görmek beni çok şaşırtmasa da teknik konularda teknik insanların çeşitli araçlar, teknolojiler üzerine kamplaşmaları ve hatta kavgaya tutuşmaları bana oldum olası ilginç gelmiştir…

Teknik konulardaki kamplaşmaların en büyüklerinden birisi işlemci mimarileri etrafında döner, özellikle çok popüler olan mikrodenetleyicilerden PIC ve AVR’ler arasında yıllardır süren bir kavga vardır. Son dönemde 32 bit mikroişlemcilerin de popüler olması ile birlikte bu kavga’ya ARM’lar da katıldı. Çoğu zaman bu kavgalarda armutlarla elmalar karıştırılıyor.

Önce bütün bu, çoğunlukla 3 harfli, isimlerin ne olduğunu biraz netleştirelim:

PIC serisi Microchip firmasının ürettiği 8/16/32 bitlik mikrodenetleyici ailesi ve aynı zamanda mimarisinin adıdır. Piyasada en çok bilinenleri 8 bitler olmakla beraber (PIC12, PIC16, PIC18 serileri) son dönemde firma PIC32 adıyla 32 bitlik bir seri de çıkarmıştır.

AVR serisi Atmel firmasının geliştirdiği 8/32 bitlik mikrodenetleyici ailesidir. Yine Microchip firması gibi bu da Atmel’in sadece kendi ürünlerinde kullanılan bir mimaridir.

ARM aynı ismi taşıyan ARM Holdings firmasının geliştirdiği 32 bit işlemci mimari ailesidir. Bu firma kendisi üretim yapmıyor. Tasarladığı işlemci mimarilerin başka firmalara lisanslıyor. ARM mimarisinde çekirdeğe sahip birçok mikroişlemci ve mikrodenetleyici bulunuyor.

MIPS ARM’a benzer şekilde aynı ismi taşıyan firmanın geliştirdiği 32 bit işlemci mimarisidir. Bu firma da tasarımlarını başka firmalara lisanslarayak satıyor. PIC32 serisi MIPS mimarisini temel almıştır.

Çoğu zaman teknik forumlarda PIC mi AVR Mi ya da PIC mi ARM mı tarzından tartışmaları görüyoruz. Yukarıdaki tanımlardan gördüğümüz gibi burada elmalar ve armutlar karıştırılıyor. ARM bir mimariyi PIC tek bir firmanın ürettiği başka bir mikrodenetleyici ailesini içeriyor. Bu işlere yeni başlayanlar da fena halde kafa karışıklığına düşüyor.

[ad#ad-1]

Öncelikle bu işleri öğrenmeye yeni başlayan, özellikle mühendislik öğrencisi arkadaşlara tavsiyem en az bir mimariyi temel olarak iyi öğrenmeleri. Genel olarak baktığımızda bütün mikroişlemcilerin çalışma biçimleri benzer şekildedir ve temel bilgiler aynıdır.  Çeşitli çevrebirimlerinin de (USART, ADC, SPI, I2C vs…) çalışmaları hemen her mikrodenetleyicide benzer şekildedir. Mikroişlemcilerin temel yapısı yanında başlangıçta bunların kendi assembly dili veya C programlama dili ile programlanması da temelde öğrenilmesi gereken şeyler… Bundan sonra hangi ürünleri, hangi mimariyi kullanacağınız bulunduğunuz / gerçekleştirmek istediğiniz projeye bağlı olarak değişebilir.

Hiç bir teknolojinin fanatiği olmaya gerek yok! Bütün adı geçen bu ürünlerin hepsi birer araçtan ibaret… En kısa yoldan hangi ürünlere erişme, öğrenme olanağınız varsa onunla başlayın. Daha sonra zaten başka ürünlere geçmeniz de kolay olacaktır. Artık birçok araca erişim çok daha kolaylaştır, birçok ürüne internetten kolaylıkla ulaşabiliyoruz. Seçim yapmak için uzun zaman kaybetmek yerine hızlıca öğrenme sürecine girmeniz daha faydalı olacaktır…

[ad#ad-1]