Microcontroller ( Eng. Micro Controller Unit, MCU ) er et mikrokredsløb designet til at styre elektroniske enheder .
En typisk mikrocontroller kombinerer funktionerne fra en processor og periferiudstyr på en enkelt chip , indeholder RAM og/eller ROM . Det er i det væsentlige en enkelt-chip computer , der er i stand til at udføre relativt enkle opgaver.
Den adskiller sig fra mikroprocessoren i input-output-enhederne integreret i mikrokredsløbet, timere og andre perifere enheder.
Med fremkomsten af enkelt-chip mikrocomputere er begyndelsen på æraen med masseanvendelse af computerautomatisering inden for ledelse forbundet. Tilsyneladende , denne omstændighed bestemte udtrykket "controller" ( engelsk controller - regulator, control device).
På grund af faldet i den indenlandske produktion og øget import af udstyr, herunder computere, har udtrykket "mikrocontroller" (MC) fortrængt det tidligere brugte udtryk "single-chip mikrocomputer".
Det første patent på en enkelt-chip mikrocomputer blev udstedt i 1971 til ingeniørerne Michael Cochran og Gary Boon, ansatte i det amerikanske Texas Instruments . Det var dem, der foreslog at placere ikke kun processoren, men også hukommelsen med input-output-enheder på en chip .
I 1976 [1] frigiver det amerikanske firma Intel i8048 mikrocontrolleren . I 1978 udgav Motorola sin første mikrocontroller, MC6801, som var kompatibel med den tidligere udgivne MC6800 mikroprocessor. I 1980 frigiver Intel følgende mikrocontroller: i8051 . Et godt sæt ydre enheder, et fleksibelt valg af ekstern eller intern programhukommelse og en overkommelig pris sikrede, at denne mikrocontroller var en succes på markedet. Med hensyn til teknologi var i8051-mikrocontrolleren et meget komplekst produkt for sin tid - 128 tusinde transistorer blev brugt i krystallen , hvilket var 4 gange antallet af transistorer i 16-bit i8086 -mikroprocessoren .
I USSR blev udviklingen af originale mikrocontrollere udført, og produktionen af kloner af de mest succesrige udenlandske prøver blev også mestret [2] [3] [4] [5] . I 1979, i USSR, udviklede NII TT en single-chip 16-bit computer K1801BE1 , hvis mikroarkitektur blev kaldt " Electronics NTs ".
I 2013 var der mere end 200 modifikationer af mikrocontrollere kompatible med i8051, produceret af to dusin virksomheder og et stort antal mikrocontrollere af andre typer. 8-bit, 16-bit og 32-bit PIC mikrocontrollere fra Microchip Technology , AVR mikrocontrollere fra Atmel (siden 2016 fremstillet af Microchip [6] ), 16-bit MSP430 fra TI , samt 32-bit mikrocontrollere arkitektur ARM , som er udviklet af ARM Limited og licenseret til andre virksomheder til deres produktion. På trods af populariteten af de ovennævnte mikrocontrollere i Rusland, så verdensranglisten med hensyn til salg i 2009 anderledes ud, ifølge Gartner Group: Renesas Electronics rangerede først med en bred margin , Freescale nummer to , Samsung nummer tre , efterfulgt af Microchip og TI, herefter - alle de øvrige [7] .
Når man designer mikrocontrollere, er der en afvejning mellem størrelse og pris på den ene side og fleksibilitet og ydeevne på den anden side. For forskellige applikationer kan det optimale forhold mellem disse og andre parametre variere meget. Derfor er der et stort antal typer mikrocontrollere, der adskiller sig i processormodulets arkitektur, størrelsen og typen af indbygget hukommelse, sæt periferiudstyr, type kabinet osv.
I modsætning til konventionelle computermikroprocessorer bruger mikrocontrollere ofte Harvard-hukommelsesarkitekturen , det vil sige separat lagring af data i RAM og instruktioner i ROM .
Ud over RAM kan mikrocontrolleren have indbygget ikke -flygtig hukommelse til lagring af programmer og data. Mange controllermodeller har slet ikke dæk til tilslutning af ekstern hukommelse.
De billigste typer hukommelse tillader kun en enkelt skrivning, eller det lagrede program skrives til chippen på fremstillingsstadiet (konfiguration af et sæt teknologiske masker). Sådanne enheder er velegnede til masseproduktion i tilfælde, hvor controllerprogrammet ikke vil blive opdateret. Andre modifikationer af controllere har mulighed for gentagne gange at omskrive programmet i ikke-flygtig hukommelse.
En delvis liste over perifere enheder , der kan bruges i mikrocontrollere, omfatter:
Pris- og strømbegrænsninger begrænser controllernes clockhastighed. Selvom producenter stræber efter at sikre driften af deres produkter ved høje frekvenser, giver de samtidig kunderne et valg ved at frigive modifikationer designet til forskellige frekvenser og forsyningsspændinger. Mange modeller af mikrocontrollere bruger statisk hukommelse til RAM og interne registre . Dette giver controlleren mulighed for at arbejde ved lavere frekvenser og ikke engang miste data, når urgeneratoren er helt stoppet. Forskellige strømbesparende tilstande er ofte tilvejebragt , hvor en del af de perifere enheder og computermodulet er slukket.
Brugen af en tilstrækkeligt kraftig computerenhed med brede kapaciteter i en moderne mikrocontroller , bygget på en enkelt chip i stedet for et helt sæt, reducerer størrelsen, strømforbruget og omkostningerne ved enheder bygget på dens basis betydeligt.
Bruges til at styre forskellige enheder og deres individuelle enheder:
I industrien:
Mens 8-bit mikroprocessorer til generelle formål er blevet fuldstændig afløst af modeller med højere ydeevne, bliver 8-bit mikrocontrollere fortsat meget brugt. Dette skyldes, at der er mange applikationer, hvor høj ydeevne ikke er påkrævet, men lave omkostninger er vigtige. Samtidig er der mikrocontrollere med større computeregenskaber, såsom digitale signalprocessorer , der bruges til at behandle en stor datastrøm i realtid (f.eks. lyd, videostrømme).
Mikrocontroller programmering udføres normalt i assemblersprog eller C , selvom der er compilere til andre sprog såsom Forth og BASIC . BASICs indbyggede tolke bruges også .
Kendte C-kompilere til MK:
Kendte BASIC -kompilere til MK:
Til fejlretning af programmer bruges softwaresimulatorer (særlige programmer til personlige computere, der simulerer driften af en mikrocontroller), in-circuit emulatorer (elektroniske enheder, der simulerer en mikrocontroller, der i stedet kan forbindes til den indlejrede enhed, der udvikles) og en fejlretningsgrænseflade , for eksempel JTAG .
Mikrocontrollere | ||||||||
---|---|---|---|---|---|---|---|---|
Arkitektur |
| |||||||
Producenter |
| |||||||
Komponenter | ||||||||
Periferi |
| |||||||
Grænseflader | ||||||||
OS | ||||||||
Programmering |
|
processorteknologier | Digitale|||||||||
---|---|---|---|---|---|---|---|---|---|
Arkitektur | |||||||||
Instruktionssæt arkitektur | |||||||||
maskinord | |||||||||
Parallelisme |
| ||||||||
Implementeringer | |||||||||
Komponenter | |||||||||
Strømstyring |