Manieren om een ​​beste microcontroller te selecteren voor op microcontrollers gebaseerde projecten

Probeer Ons Instrument Voor Het Oplossen Van Problemen





Weet jij hoe je de beste microcontroller selecteert voor op microcontrollers gebaseerde projecten? Het selecteren van de juiste microcontroller voor een bepaalde toepassing is een van de meest kritische beslissingen die het slagen of mislukken van de taak bepalen.

Er zijn verschillende soorten microcontrollers beschikbaar en als u heeft besloten welke serie u wilt gebruiken, kunt u eenvoudig uw eigen embedded systeemontwerp starten. Ingenieurs moeten hun eigen criteria hebben om de juiste selectie te maken.




Hier in dit artikel bespreken we de basisoverwegingen bij het selecteren van een microcontroller.

Microcontrollers voor embedded systeemontwerp

Microcontrollers voor embedded systeemontwerp



In veel gevallen, in plaats van gedetailleerde kennis te hebben over een geschikte microcontroller voor het project, kiezen mensen vaak willekeurig een microcontroller. Dit is echter een slecht idee.

De belangrijkste prioriteit bij het kiezen van een microcontroller is om informatie over het systeem te hebben, zoals blokdiagrammen, stroomdiagrammen en randapparatuur voor invoer / uitvoer.

Hier zijn de 7 belangrijkste manieren die moeten worden gevolgd om ervoor te zorgen dat de juiste microcontroller wordt geselecteerd.


Bit selectie van microcontroller

De microcontrollers zijn verkrijgbaar in verschillende bitsnelheden, zoals 8-bits, 16-bits en 32-bitsnelheden. Het aantal bits verwijst naar de grootte van datalijnen die de gegevens beperken. Het kiezen van een beste microcontroller voor ingebed systeemontwerp is belangrijk in termen van bitselectie. De prestaties van de microcontroller nemen toe met de bitgrootte.

8-bits microcontrollers

8 bit microcontrollers

8 bit microcontrollers

8-bit microcontrollers hebben 8 datalijnen die 8-bit data tegelijk kunnen verzenden en ontvangen. Het heeft geen extra functies zoals seriële communicatie lezen / schrijven enz. Deze zijn gebouwd met minder on-chip geheugens en worden daarom gebruikt voor kleinere toepassingen. Ze zijn tegen lagere kosten verkrijgbaar. Als de complexiteit van uw project echter toeneemt, ga dan voor een andere microcontroller met een hoger bit.

16-bits microcontroller:

16 bit microcontroller

16 bit microcontroller

16-bits controllers hebben 16 datalijnen die 16-bits gegevens tegelijk kunnen verzenden en ontvangen. Het heeft geen extra functies in vergelijking met 32-bits controllers. Het is hetzelfde als een 8-bit microcontroller, maar het is toegevoegd met enkele extra functies.

De prestaties van een 16-bits microcontroller zijn sneller dan 8-bits-controllers en het is kostenbesparend. Het is toepasbaar voor kleinere toepassingen. Het is een geavanceerde versie van 8-bit microcontrollers.

32-bits microcontroller

32-bits microcontroller

32-bits microcontroller

De 32-bits microcontrollers hebben 32 datalijnen die worden gebruikt om 32-bits gegevens tegelijk te verzenden en te ontvangen. De 32-microcontrollers hebben een aantal extra futures zoals SPI, I2C, floating point units en procesgerelateerde functies.

De 32-bits microcontrollers zijn gebouwd met een maximaal bereik aan on-chip-geheugens en worden daarom gebruikt voor grotere toepassingen. De uitvoering is erg snel en kostenbesparend. Ze zijn een geavanceerde versie van 16-bits microcontrollers.

Familie selectie van microcontroller

Er zijn verschillende leveranciers die verschillende architecturen van microcontrollers produceren. Daarom heeft elke microcontroller een unieke instructie- en registerset en zijn er geen twee microcontrollers die op elkaar lijken.

Een programma of code die voor de ene microcontroller is geschreven, kan niet op de andere microcontroller worden uitgevoerd. Voor verschillende op microcontrollers gebaseerde projecten zijn verschillende families microcontrollers nodig.

Verschillende families van microcontrollers zijn de 8051-familie, de AVR-familie, de ARM-familie, de PIC-familie en nog veel meer.

AVR Familie van microcontrollers

AVR-familie van microcontrollers

AVR-familie van microcontrollers

Een AVR-microcontroller accepteert een instructiegrootte van 16 bits of 2 bytes. Het bestaat uit flash-geheugen dat het 16 bit adres bevat. Hier worden de instructies direct opgeslagen.

AVR-microcontrollers-ATMega8, ATMega32 worden veel gebruikt.

PIC-familie van microcontrollers

PIC-familie van microcontrollers

PIC-familie van microcontrollers

Elke instructie accepteert een PIC-microcontroller van 14 bits. Het flash-geheugen kan een adres van 16 bit opslaan. Als de eerste 7 bits worden doorgegeven aan het flashgeheugen, kunnen de resterende bits later worden opgeslagen.

