- Pradėkite nuo projekto reikalavimo
- Peržiūrėkite siūlomus parametrus
- Darbinė įtampa
- Tikslinės jungtys
- Pažangiosios sąsajos
- Vystymosi aplinka
- Kaina ir prieinamumas
- Kitos funkcijos
- Išvada
Pasirinkus mikrovaldiklį, tai tikrai painus uždavinys, nes rinkoje yra įvairių mikrovaldiklių, turinčių tas pačias specifikacijas. Taigi kiekvienas parametras tampa svarbus, kai reikia pasirinkti mikrovaldiklį. Čia mes palyginame du dažniausiai naudojamus mikrovaldiklius - PIC mikrovaldiklius ir AVR mikrovaldiklius. Čia jie lyginami įvairiais lygmenimis, kurie bus naudingi pasirenkant mikrovaldiklį jūsų projektui.
Pradėkite nuo projekto reikalavimo
Surinkite visą informaciją apie savo projektą, kurį norite pradėti, prieš pradėdami rinktis bet kurį mikrovaldiklį. Labai svarbu, kad informacija būtų renkama kuo daugiau, nes tai atliktų svarbų vaidmenį renkantis tinkamą mikrovaldiklį.
- Surinkite informaciją apie projektą, pvz., Projekto dydis
- Naudotų periferinių įrenginių ir jutiklių skaičius
- Energijos poreikis
- Projekto biudžetas
- Sąsajų reikalavimas (pvz., USB, SPI, I2C, UART ir kt.),
- Padarykite pagrindinę aparatinės įrangos bloko schemą,)
- Išvardykite, kiek GPIO reikia
- Analoginiai į skaitmeninius įėjimus (ADC)
- PWM
- Pasirinkite reikiamą architektūrą, ty (8 bitų, 16 bitų, 32 bitų)
- Atpažinkite projekto atminties poreikį (RAM, „Flash“ ir kt.)
Peržiūrėkite siūlomus parametrus
Surinkus visą informaciją, yra tinkamas laikas pasirinkti mikrovaldiklį. Šiame straipsnyje du konkuruojantys mikrovaldiklių prekės ženklai PIC ir AVR bus lyginami pagal įvairius parametrus. Atsižvelgdami į projekto poreikį palyginti šiuos du, pažiūrėkite į šiuos parametrus, tokius kaip:
- Dažnis: greitis, kuriuo veiks mikrovaldiklis
- Įvesties / išvesties kaiščių skaičius: reikalingi prievadai ir kaiščiai
- RAM: visi deklaruoti kintamieji ir masyvai (DATA) daugumoje MCU
- „Flash“ atmintis: bet koks kodas, kurį rašote, čia pateks po kompiliavimo
- Pažangios sąsajos: pažangios sąsajos, tokios kaip USB, CAN ir Ethernet.
- Darbinė įtampa: MCU darbinė įtampa, pvz., 5 V, 3,3 V arba žema įtampa.
- Tikslinės jungtys: jungtys, palengvinančios grandinės dizainą ir dydį.
Dauguma parametrų yra panašūs tiek PIC, tiek AVR, tačiau yra keletas parametrų, kurie lyginant tikrai skiriasi.
Darbinė įtampa
Turėdami daugiau baterijomis valdomų produktų, PIC ir AVR pavyko patobulinti vykdant žemos įtampos operacijas. AVR yra geriau žinomi dėl žemos įtampos veikimo nei senesnės PIC serijos, tokios kaip PIC16F ir PIC18F, nes šiose PIC serijose buvo naudojamas mikroschemų ištrintas metodas, kurio veikimui reikia mažiausiai 4,5 V, o žemiau 4,5 V PIC programuotojai turi naudoti eilutės ištrynimo algoritmą kuris negali ištrinti užrakinto įrenginio. Tačiau AVR atveju taip nėra.
AVR patobulino ir išleido naujausius P („pico-power“) variantus, tokius kaip „ATmega328P“, kurie yra ypač mažai galingi. Taip pat dabartinis „ATtiny1634“ patobulintas ir pateikiamas su miego režimais, kad būtų sumažinta energijos sąnaudos, kai naudojama rudos spalvos šviesa, o tai yra labai naudinga akumuliatoriuose veikiančiuose įrenginiuose.
Išvada yra ta, kad anksčiau AVR buvo sutelktas į žemą įtampą, tačiau PIC dabar buvo pakeistas žemos įtampos veikimui ir išleido kai kuriuos produktus, pagrįstus „picPower“.
Tikslinės jungtys
Tikslinės jungtys yra labai svarbios projektuojant ir tobulinant. AVR nustatė 6 ir 10 krypčių interneto paslaugų teikėjų sąsajas, todėl jas lengva naudoti, o PIC jos neturi, todėl PIC programuotojai turi skraidančius laidus arba RJ11 lizdus, kuriuos sunku sutalpinti į grandinę.
Išvada yra ta, kad AVR supaprastino grandinių projektavimą ir plėtrą su tikslinėmis jungtimis, o PIC vis tiek turi tai ištaisyti.
Pažangiosios sąsajos
Kalbant apie pažangias sąsajas, tada PIC tikrai yra pasirinkimas, nes jis pasielgė su pažangiomis funkcijomis, tokiomis kaip USB, CAN ir Ethernet, o tai nėra AVR. Tačiau galima naudoti išorinius lustus, tokius kaip FTDI USB prie nuosekliųjų lustų, „Microchip Ethernet“ valdiklius arba „Philips CAN“ lustus.
Išvada ta, kad PIC tikrai turi pažangias sąsajas nei AVR.
Vystymosi aplinka
Be to, yra svarbių savybių, dėl kurių abu mikrovaldikliai skiriasi. Labai svarbu, kad kūrimosi aplinka būtų lengva. Toliau pateikiami keli svarbūs parametrai, kurie paaiškins kūrimo aplinkos paprastumą:
- Plėtros IDE
- C kompiliatoriai
- Montuotojai
Kūrimo IDE:
Tiek PIC, tiek AVR turi savo kūrimo IDE . PIC kūrimas atliekamas naudojant „MPLAB X“, kuris, kaip žinoma, yra stabilus ir paprastas IDE, palyginti su AVR „Atmel Studio7“, kuri yra didelio 750 MB dydžio ir yra šiek tiek sudėtinga su daugiau papildomų funkcijų, todėl naujokams elektroniniams mėgėjams tai sunku ir sudėtinga.
PIC galima užprogramuoti per mikroschemų įrankius „PicKit3“ ir „MPLAB X“ . AVR programuojamas naudojant tokius įrankius kaip JTAGICE ir AtmelStudio7. Tačiau vartotojai pereina prie senesnių „AVR Studio“ versijų, tokių kaip 4.18 su „Service Pack3“, nes ji veikia daug greičiau ir turi pagrindines kūrimo ypatybes.
Išvada yra ta, kad „ PIC MPLAB X“ yra šiek tiek greitesnis ir patogesnis vartotojui nei „AtmelStudio7“.
C kompiliatoriai:
Tiek PIC, tiek AVR yra su XC8 ir WINAVR C kompiliatoriais. PIC išpirko „Hi-tech“ ir paleido savo kompiliatorių „XC8“. Tai visiškai integruota į MPLAB X ir gerai veikia. Tačiau WINAVR yra ANSI C, pagrįstas GCC kompiliatoriumi, kuris leidžia lengvai perkelti kodą ir naudoti standartines bibliotekas. Nemokama 4KB ribota „IAR C Compiler“ versija suteikia profesionalių kompiliatorių skonį, kuris kainuoja daug. Kadangi iš pradžių AVR yra sukurtas C, kodo išvestis yra maža ir greita.
PIC turi daug funkcijų, dėl kurių jis gerai, palyginti su AVR, tačiau jo kodas tampa didesnis dėl PIC struktūros. Mokama versija yra labiau optimizuojama, tačiau nemokama versija nėra gerai optimizuota.
Išvada yra ta, kad WINAVR yra geras ir greitas kompiliatorių atžvilgiu nei PIC XC8.
Surinkėjai:
Turėdami tris 16 bitų žymeklių registrus, kurie supaprastina adresavimą ir žodžių operacijas, AVR surinkimo kalba yra labai paprasta, nes pateikiama daugybė instrukcijų ir galimybė visus 32 registrus naudoti kaip kaupimo priemonę. Nors PIC surinkėjas nėra toks gerai, kai viskas priversta veikti per akumuliatorių, verčia visą laiką naudoti banko perjungimą, kad būtų galima pasiekti visus specialiųjų funkcijų registrus. Nors MPLAB apima makrokomandas, kad supaprastintų banko keitimą, tačiau tai varginantis ir daug laiko reikalaujantis.
Taip pat trūksta filialo nurodymų, tiesiog praleiskite ir „GOTO“, kuris priverčia susipainioti struktūras ir šiek tiek painų kodą. Kai kurios PIC serijos mikrovaldiklių serijos yra daug greitesnės, tačiau vėlgi apsiriboja vienu akumuliatoriumi.
Išvada yra ta, kad nors kai kurie PIC mikrovaldikliai yra greitesni, tačiau AVR yra geriau dirbti montuotojų atžvilgiu.
Kaina ir prieinamumas
Kalbant apie kainą, tada tiek PIC, tiek AVR yra daug panašūs. Abi yra tokios pačios kainos. Kalbant apie prieinamumą, tada IPS sugebėjo pristatyti produktus nustatytu laiku, palyginti su AVR, nes „Microchip“ visada vykdė trumpą pristatymo laiką. „Atmel“ turėjo sunkumų, nes jų platus produktų asortimentas reiškia, kad AVR yra maža jų verslo dalis, todėl kitose rinkose gali būti teikiama pirmenybė prieš AVR dėl gamybos pajėgumų. Taigi patartina naudoti PIC atsižvelgiant į pristatymo grafikus, tuo tarpu AVR gali būti svarbi gamybai. Mikroschemų dalys paprastai yra lengviau prieinamos, ypač nedideliais kiekiais.
Kitos funkcijos
Tiek PIC, tiek AVR yra įvairių pakuočių. PIC išleidžia daugiau versijų nei AVR. Šios versijos diegimas gali turėti privalumų ir trūkumų, priklausomai nuo programų, pvz., Daugiau versijų kelia painiavą renkantis tinkamą modelį, tačiau tuo pačiu suteikia didesnį lankstumą. Naujausia PIC ir AVR versija yra labai mažos galios ir veikia įvairiuose įtampos diapazonuose. PIC laikrodžiai ir laikmačiai yra tikslesni, tačiau greičio atžvilgiu PIC ir AVR yra labai vienodi.
„Atmel Studio 7“ pridėjo „Production ELF Files“, į kuriuos į vieną failą įtraukiami EEPROM, „Flash“ ir saugiklių duomenys. Kadangi AVR integravo saugiklių duomenis į savo šešioliktainės rinkmenos formatą, todėl saugiklį galima nustatyti kodu. Tai leidžia PIC lengviau perkelti projektą į gamybą.
Išvada
PIC ir AVR yra puikūs nebrangūs įrenginiai, kurie naudojami ne tik pramonėje, bet ir populiarus pasirinkimas tarp studentų ir mėgėjų. Abu jie yra plačiai naudojami ir turi gerus tinklus (forumus, kodų pavyzdžius) su aktyviu dalyvavimu internete. Abi turi gerą bendruomenės pasiekiamumą ir palaikymą. Abi yra prieinamos įvairiais dydžiais ir forma su nepriklausomais pagrindiniais periferiniais įrenginiais. Mikroschema perėmė „Atmel“ ir dabar rūpinasi AVR ir PIC. Pabaigoje gerai suprantama, kad mikrovaldiklio mokymasis yra lyg mokymasis programuoti kalbas, nes išmokus kitą, išmokus vieną, bus daug lengviau.
Nepaisant to, sakoma, kad kas laimi, bet beveik visose inžinerijos srityse nėra tokio žodžio kaip „geriausias“, o „Tinkamiausias naudoti“ yra tinkama frazė. Viskas priklauso nuo konkretaus produkto, kūrimo metodo ir gamybos proceso reikalavimų. Taigi, atsižvelgiant į projektą, galima pasirinkti gerai pritaikytą mikrovaldiklį iš PIC ir AVR.