- Start med prosjektkrav
- Se på de valgte parameterne
- Arbeidsspenning
- Målkontakter
- Avanserte grensesnitt
- Utviklingsmiljø
- Pris og tilgjengelighet
- Andre funksjoner
- Konklusjon
Når det gjelder valg av mikrokontroller, er det virkelig en forvirrende oppgave, da det er forskjellige mikrokontrollere tilgjengelig i markedet med samme spesifikasjoner. Så hver parameter blir viktig når det gjelder å velge en mikrokontroller. Her sammenligner vi to mest brukte Microcontroller - PIC Microcontroller og AVR Microcontroller. Her blir de sammenlignet på forskjellige nivåer som vil være nyttige når du velger mikrokontroller for prosjektet ditt.
Start med prosjektkrav
Samle all informasjon om prosjektet som skal startes før du begynner å velge hvilken som helst mikrokontroller. Det er veldig viktig at informasjonen samles så mye som mulig, da dette vil spille en viktig rolle i valg av riktig mikrokontroller.
- Samle informasjon om prosjekt som størrelse på prosjekt
- Antall eksterne enheter og sensorer som er brukt
- Kraft krav
- Prosjektets budsjett
- Grensesnittkrav (som USB, SPI, I2C, UART osv.),
- Lag et grunnleggende maskinvareblokkdiagram,)
- Skriv ned hvor mange GPIO som trengs
- Analoge til digitale innganger (ADCer)
- PWM-er
- Velg riktig arkitektur du trenger, dvs. (8-biters, 16-biters, 32-biters)
- Gjenkjenne minnekrav til prosjekt (RAM, Flash osv.)
Se på de valgte parameterne
Når all informasjon er samlet, er det riktig tidspunkt å velge mikrokontroller. I denne artikkelen vil de to konkurrerende mikrokontrollermerkene PIC og AVR bli sammenlignet på forskjellige parametere. Avhengig av behovet for prosjektet for å sammenligne de to, kan du se på følgende parametere som,
- Frekvens: Hastighet som mikrokontrolleren skal fungere på
- Antall I / O-pinner: Nødvendige porter og pinner
- RAM: Alle variabler og matriser deklarert (DATA) i de fleste MCUer
- Flash-minne: Uansett hvilken kode du skriver går her etter kompilering
- Avanserte grensesnitt: Avanserte grensesnitt som USB, CAN og Ethernet.
- Arbeidsspenning: Arbeidsspenning på MCU som 5V, 3,3V eller lav spenning.
- Målkontakter: Kontaktene for enkel kretsdesign og størrelse.
De fleste av parametrene er like i både PIC og AVR, men det er noen parametere som sikkert er forskjellige når de sammenlignes.
Arbeidsspenning
Med flere batteridrevne produkter har PIC og AVR klart å forbedre lavspentoperasjonen. AVR er bedre kjent for lavspenningsdrift enn de eldre PIC-seriene som PIC16F og PIC18F fordi disse PIC-seriene brukte chip-slettet metode som trenger minst 4,5 V for å fungere, og under 4,5 V PIC-programmerere må bruke radese-algoritme som ikke kan slette låst enhet. Dette er imidlertid ikke tilfelle i AVR.
AVR har forbedret og lansert de nyeste P (pico-power) varianter som ATmega328P som har ekstremt lav effekt. Også den nåværende ATtiny1634 har forbedret seg og kommer med hvilemodus for å redusere strømforbruket når brownout brukes, noe som er veldig nyttig i batteridrevne enheter.
Konklusjonen er at AVR tidligere hadde fokus på lavspenning, men PIC har nå blitt transformert for lavspenningsoperasjon og har lansert noen produkter basert på picPower.
Målkontakter
Målkontakter er veldig viktige når det gjelder design og utvikling. AVR har definert 6 og 10-veis ISP-grensesnitt, noe som gjør det enkelt å bruke mens PIC ikke har det, så PIC-programmerere kommer med flygende ledninger eller RJ11-stikkontakter som er vanskelige å få plass i kretsen.
Konklusjonen er at AVR har gjort det enkelt når det gjelder kretsdesign og utvikling med målkontaktene, mens PIC fortsatt trenger å rette opp dette.
Avanserte grensesnitt
Når det gjelder avanserte grensesnitt, er PIC sikkert alternativet da det har fått sin handling med avanserte funksjoner som USB, CAN og Ethernet, noe som ikke er tilfelle i AVR. Imidlertid kan man bruke eksterne chips, for eksempel FTDI USB til serielle chips, Microchip Ethernet-kontrollere eller Philips CAN-chips.
Konklusjonen er at PIC sikkert har de avanserte grensesnittene enn AVR.
Utviklingsmiljø
Annet enn dette er det viktige funksjoner som gjør at både mikrokontrolleren er forskjellig fra hverandre. Det enkle utviklingsmiljøet er veldig viktig. Nedenfor er noen viktige parametere som vil forklare det enkle utviklingsmiljøet:
- Utvikling IDE
- C Kompilatorer
- Montører
Utvikling IDE:
Både PIC og AVR kommer med sine egne IDEer for utvikling . PIC-utvikling gjøres på MPLAB X, som er kjent for å være den stabile og enkle IDE sammenlignet med AVRs Atmel Studio7, som er i stor størrelse 750MB og er litt klumpete med flere tilleggsfunksjoner som gjør det vanskelig og komplisert for nybegynnere elektroniske hobbyister.
PIC kan programmeres gjennom microchip verktøy PicKit3 og MPLAB X . AVR er programmert ved hjelp av verktøy som JTAGICE og AtmelStudio7. Imidlertid bytter brukerne til de eldre versjonene av AVR Studio, for eksempel 4.18 med service pack3, da den går mye raskere og har grunnleggende funksjoner for utvikling.
Konklusjonen er at PIC MPLAB X er litt raskere og brukervennlig enn AtmelStudio7.
C kompilatorer:
Både PIC og AVR leveres med henholdsvis XC8 og WINAVR C Compilers. PIC har kjøpt ut Hi-tech og har lansert sin egen kompilator XC8. Dette er fullstendig integrert i MPLAB X og fungerer bra. Men WINAVR er ANSI C basert på GCC kompilator som gjør det enkelt å portere kode og bruke standardbiblioteker. Den gratis 4KB-begrensede versjonen av IAR C Compiler gir en smak av profesjonelle kompilatorer som koster mye. Siden AVR er designet for C i begynnelsen, er kodeutgangen liten og rask.
PIC har mange funksjoner som gjør det bra i forhold til AVR, men koden blir større på grunn av PIC-strukturen. Den betalte versjonen er tilgjengelig med mer optimalisering, men den gratis versjonen er ikke godt optimalisert.
Konklusjonen er at WINAVR er god og rask når det gjelder kompilatorer enn PIC XC8.
Montører:
Med tre 16-biters pekerregistre som forenkler adressering og ordoperasjoner, er AVR-monteringsspråket veldig enkelt med mange instruksjoner og muligheten til å bruke alle 32 registerene som akkumulator. Mens PIC-montøren ikke er så bra med alt som er tvunget til å operere gjennom akkumulatoren, tvinger man til å bruke bankomkobling hele tiden for å få tilgang til alle spesialfunksjonsregistrene. Selv om MPLAB inkluderer makroer for å forenkle bankbytte, men det er kjedelig og tidkrevende.
Også mangelen på greninstruksjoner, bare hopp over og GOTO, som tvinger seg inn i kronglede strukturer og litt forvirrende kode. PIC-serien har noen mikrocontroller-serier mye raskere, men igjen begrenset til en akkumulator.
Konklusjonen er at selv om noen av PIC-mikrokontrollere er raskere, men AVR er bedre å jobbe med når det gjelder montører.
Pris og tilgjengelighet
Når vi snakker i forhold til prisen, er både PIC og AVR mye like. Begge er tilgjengelige i stort sett samme pris. Når det gjelder tilgjengelighet, har PIC klart å levere produktene i fastsatt tid sammenlignet med AVR, ettersom Microchip alltid hadde policy om korte ledetider. Atmel hadde noen vanskelige tider ettersom det brede produktspekteret betyr at AVR-er er en liten del av virksomheten, slik at andre markeder kan prioritere fremfor AVR-er for produksjonskapasitet. Derfor anbefales det å bruke PIC når det gjelder leveringsplaner, mens AVR kan være avgjørende for produksjonen. Deler av mikrochip er ofte lettere tilgjengelig, spesielt i små mengder.
Andre funksjoner
Både PIC og AVR er tilgjengelig i en rekke pakker. PIC ruller ut flere versjoner enn AVR. Denne versjonen kan ha fordeler og ulemper, avhengig av applikasjoner som flere versjoner skaper forvirring i valg av riktig modell, men samtidig gir den bedre fleksibilitet. Siste versjon av både PIC og AVR er veldig lavt og fungerer i forskjellige spenningsområder. PIC-klokker og tidtakere er mer nøyaktige, men når det gjelder hastighet, er PIC og AVR veldig mye.
Atmel Studio 7 har lagt til Production ELF Files, som inkluderer EEPROM, Flash og sikringsdata i en fil. Mens AVR har integrert sikringsdata i deres hex-filformat, slik at sikring kan settes i kode. Dette muliggjør overføring av prosjekt til produksjon lettere for PIC.
Konklusjon
PIC og AVR er begge utmerkede rimelige enheter som ikke bare brukes i bransjer, men også et populært valg blant studenter og hobbyister. Begge er mye brukt og har gode nettverk (fora, kodeeksempler) med aktiv online tilstedeværelse. Begge har god rekkevidde og støtte for fellesskapet, og begge er tilgjengelige i store størrelser og formfaktor med kjerneuavhengige eksterne enheter. Microchip har overtatt Atmel og tar nå vare på både AVR og PIC. På slutten er det godt forstått at det å lære mikrokontroller er som å lære programmeringsspråk, ettersom det å lære et annet vil være mye lettere når du har lært et.
Det er uansett å si at den som vinner, men i nesten alle grener av ingeniørfag, er det ikke noe ord som "best", mens "Mest hensiktsmessig for anvendelse" er velegnet setning. Alt avhenger av kravene til et bestemt produkt, utviklingsmetode og produksjonsprosess. Så avhengig av prosjekt, kan man velge velegnet mikrokontroller ut av PIC og AVR.