Als er echter 8 bits worden doorgegeven, gaan de resterende 6 bits verloren. Op een lichte noot, dit hangt eigenlijk af van de leveranciers van de fabricage.

Daarbij is het selecteren van een geschikte familie van microcontrollers voor embedded systeemontwerp erg belangrijk in het proces.

Architectuurselectie van microcontroller

De term ‘architectuur’ definieert een combinatie van randapparatuur die wordt gebruikt om de taken uit te voeren. Er zijn twee soorten microcontroller-architectuur voor op microcontrollers gebaseerde projecten.

Van Neumann Architecture

De Von Neumann Architecture is ook bekend als Princeton Architecture. In deze architectuur communiceert de CPU met een enkele data- en adresbus naar RAM en ROM. De CPU haalt de instructies tegelijkertijd uit RAM en ROM.

Von-Neumann-architectuur

Von-Neumann-architectuur

Deze instructies worden opeenvolgend uitgevoerd via een enkele bus, waardoor het meer tijd kost om elke instructie uit te voeren. We kunnen dus zeggen dat het proces van de Von Newman-architectuur erg traag is.

Harvard-architectuur

In de architectuur van Harvard heeft de CPU twee aparte bussen, namelijk de adresbus en de databus om te communiceren met het RAM en ROM. De CPU haalt de instructies uit de RAM- en ROM-geheugens op en voert deze uit via een aparte databus en adresbus, waardoor het minder tijd kost om elke instructie uit te voeren, waardoor deze architectuur erg populair is.

Harvard-architectuur

Harvard-architectuur

Dus voor elk embedded systeemontwerp is de beste microcontroller meestal degene met de architectuur van Harvard.

Instructie Set selectie van microcontroller

De instructieset is een set basisinstructies zoals rekenkundig, voorwaardelijk, logisch enz. Die worden gebruikt om basisbewerkingen in de microcontroller uit te voeren. Microcontroller-architectuur werkt op basis van instructieset.

Voor alle op microcontrollers gebaseerde projecten zijn microcontrollers op basis van RISC- of CISC-instructieset beschikbaar.

RISC-gebaseerde architectuur

RISC staat voor computer met gereduceerde instructieset. Een RISC-instructieset voert alle rekenkundige, logische, voorwaardelijke, Booleaanse bewerkingen uit in één of twee instructiecycli. Het bereik van de RISC-instructieset is<100.

RISC-gebaseerde architectuur

RISC-gebaseerde architectuur

Een op RISC gebaseerde machine voert instructies sneller uit omdat er geen microcodelaag is. De RISC-architectuur bevat speciale laadopslagbewerkingen die worden gebruikt om de gegevens uit interne registers en geheugen te verplaatsen.

Een RISC-chip is gemaakt met een kleiner aantal transistors, waardoor de kosten laag zijn. Voor elk embedded systeemontwerp heeft een RISC-chip meestal de voorkeur.

CISC-gebaseerde architectuur

CISC staat voor computer met complexe instructieset. De CISC-instructieset heeft vier of meer instructiecycli nodig om alle rekenkundige, logische, voorwaardelijke, Booleaanse instructies uit te voeren. Het bereik van een CISC-instructieset is> 150.

CISC-gebaseerde architectuur

CISC-gebaseerde architectuur

Een op CISC gebaseerde machine voert de instructies langzamer uit in vergelijking met de RISC-architectuur, omdat hier instructies worden geconverteerd naar een kleine codegrootte voordat ze worden uitgevoerd.

Geheugenselectie van de microcontroller

De geheugenselectie is erg belangrijk bij het kiezen van de beste microcontroller, omdat de systeemprestaties afhankelijk zijn van de geheugens.

Elke microcontroller kan elk type geheugen bevatten, namelijk:
 On-Chip-geheugen
 Geheugen buiten de chip

On-chip en off-chip geheugen

On-chip en off-chip geheugen

On-chip geheugen

Het on-chip geheugen verwijst naar elk geheugen zoals RAM, ROM dat is ingebed in de microcontroller-chip zelf. Een ROM is een type opslagapparaat dat de gegevens en de toepassing erin permanent kan opslaan.

Een RAM-geheugen is een soort geheugen dat wordt gebruikt om de gegevens en programma's tijdelijk op te slaan. Microcontrollers met on-chip geheugen bieden een snelle gegevensverwerking, maar het opslaggeheugen is beperkt. Dus off-chip microcontrollers worden gebruikt om de hoge geheugenopslagmogelijkheden te bereiken.

Geheugen buiten de chip

Het off-chip-geheugen verwijst naar elk geheugen zoals ROM, RAM en EEPROM dat extern is aangesloten. De externe geheugens worden soms secundaire geheugens genoemd die worden gebruikt om grote hoeveelheden gegevens op te slaan.

Hierdoor wordt de snelheid van externe geheugencontrollers verlaagd tijdens het ophalen en opslaan van de gegevens. Dit externe geheugen heeft externe verbindingen nodig, zodat de complexiteit van het systeem toeneemt.

