- Proje Gereksinimi ile Başlayın
- Öne Çıkan Parametrelere Bakın
- Çalışma Gerilimi
- Hedef Konektörler
- Gelişmiş Arayüzler
- Geliştirme Ortamı
- Fiyat ve Kullanılabilirlik
- Diğer özellikler
- Sonuç
Mikrodenetleyiciyi seçmek söz konusu olduğunda, piyasada aynı özelliklere sahip çeşitli mikro denetleyiciler bulunduğundan bu gerçekten kafa karıştırıcı bir görevdir. Bu nedenle, mikro denetleyici seçimi söz konusu olduğunda her parametre önemli hale gelir. Burada en sık kullanılan iki Mikroişlemci - PIC Mikrodenetleyici ve AVR Mikroişlemci'yi karşılaştırıyoruz. Burada , projeniz için mikrodenetleyici seçmenize yardımcı olacak çeşitli düzeylerde karşılaştırılırlar .
Proje Gereksinimi ile Başlayın
Herhangi bir mikrodenetleyiciyi seçmeye başlamadan önce başlatılacak projenizle ilgili tüm bilgileri toplayın. Bilginin mümkün olduğunca toplanması çok önemlidir çünkü bu, doğru mikro denetleyicinin seçilmesinde önemli bir rol oynayacaktır.
- Proje Büyüklüğü gibi proje bilgilerini toplayın
- Kullanılan Çevre Birimi ve Sensör Sayısı
- Güç Gereksinimi
- Proje Bütçesi
- Arayüz Gereksinimi (USB, SPI, I2C, UART vb. Gibi),
- Temel Donanım Blok Şeması Yapın)
- Kaç tane GPIO'ya ihtiyaç olduğunu listeleyin
- Analogdan Dijitale Girişler (ADC'ler)
- PWM'ler
- Gereken Doğru Mimariyi Seçin, yani (8 bit, 16 bit, 32 bit)
- Projenin Bellek Gereksinimini (RAM, Flash vb.) Tanıyın
Öne Çıkan Parametrelere Bakın
Tüm bilgiler toplandığında, mikrodenetleyiciyi seçmenin tam zamanıdır. Bu makalede, iki rakip mikrodenetleyici markası PIC ve AVR çeşitli parametreler üzerinde karşılaştırılacaktır. İkisini karşılaştırmak için proje ihtiyacına bağlı olarak, aşağıdaki parametrelere bakın:
- Frekans: Mikrodenetleyicinin çalışacağı hız
- I / O pin sayısı: Gerekli bağlantı noktaları ve pinler
- RAM: Çoğu MCU'da bildirilen (DATA) tüm değişkenler ve diziler
- Flash Bellek: Yazdığınız kod, derlendikten sonra buraya gelir
- Gelişmiş Arayüzler: USB, CAN ve Ethernet gibi gelişmiş arayüzler.
- Çalışma Voltajı: MCU'nun 5V, 3.3V veya Düşük voltaj gibi çalışma voltajı.
- Hedef Konektörler: Devre tasarımı ve boyutu kolaylığı için konektörler.
Parametrelerin çoğu hem PIC hem de AVR'de benzerdir, ancak karşılaştırıldığında kesinlikle farklı olan bazı parametreler vardır.
Çalışma Gerilimi
Pille çalışan daha fazla ürünle PIC ve AVR, düşük voltajlı işlemleri iyileştirmeyi başardı. AVR, düşük voltajlı işlemler için PIC16F ve PIC18F gibi eski PIC serilerinden daha iyi bilinir çünkü bu PIC serisi, çalışmak için en az 4.5V gerektiren yonga silme yöntemini kullanır ve 4.5V altı PIC programcıları satır silme algoritması kullanmak zorundadır. kilitli cihazı silemez. Ancak AVR'de durum böyle değildir.
AVR, son derece düşük güçte olan ATmega328P gibi en yeni P (pico-power) varyantlarını geliştirdi ve piyasaya sürdü. Ayrıca, mevcut ATtiny1634 geliştirilmiş ve güç tüketimini azaltmak için uyku modları ile birlikte geliyor, bu da pille çalışan cihazlarda çok kullanışlıdır.
Sonuç olarak, AVR daha önce düşük gerilime odaklanmıştı, ancak PIC şimdi düşük voltajlı çalışma için dönüştürüldü ve picPower tabanlı bazı ürünleri piyasaya sürdü.
Hedef Konektörler
Tasarım ve geliştirme söz konusu olduğunda hedef bağlayıcılar çok önemlidir. AVR, 6 ve 10 yollu ISP arayüzlerini tanımlamıştır, bu da kullanımı kolaylaştırır, ancak PIC'de yoktur, bu nedenle PIC programcıları, devreye takılması zor olan uçan uçlarla veya RJ11 soketleriyle birlikte gelir.
Sonuç, AVR'nin hedef konektörlerle devre tasarımı ve geliştirme açısından basitleştirdiği, ancak PIC'in hala bunu düzeltmesi gerektiğidir.
Gelişmiş Arayüzler
Gelişmiş arayüzler açısından, AVR'de olmayan USB, CAN ve Ethernet gibi gelişmiş özelliklerle hareket ettiği için PIC kesinlikle bir seçenektir. Bununla birlikte, FTDI USB'den seri yongalara, Microchip Ethernet denetleyicileri veya Philips CAN yongaları gibi harici yongalar kullanılabilir.
Sonuç, PIC'in kesinlikle AVR'den daha gelişmiş arayüzlere sahip olduğudur.
Geliştirme Ortamı
Bunun dışında her iki mikrodenetleyiciyi birbirinden farklı kılan önemli özellikler vardır. Geliştirme ortamının kolaylığı çok önemlidir. Aşağıda, geliştirme ortamının kolaylığını açıklayacak bazı önemli parametreler bulunmaktadır:
- Geliştirme IDE
- C Derleyiciler
- Montajcılar
Geliştirme IDE:
Hem PIC hem de AVR kendi geliştirme IDE'leriyle birlikte gelir . PIC geliştirme, AVR'nin 750 MB büyüklüğündeki Atmel Studio7 ile karşılaştırıldığında kararlı ve basit bir IDE olduğu bilinen ve daha fazla eklenti özelliği ile biraz hantal olan MPLAB X üzerinde yapılır, bu da yeni elektronik hobileri için zor ve karmaşık hale getirir..
PIC, PicKit3 ve MPLAB X mikroçip araçlarıyla programlanabilir . AVR, JTAGICE ve AtmelStudio7 gibi araçlar kullanılarak programlanır. Ancak kullanıcılar, çok daha hızlı çalıştığı ve geliştirme için temel özelliklere sahip olduğu için, servis paketi3 ile birlikte 4.18 gibi AVR Studio'nun eski sürümlerine geçiyor.
Sonuç, PIC MPLAB X'in AtmelStudio7'den biraz daha hızlı ve kullanıcı dostu olmasıdır.
C Derleyiciler:
Hem PIC hem de AVR, sırasıyla XC8 ve WINAVR C Derleyicileriyle birlikte gelir. PIC, Hi-tech'i satın aldı ve kendi derleyicisi XC8'i başlattı. Bu, MPLAB X'e tamamen entegre edilmiştir ve iyi çalışır. Ancak WINAVR, kodu aktarmayı ve standart kitaplıkları kullanmayı kolaylaştıran GCC derleyicisine dayalı ANSI C'dir. IAR C Compiler'ın ücretsiz 4KB sınırlı sürümü, çok maliyetli olan profesyonel derleyicilerden oluşan bir lezzet sunar. AVR başlangıçta C için tasarlandığından, kod çıkışı küçük ve hızlıdır.
PIC, AVR ile karşılaştırıldığında onu iyi yapan birçok özelliğe sahiptir, ancak PIC yapısı nedeniyle kodu daha büyük hale gelir. Ücretli sürüm daha fazla optimizasyonla mevcuttur, ancak ücretsiz sürüm iyi optimize edilmemiştir.
Sonuç olarak WINAVR, derleyiciler açısından PIC XC8'den daha iyi ve hızlıdır.
Montajcılar:
Adreslemeyi ve kelime işlemlerini basitleştiren üç 16-bit işaretçi yazmaçları ile AVR birleştirme dili çok sayıda talimat ve 32 yazmacın tümünü akümülatör olarak kullanma yeteneği ile çok kolaydır. PIC assembler, akümülatör aracılığıyla çalışmaya zorlanan her şey için o kadar iyi olmasa da, tüm Özel Fonksiyon Kayıtlarına erişmek için her zaman sıra anahtarlamayı kullanmaya zorlar. MPLAB, banka geçişini basitleştirmek için makrolar içermesine rağmen, zahmetli ve zaman alıcıdır.
Ayrıca, dallanma talimatlarının olmaması, sadece kıvrımlı yapılara ve biraz kafa karıştırıcı kodlara zorlayan GOTO ve atla. PIC serisinde bazı mikro denetleyici serileri çok daha hızlıdır, ancak yine tek bir akümülatörle sınırlıdır.
Sonuç olarak, bazı PIC mikrodenetleyicileri daha hızlı olsa da, derleyiciler açısından AVR üzerinde çalışmak daha iyidir.
Fiyat ve Kullanılabilirlik
Fiyat açısından konuşursak, hem PIC hem de AVR çok benzer. Her ikisi de çoğunlukla aynı fiyata mevcuttur. Kullanılabilirlik açısından, Microchip her zaman kısa teslim süreleri politikası uyguladığından, PIC, ürünleri AVR'ye kıyasla öngörülen sürede teslim etmeyi başardı. Atmel, geniş ürün yelpazesi AVR'lerin işlerinin küçük bir parçası olduğu anlamına geldiğinden bazı zor zamanlar geçirdi, bu nedenle diğer pazarlar üretim kapasitesi için AVR'lere göre öncelik kazanabilir. Bu nedenle, teslimat programları açısından PIC kullanılması tavsiye edilirken, AVR üretim için kritik olabilir. Mikroçip parçaları, özellikle küçük miktarlarda daha kolay bulunma eğilimindedir.
Diğer özellikler
Hem PIC hem de AVR çeşitli paketlerde mevcuttur. PIC, AVR'den daha fazla sürüm sunar. Bu sürümün kullanıma sunulması, uygulamalara bağlı olarak artıları ve eksileri olabilir, çünkü daha fazla sürüm, uygun modeli seçmede karışıklık yaratır, ancak aynı zamanda daha iyi esneklik sağlar. Hem PIC hem de AVR'nin en son sürümü çok düşük güçtedir ve çeşitli voltaj aralığında çalışır. PIC saatleri ve zamanlayıcıları daha doğrudur ancak hız açısından PIC ve AVR hemen hemen aynıdır.
Atmel Studio 7, EEPROM, Flash ve fuse verilerini tek bir dosyada içeren Production ELF Dosyaları ekledi. AVR, sigorta verilerini onaltılık dosya formatlarına entegre ettiğinden, sigorta kodda ayarlanabilir. Bu, PIC için projenin üretime aktarılmasını kolaylaştırır.
Sonuç
PIC ve AVR'nin her ikisi de, sadece endüstrilerde kullanılmayan, aynı zamanda öğrenciler ve hobiler arasında popüler bir seçim olan mükemmel düşük maliyetli cihazlardır. Her ikisi de yaygın olarak kullanılmaktadır ve aktif çevrimiçi varlığa sahip iyi ağlara (forumlar, kod örnekleri) sahiptir. Her ikisi de iyi bir topluluk erişimi ve desteğine sahiptir ve her ikisi de geniş boyutlarda ve çekirdekten bağımsız çevre birimleri ile form faktöründe mevcuttur. Mikroçip Atmel'i devraldı ve şimdi hem AVR hem de PIC ile ilgileniyor. Sonunda, mikrodenetleyiciyi öğrenmenin programlama dillerini öğrenmek gibi olduğu, bir tane öğrendikten sonra bir başkasını öğrenmek çok daha kolay olacağı anlaşılıyor.
Kim kazanır söylesem de hemen hemen tüm mühendislik dallarında "en iyi" diye bir kelime yokken "Uygulamaya En Uygun" ifadesi çok uygun. Her şey belirli bir ürünün, geliştirme yönteminin ve üretim sürecinin gereksinimlerine bağlıdır. Dolayısıyla, projeye bağlı olarak, PIC ve AVR'den çok uygun mikro denetleyici seçilebilir.