8-bitars kontra 32-bitars mikrokontroller: vad är skillnaden? | oldium (2023)

När det kommer till elektronik har jag väldigt dåliga köpvanor. Jag vet inte om jag ska köpa en ny bärbar dator eller uppgradera min surfplatta till en iPadPro. Det slutar med att jag köper båda och lyssnar på oändliga föreläsningar från min fästman.

Lyckligtvis är jag lite mer beslutsam när det kommer till frågan om 8-bitars kontra 32-bitars mikrokontroller för mina hårdvarudesigner. Kostnadsmässigt skiljer de sig inte så mycket åt, men den ena är mer kraftfull än den andra. Men för att göra rätt val måste du förstå de grundläggande skillnaderna mellan 8-bitars och 32-bitars MCU:er.

8-bitars kontra 32-bitars mikrokontroller: vad är skillnaden? | oldium (1)

8-bitars kontra 32-bitars mikrokontroller: grunderna

Strängt taget bearbetar en 8-bitars mikrokontroller endast 8 bitar av data vid varje given tidpunkt. Antalet bitar som används av en MCU (detta kallas ibland för "bitdjup" eller "databredd") definierar också storleken på registret (8 bitar per register), antalet minnesadresser (endast 28, dvs 256 adresser) och det största antalet som kan behandlas (även här 28256 heltal: 0 till 255). Även om 8-bitars mikrokontroller har begränsade adresser, använder vissa av dem personsökning. Innehållet i sidregistret avgör vilken inbyggd minnesbank som används.

(Video) Understanding the differences between 8bit, 16bit, 32bit, and 64bit -- Arrow Tech Trivia

Teoretiskt kan 32-bitars mikrokontroller hantera nummer upp till 232bearbeta. De har 32-bitars aritmetiska logiska enheter, register och bussbredd. Generellt sett betyder detta att en 32-bitars styrenhet kan hantera fyra gånger så mycket data som sin 8-bitars motsvarighet, vilket gör den tekniskt mycket mer dataeffektiv. Det finns dock andra skillnader mellan 8-bitars och 32-bitars mikrokontroller som går utöver aritmetiska operationer.

aritmetiska operationer

En begränsning är ganska uppenbar: den för aritmetiska operationer. En 8-bitars mikrokontroller stöder vanligtvis bara aritmetiska operationer som resulterar i tal i intervallet 0 till 255 (eller -127 till 128). Större antal kan dock delas upp i två trådar. Detta gör dock programmeringen mer komplex eftersom trådning inte görs automatiskt på hårdvarunivå.

I allmänhet tillåter mikrokontroller med större databredd aritmetiska operationer med större siffror. En 32-bitars mikrokontroller kan hantera osignerade nummer från 0 till 4 294 967 295 (eller -2 147 483 647 till 2 147 483 648 för signerade nummer). Om du använder ett programmeringsspråk på hög nivå som C eller en dedikerad IDE (t.ex. AtmelStudio), bör du ha tillgång till ett bibliotek som stöder större antal eller användning av vetenskaplig notation.

Formfaktor med 8, 16 och 32 bitars mikrokontroller

Det kan låta som att 32-bitars mikrokontroller definitivt skulle behöva ett större paket än 8-bitars varianten. Detta är dock inte alltid fallet. Vissa 8-bitars, 16-bitars och 32-bitars mikrokontroller är tillgängliga i samma formfaktor (Microchip erbjuder till exempel en rad mikrokontroller med olika bitdjup, alla tillgängliga i TQFP-64-format). 8-bitars mikrokontroller finns i DIP-paket, som de populära Arduino-kretskorten.

(Video) difference between 8 16 32 bits Microcontroller | 8 16 32 bit microcontroller | what is 8 bit 16 bit

8-bitars kontra 32-bitars mikrokontroller: vad är skillnaden? | oldium (2)

Inbäddad programvara och minnesanvändning

På mjukvarunivå avgör de typer av data som används i din kod vilken typ av mikrokontroller du ska använda. Till exempel använder ett osignerat heltal som deklareras i en 8-bitars styrenhet endast 1 byte data. I en 32-bitars mikrokontroller upptar samma variabel dock 4 byte. Du kanske tänker: "Vänta! En 32-bitars MCU har 16 miljoner gånger fler adresser. Vad bryr jag mig om om ett nummer upptar fyra byte?" Det maximala antalet unika adresser som är tillgängliga säger ingenting om den faktiska mängden minne i en mikrokontroller. On-chip-minne är vanligtvis inom KB-intervallet, så det beror på mängden data som din kod kräver.

