- Започнете с Изискването на проекта
- Погледнете Препоръчаните параметри
- Работно напрежение
- Целеви конектори
- Разширени интерфейси
- Среда за развитие
- Цена и наличност
- Други функции
- Заключение
Що се отнася до избора на микроконтролер, това наистина е объркваща задача, тъй като на пазара се предлагат различни микроконтролери със същите спецификации. Така че всеки параметър става важен, когато става въпрос за избор на микроконтролер. Тук сравняваме два най-често използвани микроконтролера - PIC микроконтролер и AVR микроконтролер. Тук те се сравняват на различни нива, които ще бъдат полезни при избора на микроконтролер за вашия проект.
Започнете с Изискването на проекта
Съберете цялата информация за вашия проект, който да стартирате, преди да започнете да избирате какъвто и да е микроконтролер. Много е важно информацията да се събира възможно най-много, тъй като това ще играе важна роля при избора на правилния микроконтролер.
- Съберете информация за проекта, като например размера на проекта
- Брой използвани периферни устройства и сензори
- Изискване за захранване
- Бюджет на проекта
- Изискване за интерфейси (като USB, SPI, I2C, UART и т.н.),
- Направете основна хардуерна блок-схема,)
- Избройте колко GPIO е необходимо
- Аналогово-цифрови входове (ADC)
- ШИМ
- Изберете правилната необходима архитектура, т.е. (8-битова, 16-битова, 32-битова)
- Разпознаване на изискването за памет на проекта (RAM, Flash и т.н.)
Погледнете Препоръчаните параметри
Когато цялата информация е събрана, тогава е моментът да изберете микроконтролера. В тази статия двете конкурентни марки микроконтролери PIC и AVR ще бъдат сравнени по различни параметри. В зависимост от необходимостта на проекта да сравнява двете, погледнете следните параметри като,
- Честота: Скорост, с която ще работи микроконтролерът
- Брой I / O щифтове: Необходими портове и щифтове
- RAM: Всички декларирани променливи и масиви (DATA) в повечето MCU
- Флаш памет: Какъвто и код да напишете, той отива тук след компилиране
- Разширени интерфейси: Разширени интерфейси като USB, CAN и Ethernet.
- Работно напрежение: Работно напрежение на MCU като 5V, 3.3V или ниско напрежение.
- Целеви конектори: Конекторите за улеснение на дизайна и размера на веригата.
Повечето параметри са сходни както в PIC, така и в AVR, но има някои параметри, които със сигурност се различават при сравнение.
Работно напрежение
С повече продукти, работещи с батерии, PIC и AVR успяха да се подобрят за нисковолтовите операции. AVR са по-известни за работа с ниско напрежение от по-старите серии PIC като PIC16F и PIC18F, тъй като тези серии PIC използват изтрит чип метод, който се нуждае от най-малко 4.5V за работа, а под 4.5V програмисти PIC трябва да използват алгоритъм за изтриване на редове което не може да изтрие заключено устройство. Това обаче не е така при AVR.
AVR подобри и пусна най-новите варианти P (pico-power) като ATmega328P, които са с изключително ниска мощност. Също така настоящият ATtiny1634 се е подобрил и се предлага с режими на заспиване, за да се намали консумацията на енергия, когато се използва прекъсване, което е много полезно за устройства с батерии.
Изводът е, че AVR преди това са били фокусирани върху ниско напрежение, но PIC сега е трансформиран за работа с ниско напрежение и пусна някои продукти, базирани на picPower.
Целеви конектори
Целевите съединители са много важни по отношение на проектирането и разработването. AVR е дефинирал 6 и 10-начин ISP интерфейси, което го прави лесен за използване, докато PIC го няма, така че PIC програмистите се доставят с летящи проводници или RJ11 гнезда, които са трудни за поставяне във веригата.
Заключението е, че AVR го е направил опростен по отношение на проектирането и развитието на веригата с целевите конектори, докато PIC все още трябва да коригира това.
Разширени интерфейси
Що се отнася до усъвършенстваните интерфейси, тогава PIC със сигурност е опцията, тъй като има своя акт с разширени функции като USB, CAN и Ethernet, което не е така при AVR. Въпреки това човек може да използва външни чипове, като FTDI USB за серийни чипове, Microchip Ethernet контролери или Philips CAN чипове.
Заключението е, че PIC със сигурност има усъвършенствани интерфейси от AVR.
Среда за развитие
Освен това има важни характеристики, което прави и микроконтролера различен един от друг. Лекотата на средата за развитие е много важна. По-долу има някои важни параметри, които ще обяснят лекотата на средата за разработка:
- IDE за разработка
- C Съставители
- Асемблери
IDE за разработка:
Както PIC, така и AVR се предлагат със собствени IDE за разработка . Разработването на PIC се извършва на MPLAB X, за който се знае, че е стабилният и прост IDE в сравнение с Atmel Studio7 на AVR, който е с голям размер 750MB и е малко тромав с повече допълнителни функции, което го прави трудно и сложно за начинаещи електронни любители.
СПМ може да се програмира чрез инструментите на микрочипове PicKit3 и MPLAB X . AVR се програмира чрез използване на инструменти като JTAGICE и AtmelStudio7. Потребителите обаче преминават към по-старите версии на AVR Studio като 4.18 със сервизен пакет3, тъй като той работи много по-бързо и има основни функции за разработка.
Изводът е, че PIC MPLAB X е малко по-бърз и лесен за употреба от AtmelStudio7.
C Компилатори:
И двете PIC и AVR се доставят съответно с XC8 и WINAVR C компилатори. PIC изкупи Hi-tech и пусна свой собствен компилатор XC8. Това е напълно интегрирано в MPLAB X и функционира добре. Но WINAVR е ANSI C, базиран на GCC компилатор, което улеснява пристанището на кода и използването на стандартни библиотеки. Безплатната 4KB ограничена версия на IAR C Compiler дава вкус на професионални компилатори, който струва много. Тъй като AVR е проектиран за C в началото, изходният код е малък и бърз.
PIC има много функции, които го правят добре в сравнение с AVR, но той става по-голям поради структурата на PIC. Платената версия се предлага с повече оптимизация, но безплатната версия не е добре оптимизирана.
Изводът е, че WINAVR е добър и бърз по отношение на компилаторите от PIC XC8.
Асемблери:
С три 16-битови указателни регистри, които опростяват адресирането и операциите с думи, езикът за сглобяване AVR е много лесен с много инструкции и възможността да се използват всички 32 регистри като акумулатор. Докато PIC асемблерът не е толкова добре с всичко, принудено да работи през акумулатора, принуждава да използва превключване на банки през цялото време за достъп до всички регистри със специални функции. Въпреки че MPLAB включва макроси за опростяване на смяната на банки, но това е досадно и отнема много време.
Също така липсата на инструкции за клонове, просто пропуснете и GOTO, което принуждава към объркани структури и малко объркващ код. Серията PIC има много по-бързи серии микроконтролери, но отново ограничени до един акумулатор.
Заключението е, че въпреки че някои от PIC микроконтролерите са по-бързи, но AVR е по-добре да се работи по отношение на асемблерите.
Цена и наличност
Говорейки по отношение на цената, тогава и PIC, и AVR са много сходни. И двете се предлагат на почти същата цена. По отношение на наличността, тогава PIC успя да достави продуктите в определено време в сравнение с AVR, тъй като Microchip винаги е имал политика на кратки срокове. Atmel имаше някои трудни моменти, тъй като широката им продуктова гама означава, че AVR са малка част от техния бизнес, така че други пазари могат да имат приоритет пред AVR за производствен капацитет. Така че е препоръчително да се използва PIC по отношение на графиците за доставка, докато AVR може да бъде от решаващо значение за производството. Частите на микрочипа са по-лесно достъпни, особено в малки количества.
Други функции
Както PIC, така и AVR се предлагат в различни пакети. PIC пуска повече версии от AVR. Тази версия може да има плюсове и минуси в зависимост от приложенията, като повече версии създават объркване при избора на подходящия модел, но в същото време осигурява по-добра гъвкавост. Най-новата версия на PIC и AVR са с много ниско захранване и работят в различни диапазони на напрежение. PIC часовниците и таймерите са по-точни, но по отношение на скоростта PIC и AVR са почти еднакви.
Atmel Studio 7 добави производствени ELF файлове, които включват EEPROM, Flash и данни за предпазители в един файл. Докато AVR е интегрирал данни за предпазителите в техния шестнадесетичен файлов формат, така че предпазителят може да бъде зададен в код. Това позволява прехвърлянето на проекта към производството по-лесно за PIC.
Заключение
И двете PIC и AVR са отлични устройства с ниска цена, които не само се използват в индустриите, но и са популярен избор сред студенти и любители. И двете са широко използвани и имат добри мрежи (форуми, примери за кодове) с активно онлайн присъствие. И двете имат добър обхват и поддръжка от общността и двете се предлагат в широки размери и форм-фактор с независими от основната периферия. Microchip са поели Atmel и сега се грижат както за AVR, така и за PIC. В крайна сметка добре се разбира, че ученето на микроконтролер е като изучаването на езици за програмиране, тъй като изучаването на друг ще бъде много по-лесно, след като сте научили такъв.
Без значение е да се каже, че който победи, но в почти всички отрасли на инженерството няма дума като „най-добрият“, докато „Най-подходящият за приложение“ е подходяща фраза. Всичко зависи от изискванията на конкретен продукт, метод на разработка и производствен процес. Така че, в зависимост от проекта, човек може да избере подходящ микроконтролер от PIC и AVR.