- Sāciet ar projekta prasībām
- Apskatiet piedāvātos parametrus
- Darba spriegums
- Mērķa savienotāji
- Uzlabotas saskarnes
- Attīstības vide
- Cena un pieejamība
- Citas īpašības
- Secinājums
Runājot par mikrokontrolleru izvēli, tas patiešām ir mulsinošs uzdevums, jo tirgū ir pieejami dažādi mikrokontrolleri ar vienādām specifikācijām. Tāpēc katrs parametrs kļūst svarīgs, izvēloties mikrokontrolleru. Šeit mēs salīdzinām divus visbiežāk lietotos mikrokontrollerus - PIC mikrokontrollerus un AVR mikrokontrollerus. Šeit tie tiek salīdzināti dažādos līmeņos, kas būs noderīgi, izvēloties mikrokontrolleru savam projektam.
Sāciet ar projekta prasībām
Pirms sākat izvēlēties jebkuru mikrokontrolleru, apkopojiet visu informāciju par iesākamo projektu. Ir ļoti svarīgi, lai informācija tiktu savākta pēc iespējas vairāk, jo tam būtu svarīga loma pareizā mikrokontrollera izvēlē.
- Apkopojiet informāciju par projektu, piemēram, Projekta lielums
- Izmantoto perifērijas ierīču un sensoru skaits
- Jaudas prasība
- Projekta budžets
- Saskarnes prasība (piemēram, USB, SPI, I2C, UART utt.),
- Izveidojiet aparatūras bloka diagrammu,)
- Uzskaitiet, cik GPIO ir nepieciešams
- Analogās un digitālās ieejas (ADC)
- PWM
- Atlasiet vajadzīgo pareizo arhitektūru, ti (8 bitu, 16 bitu, 32 bitu)
- Atpazīt projekta atmiņas prasību (RAM, Flash utt.)
Apskatiet piedāvātos parametrus
Kad visa informācija ir apkopota, ir īstais laiks izvēlēties mikrokontrolleru. Šajā rakstā abi konkurējošie mikrokontrolleru zīmoli PIC un AVR tiks salīdzināti pēc dažādiem parametriem. Atkarībā no projekta nepieciešamības abus salīdzināt, aplūkojiet šādus parametrus, piemēram,
- Frekvence: ātrums, kādā darbosies mikrokontrolleris
- I / O tapu skaits: nepieciešamās pieslēgvietas un tapas
- RAM: visi deklarētie mainīgie un masīvi (DATA) lielākajā daļā MCU
- Zibatmiņa: Neatkarīgi no koda, kuru jūs rakstāt, tas tiek aiziets pēc apkopošanas
- Uzlabotas saskarnes: uzlabotas saskarnes, piemēram, USB, CAN un Ethernet.
- Darba spriegums: MCU darba spriegums, piemēram, 5V, 3,3 V vai zems spriegums.
- Mērķa savienotāji: savienotāji, kas atvieglo ķēdes dizainu un izmēru.
Lielākā daļa parametru ir līdzīgi gan PIC, gan AVR, taču ir daži parametri, kas salīdzinājumā noteikti atšķiras.
Darba spriegums
Izmantojot vairāk ar akumulatoru darbināmu produktu, PIC un AVR ir izdevies uzlabot zema sprieguma darbības. AVR ir labāk pazīstami ar zema sprieguma darbību nekā vecākas PIC sērijas, piemēram, PIC16F un PIC18F, jo šajās PIC sērijās tika izmantota mikroshēmas izdzēsta metode, kuras darbībai nepieciešama vismaz 4,5 V, un zem 4,5 V PIC programmētājiem jāizmanto rindas dzēšanas algoritms kas nevar izdzēst bloķēto ierīci. Tomēr AVR gadījumā tas tā nav.
AVR ir uzlabojis un laidis klajā jaunākos P (pico-power) variantus, piemēram, ATmega328P, kas ir īpaši mazjaudīgi. Arī pašreizējais ATtiny1634 ir uzlabojies, un tam ir miega režīmi, lai samazinātu enerģijas patēriņu, ja tiek izmantots Brownout, kas ir ļoti noderīgi ierīcēs, kuras darbina ar akumulatoru.
Secinājums ir tāds, ka AVR iepriekš bija vērsta uz zemspriegumu, bet PIC tagad ir pārveidots zemsprieguma darbībai un ir izlaidis dažus produktus, kuru pamatā ir picPower.
Mērķa savienotāji
Mērķa savienotāji ir ļoti svarīgi, kad runa ir par dizainu un izstrādi. AVR ir definējis 6 un 10 virzienu ISP saskarnes, kas atvieglo tā izmantošanu, turpretī PIC tā nav, tāpēc PIC programmētājiem ir pievienoti vadošie vadi vai RJ11 kontaktligzdas, kuras ir grūti ievietot ķēdē.
Secinājums ir tāds, ka AVR ir padarījis to vienkāršu ķēžu dizaina un attīstības ziņā ar mērķa savienotājiem, turpretim PIC tas joprojām ir jānovērš.
Uzlabotas saskarnes
Runājot par uzlabotajām saskarnēm, PIC noteikti ir izvēle, jo tā ir paveikusi tādas uzlabotas funkcijas kā USB, CAN un Ethernet, kas nav AVR gadījumā. Tomēr var izmantot ārējās mikroshēmas, piemēram, FTDI USB sērijas mikroshēmām, Microchip Ethernet kontrollerus vai Philips CAN mikroshēmas.
Secinājums ir tāds, ka PIC noteikti ir ieguvis uzlabotas saskarnes nekā AVR.
Attīstības vide
Izņemot šo, ir svarīgas iezīmes, kas padara mikrokontrolleru atšķirīgu viens no otra. Izstrādes vides vieglums ir ļoti svarīgs. Zemāk ir daži svarīgi parametri, kas izskaidros izstrādes vides vieglumu:
- Attīstības IDE
- C sastādītāji
- Montētāji
Attīstības IDE:
Gan PIC, gan AVR ir savi attīstības IDE . PIC izstrāde tiek veikta MPLAB X, kas, kā zināms, ir stabila un vienkārša IDE, salīdzinot ar AVR Atmel Studio7, kas ir liela 750 MB lieluma un ir mazliet apgrūtinoša ar vairākām papildfunkcijām, kas iesācējiem elektroniskajiem hobijiem to apgrūtina un sarežģī.
PIC var programmēt caur mikročipu instrumentiem PicKit3 un MPLAB X . AVR tiek ieprogrammēts, izmantojot tādus rīkus kā JTAGICE un AtmelStudio7. Tomēr lietotāji pāriet uz vecākām AVR Studio versijām, piemēram, 4.18 ar 3. servisa pakotni, jo tā darbojas daudz ātrāk un tai ir izstrādes pamatfunkcijas.
Secinājums ir tāds, ka PIC MPLAB X ir mazliet ātrāks un lietotājam draudzīgāks nekā AtmelStudio7.
C sastādītāji:
Gan PIC, gan AVR komplektācijā ietilpst attiecīgi XC8 un WINAVR C Compilers. PIC ir izpircis Hi-tech un ir laidis klajā savu kompilatoru XC8. Tas ir pilnībā integrēts MPLAB X un darbojas labi. Bet WINAVR ir ANSI C, kura pamatā ir GCC kompilators, kas atvieglo koda pārnešanu un standarta bibliotēku izmantošanu. IAR C Compiler bezmaksas 4KB ierobežotā versija nodrošina profesionālu kompilatoru garšu, kas maksā daudz. Tā kā sākumā AVR ir paredzēts C, koda izvade ir maza un ātra.
PIC ir daudzas funkcijas, kas padara to labi salīdzinājumā ar AVR, taču tā kods kļūst lielāks PIC struktūras dēļ. Apmaksātā versija ir pieejama ar lielāku optimizāciju, taču bezmaksas versija nav labi optimizēta.
Secinājums ir tāds, ka WINAVR kompilatoru ziņā ir labs un ātrs nekā PIC XC8.
Montētāji:
Ar trim 16 bitu rādītāju reģistriem, kas vienkāršo adresēšanu un vārdu darbības, AVR montāžas valoda ir ļoti vienkārša, izmantojot daudz instrukciju un iespēju izmantot visus 32 reģistrus kā akumulatoru. Tā kā PIC montētājs nav tik labi, jo viss, kas spiests darboties caur akumulatoru, liek visu laiku izmantot bankas pārslēgšanu, lai piekļūtu visiem īpašo funkciju reģistriem. Lai gan MPLAB ir iekļauti makro, lai vienkāršotu bankas maiņu, taču tas ir garlaicīgs un laikietilpīgs.
Arī filiāles instrukciju trūkums, vienkārši izlaidiet un GOTO, kas iekļauj savītas struktūras un mazliet mulsinošu kodu. PIC sērijā ir dažas mikrokontrolleru sērijas daudz ātrāk, bet atkal aprobežojas ar vienu akumulatoru.
Secinājums ir tāds, ka, lai gan daži no PIC mikrokontrolleriem ir ātrāki, bet AVR ir labāk strādāt montētāju ziņā.
Cena un pieejamība
Runājot par cenu, tad gan PIC, gan AVR ir daudz līdzīgi. Abi ir pieejami galvenokārt par vienādu cenu. Runājot par pieejamību, PIC ir izdevies piegādāt produktus noteiktā laikā, salīdzinot ar AVR, jo mikroshēmai vienmēr bija īsu sagatavošanās laiku politika. Atmel bija grūti laiki, jo to plašais produktu klāsts nozīmē, ka AVR ir maza viņu biznesa sastāvdaļa, tāpēc citi tirgi var uzskatīt par prioritāti AVR attiecībā uz ražošanas jaudu. Tāpēc ir ieteicams izmantot PIC piegādes grafiku ziņā, turpretim AVR var būt izšķiroša nozīme ražošanā. Mikroshēmu daļas mēdz būt vieglāk pieejamas, īpaši mazos daudzumos.
Citas īpašības
Gan PIC, gan AVR ir pieejami dažādos iepakojumos. PIC izlaiž vairāk versiju nekā AVR. Šīs versijas ieviešanai var būt plusi un mīnusi atkarībā no lietojumprogrammām, piemēram, vairākas versijas rada neskaidrības pareizā modeļa izvēlē, bet vienlaikus nodrošina lielāku elastību. Gan PIC, gan AVR jaunākā versija ir ar ļoti mazu jaudu un darbojas dažādos sprieguma diapazonos. PIC pulksteņi un taimeri ir precīzāki, taču ātruma ziņā PIC un AVR ir ļoti vienādi.
Atmel Studio 7 ir pievienojusi Production ELF Files, kas vienā failā ietver EEPROM, Flash un drošinātāju datus. Tā kā AVR ir integrējis drošinātāju datus to hex faila formātā, tāpēc drošinātāju var iestatīt kodā. Tas ļauj PIC pārcelt projektu uz ražošanu.
Secinājums
Gan PIC, gan AVR ir lieliskas lētas ierīces, kuras izmanto ne tikai rūpniecībā, bet arī populāra izvēle studentu un vaļasprieku vidū. Abi ir plaši izmantoti, un tiem ir labi tīkli (forumi, kodu piemēri) ar aktīvu klātbūtni tiešsaistē. Abiem ir laba sabiedriskā sasniedzamība un atbalsts, un abi ir pieejami plašā izmērā un formā ar neatkarīgām galvenajām perifērijām. Mikroshēma ir pārņēmusi Atmel un tagad rūpējas gan par AVR, gan par PIC. Beigās ir labi saprotams, ka mikrokontrolleru apgūšana ir līdzīga programmēšanas valodu apguvei, jo citu apgūšana būs daudz vienkāršāka, kad būsiet to iemācījies.
Nav svarīgi teikt, ka kurš uzvar, bet gandrīz visās inženierzinātņu nozarēs nav tāda vārda kā “labākais”, turpretim “Vispiemērotākais lietošanai” ir piemērota frāze. Tas viss ir atkarīgs no konkrēta produkta, izstrādes metodes un ražošanas procesa prasībām. Tātad atkarībā no projekta var izvēlēties labi piemērotu mikrokontrolleru no PIC un AVR.