När du väljer mellan en 8-bitars och en 32-bitars mikrokontroller måste du ta hänsyn till mer än bara databredden. Genom att överväga de stora skillnaderna mellan 8-bitars och 32-bitars mikrokontroller kan du fatta välgrundade beslut för din design.

hastighet och minne

En av de största fördelarna med 32-bitars mikrokontroller jämfört med 8-bitars varianten är den betydligt överlägsna bearbetningshastigheten. En standard 8-bitars mikrokontroller körs vanligtvis på 8MHz, medan 32-bitarsversionen kan klockas till flera hundra MHz. Du kanske inte märker hastighetsskillnaden i inbäddad datoranvändning när du växlar mikrokontrollern tillSlå på ett mekaniskt reläanvända sig av. Det kommer dock att bli märkbart när du kör applikationer som kräver mycket data för att bearbetas. ADörrtillträdeskontroll, som måste behandla tusentals transaktioner per dag, kräver till exempel en 32-bitars mikrokontrollerprocessor.

8-bitars kontroller är billiga och enkla att använda. Och så de är fortfarande extremt populära fyra år efter deras introduktion. Men om du arbetar med en produkt som har en stor internRandom Access Memory (RAM)behövs, kan du behöva byta ut 8-bitars mikrokontrollern med en 32-bitars variant. 32-bitars mikrokontroller har ofta åtta gånger mer RAM än sina 8-bitars motsvarigheter. Om du behöver en stor buffert för att lagra ljuddata är en 32-stifts mikrokontroller det bättre processoralternativet.

(Video) Could your next 8-bit microcontroller be a 32-bit?

8-bitars kontra 32-bitars mikrokontroller: vad är skillnaden? | oldium (3)

Lägga till kringutrustning

En del av grunderna för design av inbyggda system är också att skapa en lista över nödvändig kringutrustning baserad på projektets krav. Om du behöver Ethernet, Universal Serial Bus (USB-stack), flera UART-enheter (Universal Asynchronous Receiver-Transmitter) och en CAN-buss (Controller Area Network), skicka in8-bitars mikrokontrollerinte från. Du kan behöva lägga till ytterligare kringutrustning, vilket kan kosta mer än enbart en 32-bitars mikrokontroller.

I allmänhet är 32-bitars mikrokontroller utrustade med ett stort antal funktioner jämfört med 8-bitars varianter. Tack vare sin enastående bearbetningshastighet kan en 32-bitars mikrokontroller effektivt bearbeta flera kringutrustning. Kom dock ihåg att 32-bitars mikrokontroller är flerStrömförbrukar, särskilt när alla inbyggda system och kringutrustning är påslagna.

Hårdvarudesign och inlärningskurva

En PCB med en 32-bitars mikrokontroller, som vanligtvis har mer än 100 stift, är definitivt mer komplex än en 8-bitars mikrokontroller, som sällan överstiger 30 stift. När det gäller montering är SOIC-formatet definitivt lättare att löda än QFP (Quad Flat Package) eller BGA (Ball Grid Array)-paket. Dessutom finns det färre kvalitetsproblem på SOIC-paket med bredare tonhöjder. Om en 8-bitars mikrokontroller räcker för ditt projekt, bör du inte använda en 32-stifts mikrokontroller. Annars kan du använda fördesignade fotavtryck i PCB-designprogramvaran för att minimera designarbetet.

Om du söker efter handledningar för mikrokontrollerprogrammering kommer du att upptäcka att de flesta hänvisar till 8-bitars mikrokontroller, som 8051 eller Arduino, ett populärt 8-bitars baserat mikrokontrollerkort. Det beror på att det är lättare att komma igång med en 8-bitars mikrokontroller. En 32-bitars mikrokontroller har en mer komplex arkitektur, så det tar längre tid för användarna att bli bekanta med den. För projekt med enkel kod, som en produktionsräknare, är det inte särskilt ekonomiskt för firmware-utvecklare att studera mikrokontroller under en vecka när de kunde ställa in all firmware med en 8-bitars mikrokontroller för mycket mindre.