Chip selectie van microcontroller

Chipkeuze is erg belangrijk bij het ontwikkelen van een op microcontroller gebaseerd project ​Het IC wordt gewoon een pakket genoemd. De geïntegreerde schakelingen zijn afgeschermd voor eenvoudige bediening en beschermen de apparaten tegen beschadiging. Geïntegreerde schakelingen bestaan ​​uit duizenden basiscomponenten in elektronica zoals transistors, diodes, weerstanden, condensatoren.

De microcontrollers zijn verkrijgbaar in veel verschillende soorten IC-pakketten en hebben elk hun eigen voor- en nadelen. De meest populaire IC is de Dubbel in-line pakket (DIP), meestal gebruikt in elk embedded systeemontwerp.

DIP (Dual in line) Microcontroller

DIP (Dual in line) Microcontroller

1. DIP (Dual In-line Pakket)
2. SIP (Single In-line Package)
3. SOP (Small Outline-pakket)
4. QFP (quad plat pakket)
5. PGA (Pin Grid Array)
6. BGA (Ball Grid Array)
7. TQFP (Tin Quad plat pakket)

IDE-selectie van de microcontroller

IDE staat voor geïntegreerde ontwikkelomgeving en het is een softwaretoepassing die wordt gebruikt in de meeste op microcontrollers gebaseerde projecten. IDE bestaat normaal gesproken uit een broncode-editor, compiler, interpreter en debugger. Het wordt gebruikt om de embedded applicaties te ontwikkelen. IDE wordt gebruikt om een ​​microcontroller te programmeren.

IDE selectie van microcontrollers

IDE selectie van microcontrollers

Een IDE bestaat uit de volgende componenten: -

Broncode-editor
Compiler
Debugger
Links
Tolk
Hex-bestandsconverter

Editor

De broncode-editor is een teksteditor die speciaal is ontworpen voor de programmeurs om de broncode van applicaties te schrijven.

Compiler

Een compiler is een programma dat de taal op hoog niveau (C, Embedded C) vertaalt naar de taal op machineniveau (formaat 0 'en 1). De compiler scant eerst het volledige programma en vertaalt het programma vervolgens naar de machinecode die door de computer wordt uitgevoerd.

Er zijn twee soorten compilers: -

Native compiler

Wanneer het applicatieprogramma op hetzelfde systeem is ontwikkeld en gecompileerd, staat het bekend als een native compiler. BIJV .: C, JAVA, Oracle.

Cross-compiler

Wanneer het applicatieprogramma op een hostsysteem is ontwikkeld en op het doelsysteem is gecompileerd, wordt het een cross-compiler genoemd. Alle op microcontrollers gebaseerde projecten zijn ontwikkeld door de cross-compiler. Ex Embedded C, assemble, microcontrollers.

Debugger

Een debugger is een programma dat wordt gebruikt om de andere programma's, zoals het doelprogramma, te testen en te debuggen. Foutopsporing is een proces waarbij het aantal bugs of defecten in het programma wordt gevonden en verminderd.

Links

De linker is een programma dat een of meer objectieve bestanden van de compiler haalt en deze combineert tot één uitvoerbaar programma.

Tolk

Een tolk is een onderdeel van de software dat de taal op hoog niveau regel voor regel omzet in machinaal leesbare taal. Elke instructie van de code wordt afzonderlijk op sequentiële wijze geïnterpreteerd en uitgevoerd. Als er een fout wordt gevonden in een deel van de instructie, wordt de interpretatie van de code gestopt.

Verschillende microcontroller met applicaties

Hier is een samenvatting van een tabel met informatie over verschillende microcontrollers en de projecten waarin ze kunnen worden gebruikt.

Verschillende microcontrollers voor verschillende toepassingen

Verschillende microcontrollers voor verschillende toepassingen

Helemaal klaar om de beste microcontroller voor uw project te kiezen? We hopen dat u nu een duidelijk beeld in uw hoofd heeft van welke microcontroller het meest geschikt is voor uw embedded systeem. Ter referentie, een verscheidenheid aan embedded projecten is te vinden op de website van edgefxkits.

Hier is een fundamentele vraag voor u: voor de meeste op microcontrollers gebaseerde projecten, waarbij de beste functies worden gecombineerd die we hierboven hebben genoemd, welke familie van microcontrollers heeft de meeste voorkeur en waarom?

Geef alstublieft uw antwoorden samen met uw feedback in het commentaargedeelte hieronder.

Fotocredits:

8 bit microcontrollers van rapidonline
16 Bit Microcontroller van directe industrie
32 Bit Microcontroller van rapidonline
AVR-familie van microcontrollers door electroline
PIC-familie van microcontrollers door ingenieursgarage
Harvard Architecture door eecatalog.com
Op RISC gebaseerde architectuur door electronicsweekly.com
Op CISC gebaseerde architectuur door studydroid.com
DIP (Dual in line) Microcontroller van t2.gstatic.com