- Vigtige faktorer, du skal overveje, når du vælger en MCU
- 1. Ansøgning
- 2. Vælg Microcontroller Architecture
- 3. Bitstørrelse
- 4. Grænseflader til kommunikation
- 5. Driftsspænding
- 6. Antal I / O-pins
- 7. Hukommelseskrav
- 8. Pakke størrelse
- 9. Strømforbrug
- 10. Support til mikrokontroller
En mikrokontroller er i det væsentlige en lille computer på en chip, som enhver computer, den har hukommelse og er normalt programmeret i indlejrede systemer til at modtage input, udføre beregninger og generere output. I modsætning til en processor indeholder den hukommelse, CPU, I / O og andet perifert udstyr på en enkelt chip som vist i nedenstående layout.
At vælge den rigtige mikrokontroller til et projekt er altid en kompleks beslutning at tage, fordi det er kernen i projektet, og systemets succes eller fiasko afhænger af det.
Der er tusind forskellige typer mikrocontrollere, hver med en unik funktion eller konkurrencemæssig fordel fra formfaktor til pakkestørrelse, til kapaciteten på RAM og ROM, der gør dem egnet til bestemte applikationer og uegnet til bestemte applikationer. For at undgå hovedpine, der følger med at vælge den rigtige, vælger designere ofte mikrokontrollere, som de kender, som til tider, selv om de ikke rigtig opfylder projektets krav. Dagens artikel vil se på nogle af de vigtige faktorer, man skal se på, når man vælger en mikrocontroller, herunder blandt andet arkitektur, hukommelse, grænseflader og I / O-fast ejendom.
Vigtige faktorer, du skal overveje, når du vælger en MCU
Følgende er nogle af de vigtige faktorer, du skal se på, når du vælger en mikrokontroller, herunder blandt andet arkitektur, hukommelse, grænseflader og I / O-fast ejendom.
1. Ansøgning
Den første ting, du skal gøre, før du vælger en mikrokontroller til ethvert projekt, er at udvikle en dyb forståelse af den opgave, som den mikrocontroller-baserede løsning skal implementeres til. Et teknisk specifikationsark udvikles altid under denne proces, og det hjælper med at bestemme de specifikke funktioner, som mikrokontrolleren, der skal bruges til projektet. Et godt eksempel på, hvordan applikationen / brugen af enheden bestemmer den mikrocontroller, der skal bruges, vises, når en mikrocontroller med en flydende punktenhed vedtages til design af en enhed, der skal bruges til at udføre operationer, der involverer mange decimaltal.
2. Vælg Microcontroller Architecture
Arkitekturen for en mikrocontroller henviser til, hvordan mikrocontrolleren er struktureret internt. Der er to store arkitekturer, der bruges til design af mikrokontroller;
- Von Neumann Architecture
- Harvard Architecture
Von Neumann-arkitekturen har brugen af den samme bus til at overføre data og hente instruktionssæt fra hukommelsen. Derfor kan dataoverførsel og hentning af instruktioner ikke udføres på samme tid og er normalt planlagt. På den anden side har Harvard-arkitekturen brug af separate busser til transmission af data og hentning af instruktioner.
Hver af disse arkitekturer har sin egen fordel og ulempe. Harvard-arkitekturen er for eksempel RISC-computere (Reduced instruction Set) og er således i stand til at udføre flere instruktioner med lavere cyklusser end CISC-computere (Complex instruction Set), der er baseret på von Neumann-arkitekturen. En vigtig fordel ved de Harvard (RISC) baserede mikrokontrollere er det faktum, at eksistensen af forskellige busser til data og instruktions sæt muliggør adskillelse af hukommelsesadgangen og operationerne i den aritmetiske og logiske enhed (ALU). Dette reducerer mængden af beregningsstyrke, der kræves af mikrocontrolleren, og det fører til reducerede omkostninger, lavt strømforbrug og varmeafledning, hvilket gør dem ideelle til design af batteridrevne enheder. Mange ARM,AVR og PIC Microcontrollers er baseret på Harvard-arkitekturen. Eksempel på mikrokontroller, der bruger Von Neumann-arkitekturen, inkluderer blandt andet 8051, zilog Z80.
3. Bitstørrelse
En mikrokontroller kan enten være 8bits, 16bits, 32bits og 64bits, hvilket er den aktuelle maksimale bitstørrelse, som en microcontroller besidder. Bitstørrelsen på en mikrokontroller repræsenterer størrelsen på et “ord”, der bruges i instruktionssættet til mikrokontrolleren. Dette betyder, at repræsentationen af hver instruktion, adresse, variabel eller register i en 8-bit mikrocontroller tager 8-bit. En af nøgleimplikationerne af bitstørrelsen er mikrokontrollerens hukommelseskapacitet. I en 8-bit mikrokontroller er der for eksempel 255 unikke hukommelsesplaceringer som dikteret af bitstørrelsen, mens der i en 32-bit mikrocontroller er 4.294.967.295 unikke hukommelsesplaceringer, hvilket betyder, at jo højere bitstørrelse, jo højere er antallet af unikke hukommelsesplaceringer til rådighed til brug på mikrokontrolleren. Producenter i disse dage dogudvikler måder at give adgang til mere hukommelsesplacering til mindre bitstørrelsesmikrocontrollere via personsøgning og adressering, så 8bits mikrocontroller bliver 16bits adresserbare, men dette har en tendens til at komplicere programmering for den integrerede softwareudvikler.
Effekten af bitstørrelse opleves sandsynligvis mere markant, når der udvikles firmware til mikrocontrolleren, især til aritmetiske operationer. De forskellige datatyper har forskellig hukommelsesstørrelse til forskellige mikrokontroller bitstørrelser. For eksempel bruger en variabel, der er erklæret som et usigneret heltal, som på grund af datatypen vil kræve 16 bit hukommelse, i koder, der skal udføres på en 8bit mikrocontroller, vil føre til tab af den mest betydningsfulde byte i dataene, som til tider kan være meget vigtigt for opnåelsen af den opgave, som enheden, som mikrokontrolleren skal bruges til, blev designet.
Det er således vigtigt at vælge en mikrokontroller med en bitstørrelse, der svarer til den af de data, der skal behandles.
Det er sandsynligvis vigtigt at bemærke, at de fleste applikationer i disse dage er mellem 32bits og 16 bits mikrokontrollere på grund af de teknologiske fremskridt, der er integreret i disse chips.
4. Grænseflader til kommunikation
Kommunikation mellem mikrokontrolleren og nogle af de sensorer og aktuatorer, der vil blive brugt til projektet, kan kræve brug af en grænseflade mellem mikrocontrolleren og sensoren eller aktuatoren for at lette kommunikationen. Tag for eksempel at forbinde en analog sensor til en mikrocontroller, vil kræve, at mikrokontrolleren har nok ADC (analog til digitale konvertere), eller som jeg nævnte tidligere, kan en hastighed på en DC-motor kræve brug af PWM-interface på mikrocontrolleren. Så det vil være vigtigt at bekræfte, at den mikrocontroller, der skal vælges, har nok af de nødvendige grænseflader inklusive UART, SPI, I2C blandt andre.
5. Driftsspænding
Driftsspændingen er det spændingsniveau, som et system er designet til at fungere med. Det er også det spændingsniveau, som visse egenskaber ved systemet er relateret til. I hardwaredesign bestemmer driftsspændingen til tider det logiske niveau, hvormed mikrocontrolleren kommunikerer med andre komponenter, der udgør systemet.
5V og 3,3V spændingsniveauet er den mest populære driftsspænding, der bruges til mikrokontrollere, og der skal træffes en beslutning om, hvilket af disse spændingsniveau der vil blive brugt under processen med at udvikle enhedens tekniske specifikation. Brug af en mikrocontroller med en 3, 3V driftsspænding i designet af en enhed, hvor de fleste af de eksterne komponenter, sensorer og aktuatorer fungerer på et 5V spændingsniveau, vil ikke være en meget smart beslutning, da der vil være behov for at implementere logisk niveau shifters eller konvertere for at muliggøre udveksling af data mellem mikrokontrolleren og de andre komponenter, og dette vil øge produktionsomkostningerne og de samlede omkostninger ved enheden unødigt.
6. Antal I / O-pins
Antallet af generelle eller specielle input / output-porte og (eller) ben, som en mikrokontroller besidder, er en af de vigtigste faktorer, der påvirker valget af mikrokontroller.
Hvis en mikrocontroller skulle have alle de andre funktioner, der er nævnt i denne artikel, men ikke har nok IO-ben som krævet af projektet, kan den ikke bruges. Det er vigtigt, at mikrokontrolleren f.eks. Har nok PWM-ben til at styre antallet af jævnstrømsmotorer, hvis hastighed varieres af enheden. Mens antallet af I / O-porte på en mikrocontroller kan udvides ved hjælp af skiftregistre, kan det ikke bruges til alle slags applikationer og øger omkostningerne ved de enheder, det bruges i. Derfor er det bedre at sikre, at den mikrocontroller, der skal vælges til designet, har det krævede antal generelle og specielle I / O-porte til projektet.
En anden vigtig ting at huske på, når man bestemmer mængden af generelle eller specielle I / O-ben, der kræves til et projekt, er den fremtidige forbedring, der kan udføres på enheden, og hvordan disse forbedringer kan påvirke antallet af I / O-ben krævet.
7. Hukommelseskrav
Der er flere typer hukommelse forbundet med en mikrocontroller, som designeren skal passe på, når de foretager et valg. De vigtigste er RAM, ROM og EEPROM. Mængden af hver af disse hukommelser, der er nødvendige, kan være vanskelig at estimere, indtil den bliver brugt, men at dømme efter den mængde arbejde, der kræves af mikrocontrolleren, kan forudsigelser foretages. Disse ovennævnte hukommelsesenheder danner data- og programhukommelsen for mikrokontrolleren.
Programhukommelsen på mikrocontrolleren lagrer firmwaren til mikrocontrolleren, så når strømmen afbrydes fra mikrocontrolleren, går firmwaren ikke tabt. Mængden af programhukommelse, der kræves, afhænger af mængden af data som biblioteker, tabeller, binære filer til billeder osv., Der er nødvendige for at firmwaren skal fungere korrekt.
Datahukommelsen på den anden side bruges i løbetid. Alle variabler og data genereret som et resultat af behandling blandt andre aktiviteter under kørselstid er lagret i denne hukommelse. Således kan kompleksiteten af beregninger, der vil forekomme i løbet af kørselstiden, bruges til at estimere mængden af datahukommelse, der er nødvendig for mikrokontrolleren.
8. Pakke størrelse
Pakkestørrelsen refererer til formfaktoren for mikrokontrolleren. Mikrocontrollere kommer generelt i pakker, der spænder fra QFP, TSSOP, SOIC til SSOP og den almindelige DIP-pakke, hvilket gør montering på brødbræt til prototyping let. Det er vigtigt at planlægge forud for produktionen og forestille sig, hvilken pakke der er bedst.
9. Strømforbrug
Dette er en af de vigtigste faktorer, der skal overvejes, når du vælger en mikrokontroller, især når den skal implementeres i et batteridrevet program som IoT-enheder, hvor det ønskes, at mikrocontrolleren har så lav effekt som muligt. Dataarket for de fleste mikrocontrollere indeholder information om flere hardware- og (eller) softwarebaserede teknikker, der kan bruges til at minimere mængden af strøm, der forbruges af mikrocontrolleren i forskellige tilstande. Sørg for, at den mikrocontroller, du vælger, opfylder strømkravet til dit projekt.
10. Support til mikrokontroller
Det er vigtigt, at den mikrocontroller, du vælger at arbejde med, har tilstrækkelig support inklusive; kodeeksempler, referencedesign og om muligt et stort samfund online. At arbejde med en mikrocontroller for første gang kan komme med forskellige udfordringer, og at have adgang til disse ressourcer hjælper dig med hurtigt at overvinde dem. Mens det er en god ting at bruge de nyeste mikrokontroller på grund af de seje nye funktioner, det fulgte med, anbefales det at sikre, at mikrokontrolleren har eksisteret i mindst 3-4 måneder for at sikre de fleste af de tidlige problemer, der kan være forbundet med mikrokontrolleren. ville være blevet løst, da forskellige kunder ville have foretaget masser af test af mikrocontrolleren med forskellige applikationer.
Det er også vigtigt at vælge en mikrokontroller med et godt evalueringssæt, så du hurtigt kan begynde at opbygge prototype og nemt teste funktioner. Evalueringssættene er en god måde at erhverve erfaring på, blive fortrolig med den værktøjskæde, der bruges til udvikling, og spare tid under udviklingen af enheden.
Valg af den rigtige mikrokontroller til et projekt vil fortsat være et problem, hver hardware designer bliver nødt til at løse, og selvom der er få flere faktorer, der kan påvirke valget af mikrokontroller, er disse faktorer nævnt ovenfor de vigtigste.