(Video) Hur datorns minne fungerar - Kanawat Senanan

8-bitars kontra 32-bitars mikrokontroller: vad är skillnaden? | oldium (4)

Applikationer för 32-bitars mikrokontroller

Det finns många applikationer för 32-bitars mikrokontroller. Vi fokuserar dock på när deinteborde användas. I allmänhet, för alla applikationer som kräver snabba beräkningar av stora tal, bör du använda en 16- eller 32-bitars mikrokontroller. Exempel inkluderar FFT-beräkningar, bildbehandling, högkvalitativa ljud- eller videoapplikationer och edge computing. Vissa minnes- och bearbetningsintensiva uppgifter som involverar maskininlärning eller AI kräver mer kraftfull hårdvara, till exempel en ARM MCU eller en enkortsdator.

Om du behöver mäta analoga signaler är en 32-bitars mikrokontroller inte nödvändigtvis bättre än en 8-bitars variant. Bitdjupet som anges för mikrokontroller motsvarar inte bitdjupet för den integreradeanalog-till-digital-omvandlare (ADC). Kommersiellt tillgängliga mikrokontroller innehåller en inbyggd ADC som uppnår hastigheter på 8, 10, 12 eller 16 bitar.

I mobila applikationer erbjuder 32-bitars mikrokontroller högre datorkraft, men på bekostnad av strömförbrukningen. Med en 32-bitars mikrokontroller kan viktiga beräkningar utföras snabbare, så att CPU:n kan spendera mer tid i viloläge. Detta betyder dock inte att 32-bitars mikrokontroller är mer energieffektiva. 8-bitars mikrokontroller erbjuder vanligtvis längre batteritid och mer balanserad kringutrustning än jämförbara 32-bitars enheter.

Välj den bästa MCU för din PCB-design

För att välja den bästa mikrokontrollern för din PCB-design samtidigt som du minimerar ansträngning och kostnad, måste du noga väga de viktigaste fördelarna och nackdelarna med 8-bitars och 32-bitars mikrokontroller. Genom att överväga designkrav som hastighet, komplexitet, kringutrustning och flashminne kan du hjälpa till att välja den bästa mikrokontrollernför din designUndvik långa beslut och minimera potentiella motgångar.

(Video) Marlin Firmware - VScode PlatformIO Install - Build Basics

Med ett proffsPCB designverktyg, Till exempel.CircuitStudio®från Altium kan du bestämma designkrav i förväg samtidigt som du optimerar din inlärningskurva.

Fortfarande inte säker på om du ska använda en 8-bitars eller en 32-bitars mikrokontroller för ditt projekt?Prata med en expertför Altium Designer.

tanke ledarskap

Videos

1. BigTreeTech - Manta - M8P - Basics
(Ed's 3d Tech)
2. How to use ESP32 WiFi and Bluetooth with Arduino IDE full details with examples and code
(Robojax)
3. Review of XYS3580 5A Step-down Step-up 5A 35V Constant Current converter
(WattHour)
4. Review of WUZHI WZ10020L 100V 1000W Step Down MPPT Converter CNC
(WattHour)
5. Complete guide to PCA9685 16 channel Servo controller for Arduino with code Version of 5 ( V1)
(Robojax)
6. BigTreeTech - SKR 3 - TMC2209 with Sensor less homing
(Ed's 3d Tech)

References

Top Articles
Latest Posts
Article information

Author: Dean Jakubowski Ret

Last Updated: 09/30/2023

Views: 5405

Rating: 5 / 5 (50 voted)

Reviews: 89% of readers found this page helpful

Author information

Name: Dean Jakubowski Ret

Birthday: 1996-05-10

Address: Apt. 425 4346 Santiago Islands, Shariside, AK 38830-1874

Phone: +96313309894162

Job: Legacy Sales Designer

Hobby: Baseball, Wood carving, Candle making, Jigsaw puzzles, Lacemaking, Parkour, Drawing

Introduction: My name is Dean Jakubowski Ret, I am a enthusiastic, friendly, homely, handsome, zealous, brainy, elegant person who loves writing and wants to share my knowledge and understanding with you.