Kasutame palju arendusplaate, mida me sageli kasutame, alates Arduinost ja lõpetades paljude teistega MCU seadmed või mikrokontrollerid. Mõned olulised kiibid, et saaks neid seadmeid programmeerida ja et programmeerija loodud juhiseid saab töödelda oodatud tulemuste saamiseks.
Kuid Mikrokontrollerite sektor on üsna lai., nagu see on ka protsessorite või mikroprotsessorite puhul, kuna seal pole mitte ainult palju disainereid või tootjaid, vaid ka mudeleid, vaid on ka palju erinevaid perekondi, mida peaksite teadma. Niisiis, me pühendame selle artikli just sellele asjale, et saaksite teada, milline neist võib teile teie projektide jaoks kõige rohkem huvi pakkuda…
Mis on mikrokontroller või MCU?
Un mikrokontroller või MCU (MicroController Unit) See on kompaktne seade, mis integreerib ühele kiibile keskprotsessori (CPU), mälu ja välisseadmete funktsioonid. See seade on paljude elektrooniliste süsteemide keskpunkt ja on sisseehitatud elektroonika valdkonnas põhiline. Lühidalt, suurepärane alternatiiv juhtmega elektroonikale, võimaldades seega ühel kiibil täita paljusid funktsioone paindlikult, kuna see on programmeeritav.
Mikrokontrollereid kasutatakse a mitmesuguseid rakendusi tänu oma mitmekülgsusele ja tõhususele. Mõned näited mikrokontrollerite kasutamisest hõlmavad autode, kodumasinate, tööstuslike automaatikasüsteemide, protsesside juhtimissüsteemide, mänguasjade, turvasüsteemide, arendusplaatide ja paljude muude elektroonikaseadmete juhtimissüsteeme.
Mikrokontrollerite osad
Mikrokontrollerid on integreeritud seadmed ja kõik nende komponendid on realiseeritud kiibil või integraallülitusel. Vahel kõige põhilisemad osad nendest kiipidest on:
- CPU (keskseade): Keskprotsessor on mikrokontrolleri aju ja selle kõige olulisem osa. See üksus vastutab programmi andmete ja juhiste kasutamise eest nende õigeks tõlgendamiseks ja töötlemiseks täitmisüksustes, et saavutada oodatud tulemused. See tähendab, et CPU teeb kõik arvutustoimingud ja teeb otsuseid programmi loogika alusel. Protsessori kiirus ja efektiivsus määravad suuresti mikrokontrolleri jõudluse. Lisaks on neil tavaliselt ka elementaarsed osad nagu katkestussüsteemid, mis võimaldavad mikrokontrolleril teatud sündmustele õigeaegselt reageerida. Kui toimub konkreetne sündmus, näiteks signaali sisend või taimer, mis jõuab teatud väärtuseni, võib mikrokontroller oma praeguse ülesande katkestada, et sellele sündmusele reageerida.
- mälu: neil on tavaliselt kahte tüüpi mälu, näiteks RAM ja välkmälu. RAM-i kasutatakse ajutiste andmete, näiteks programmide moodustavate käskude ja andmete (muutujad, konstandid jne) salvestamiseks programmi täitmise ajal. Kuigi välkmälu kasutatakse käivitatava programmi salvestamiseks ja see on püsiv nagu RAM, nii et kui toide katkeb või seade välja lülitatakse, jääb programm alles.
- Sisend-/väljundvälisseadmed (I/O): võimaldab mikrokontrolleril suhelda välismaailmaga. Nende hulka võivad kuuluda digitaalsed I/O-pordid, analoog-digitaalmuundurid (ADC), digitaal-analoogmuundurid (DAC), sideliidesed, nagu UART, SPI ja I2C, mitmesugused kontrollerid, taimerid, loendurid, GPIO ja teised.
Mille poolest see erineb mikroprotsessorist või CPU-st?
Mikroprotsessor ja mikrokontroller on elektroonikavaldkonnas kaks põhikomponenti, kuid neil on olulisi erinevusi struktuuri ja kasutuse osas, kuigi paljud inimesed ajavad need kaks segamini või usuvad, et need on samad.
Kuigi CPU ainult integreerub funktsionaalsed üksused Käskude, registrite, aga ka täitmiskäskude (nt ALU, FPU jne) juhtimiseks ja tõlgendamiseks ning mida saab paindlikumalt kombineerida teiste abielementidega, on mikrokontrollerid integreerimise mõttes mõnevõrra suletud. paljud osad, mille protsessor välja jätab. Tegelikult, kuigi protsessor on arvuti aju, võib MCU-d pidada terviklikuks arvutiks, kuna see sisaldab kõiki põhiosi ühel kiibil.
Kuid ärge ajage suuremat integratsiooni segi mõistetega keerukus ja jõudlus. Kui praegused mikroprotsessorid on äärmiselt keerulised ja väga suure jõudlusega, siis praegustel mikrokontrolleritel on tavaliselt palju madalama ja lihtsama jõudlusega integreeritud protsessor. Tegelikult võib paljudel tänapäevastel mikrokontrolleritel olla sama jõudlus kui aastakümnete tagustel mikroprotsessoritel. Veelgi enam, nagu me hiljem näeme, on meil isegi 8-bitised või 16-bitised mikrokontrollerid nagu 70ndate protsessorid.
Erinevused võrreldes SoC-ga?
Kuna mikrokontroller integreerib samale kiibile mitu elementi, Samuti aetakse seda sageli segi SoC-ga (System on a Chip)Samas pole ka see sama. Nagu CPU vs MCU puhul, integreerivad SoC-d ka protsessori, millel on palju suurem jõudlus kui enamikul praegustel mikrokontrolleritel. Lisaks on SoC palju keerulisem ja täiustatum süsteem. Teisest küljest ei integreeri SoC tavaliselt mõnda mikrokontrollerisse integreeritud osi, kuna rakendused, mille jaoks see on ette nähtud, seda ei vaja, näiteks RAM ja välkmälu, ADC-muundurid jne.
Vähe de historia
Varased mitmeahelalised mikroprotsessorid, nagu Four-Phase Systemsi AL1 1969. aastal ja Garrett AiResearchi MP944 1970. aastal, töötati välja mitme MOS LSI kiibiga. Esimene ühekiibiline mikroprotsessor oli Intel 4004, mis ilmus 1971. Need protsessorid vajasid funktsionaalse süsteemi juurutamiseks mitut välist kiipi, mis oli kallis. Kuid peaaegu paralleelselt töötati välja see, mida me täna tunneme mikrokontrollerina. TEMA omistati IT-inseneridele Gary Boone'ile ja Michael Cochranile1971. aastal loodi edukas esimene mikrokontroller TMS 1000, mis ühendas kirjutuskaitstud mälu, lugemis-/kirjutusmälu, protsessori ja kella ühel kiibil. Tegelikult, kuigi see on teine lugu, tekitas see patendisõja ja kohtuasjad mikroprotsessori autorsuse üle...
1970ndatel aastatel Jaapani elektroonikatootjad hakkasid autodele mikrokontrollereid tootma. Need muutusid järk-järgult populaarseks ja vastuseks ühe kiibiga TMS 1000 olemasolule töötas Intel välja juhtimisrakenduste jaoks optimeeritud kiibil oleva arvutisüsteemi Intel 8048, mis ühendas RAM-i ja ROM-i samal kiibil koos protsessoriga. Aja möödudes paranesid püsimälud ja need salvestati tehases püsiva programmiga nagu esimesed ROMid kuni PROM-i ehk 1993. aasta EEPROM-i kasutuselevõtuni, mis võimaldas seda kustutada ja ümber programmeerida. mõne teise programmiga lihtsal viisil ja nii mitu korda kui soovite.
Vähehaaval sündisid seda tüüpi kiipide ümber ettevõtted, nagu Atmel, Microchip Technology ja paljud teised. Ka teised selle sektori ettevõtted hakkasid oma MCU-sid levitama, nagu Intel, Analog Devices, Cypress, AMD, ARM, Hitachi, EPSON, Motorola, Zilog, Infineon, Lattice, National Semiconductor, NEC, Panasonic, Renesas, Rockell, Sony , STMicroelectronics , Synopsis, Toshiba jne.
Tänapäeval on mikrokontrollerid odavad ja hõlpsasti ligipääsetavad nii harrastajatele kui ka paljudele erinevatele tööstussektoritele. Lisaks arvatakse, et neid müüakse peaaegu 5 miljardit 8-bitist seadet kogu maailmas, mis on praegu enim kasutatud. Leiate neid kodumasinatest, sõidukitest, arvutitest, telefonidest, tööstusmasinatest ja paljust muust. Lisaks on neil õnnestunud miniatuurida maksimaalselt, luues ühed maailma väikseimad arvutid, isegi palju väiksemad kui soolatera...
ISA ja mikrokontrollerite perekonnad
Nüüd, kui teate natuke rohkem, mis on MCU või mikrokontroller, vaatame mõnda tähtsamad perekonnad nendest mikrokontrolleritest. Ja nagu CPU-sid, saab neid jagada vastavalt ISA-le, st kasutatavate käskude, registrite ja andmetüüpide repertuaarile ning sellest sõltub käivitatavate binaarprogrammide ühilduvus, mistõttu need ei ühildu. perede vahel. Ja need perekonnad on täiesti sõltumatud kiibis sisalduvast mudelist, kaubamärgist või seadmetest.
hulgast populaarseimad pered meil on järgmine:
- Lapsed: on Altera FPGA-de pehmete tuumade põlvkond, mis on nüüdseks Inteli kasutuses.
- Mustuim: on 16/32-bitiste mikroprotsessorite perekond, mille on välja töötanud, toodab ja turustab Analog Devices. Protsessoritel on ka sisseehitatud digitaalse signaaliprotsessori (DSP) funktsionaalsus, mida teostab 16-bitine korrutamine-akumulatsioon (MAC).
- TiigerSHARC: tähendab Super Harvard Architecture Single-Chip Computer, samuti Analog Devices'ilt. Sel juhul on need ideaalsed rakenduste jaoks, mis nõuavad suurt arvutusjõudlust väikese energiatarbimisega. Need protsessorid pakuvad ainulaadset mäluarhitektuuri, mis võimaldab tõhusat juurdepääsu andmetele ja juhistele ilma Von Neumanni siiniarhitektuuridega seotud jõudlustrahvita.
- Cortex-M- ARM-i Cortex-M mikrokontrollerid on populaarne 32-bitiste mikrokontrollerite perekond, mis on väga energiatõhusad ja pakuvad head jõudlust. Need on eriti populaarsed tööstus- ja tarbijarakendustes ning esindavad praegu enamikku paljude ettevõtete müüdavatest kaasaegsetest kiipidest.
- AVR32: See on Atmeli toodetud 32-bitine RISC-mikrokontrolleri arhitektuur ja leiate selle paljudelt arendusplaatidelt, nagu Arduino ja selle kloonid.
- RISC-V: Selle avatud ISA eesmärk on ületada ARM ja vähehaaval on see mikrokontrollerite maailmas tähtsust omandama, kuna see on väga paindlik ja võimaldab seda kasutada ilma autoritasu maksmata.
- PIC- on Microchip Technology välja töötatud 8-bitiste mikrokontrollerite perekond, mis on tuntud oma täiustatud RISC-arhitektuuri poolest ja on selles valdkonnas üsna populaarsed.
- PowerQUICC: põhinevad IBMi Power Architecture tehnoloogial ja neid kasutas Motorola (nüüd Freescale), need toetavad kõiki manustatud võrguseadmeid, tööstuslikke ja üldisi manustatud rakendusi.
- Spansioon: Need on Fujitsu MCU-d, mis on keskendunud analoog- ja digitaaltoodetele ning loodud tõhususe ja tasakaalustatud jõudluse tagamiseks.
- 8051: See on Inteli välja töötatud 8-bitine mikrokontroller, kuigi nüüd leiate, et seda toodavad ka teised ettevõtted. See on üks populaarsemaid mikrokontrollereid ja seda kasutatakse paljudes rakendustes. 8051 on Harvardi arhitektuuril põhinev CISC-mikrokontroller.
- TriCore: on Infineon Technologiesi poolt välja töötatud mikrokontroller. TriCore ühendab RISC protsessori tuuma, mikrokontrolleri ja DSP elemendid ühel kiibil. Tol ajal oli see revolutsioon.
- MC-48 või 8048: See on Inteli liini mikrokontroller, millel on 64 baiti muutmälu ja juurdepääs 4096 baidile välisele programmimälule.
- Mico8- on 8-bitine mikrokontrolleri perekond, mis on täielikult realiseeritud Lattice FPGA-de üldmälus ja loogikas.
- Propeller: 32-bitine mitmetuumaline arhitektuur, mille on välja töötanud Parallax Inc. Igal Propelleril on 8 identset 32-bitist protsessorit, mis on ühendatud ühise jaoturiga.
- Põhitempel- on mikrokontroller, mille ROM-i on sisse ehitatud väike spetsiaalne BASIC-tõlk (PBASIC). Seda toodab Parallax, Inc ja see oli üsna populaarne toode tegijatele, kes soovisid enne Arduino väljaandmist kodus teha palju projekte.
- SuperH: on 32-bitine RISC-arvutuskäskude komplekti arhitektuur, mille on välja töötanud Hitachi ja mida praegu toodab Renesas ning mis keskendub manustatud süsteemide mikrokontrolleritele.
- Tiva: on Texas Instrumentsi välja töötatud seeria mikrokontroller. Sellel on sisseehitatud protsessori taktsagedus kuni 80 MHz koos ujukomaseadmega (FPU), mis tagab suurepärase jõudluse.
- Microblaze: on kõrgelt integreeritud protsessorisüsteem, mis on mõeldud kontrollerirakenduste jaoks. MicroBlaze on täielikult rakendatud Xilinxi (nüüd AMD) FPGA-de mälus ja üldotstarbelises loogikas, see tähendab pehmes tuumas.
- Picoblaze: sarnane eelmisele, kuid antud juhul on see 8-bitine ja lihtsam, integreeritumate rakenduste jaoks.
- XCore: Need on XMOS-i mitmetuumalised MCU-d, 32-bitised, mis on programmeeritud C-keelekeskkonda ja töötavad deterministlikult ja madala latentsusajaga. Need on väga terviklikud ja neid saab rakendada plaatide kujul.
- Z8: on pärit Zilogist ja need on 8-bitised seadmed, mis pakuvad laias valikus jõudlus- ja ressursivalikuid. Need mikrokontrollerid sobivad ideaalselt suuremahuliste ja kulutundlike rakenduste jaoks, sealhulgas tarbija-, auto-, turva- ja HVAC-tooted.
- Z180: See on veel üks populaarsemaid Zilogis enne uue eZ väljaandmist, mis on värskendanud eelmisi vahemikke. See sisaldab 8-bitist protsessorit, mis ühildub Z80 jaoks kirjutatud suure tarkvarabaasiga. Z180 perekond lisab suurema jõudluse ja integreeritud välisseadmed, nagu kellageneraator, 16-bitised loendurid/taimerid, katkestuskontroller, ooteoleku generaatorid, jadapordid ja DMA-kontroller.
- STM: Sellel STMicroelectronicsi perekonnal on mõned MCU-üksused, mis põhinevad selle ettevõtte enda arhitektuuril, kuigi viimastes mudelites on see valitud, nagu paljudel muudel juhtudel, integreerida 32-bitine ARM Cortex-M seeria. See pakub tooteid, mis ühendavad väga suure jõudluse, reaalajas võimalused, digitaalse signaalitöötluse, väikese võimsusega/madalpinge töö ja ühenduvuse, säilitades samas täieliku integratsiooni ja arendamise lihtsuse.
Neid on veel, kuid need on kõige olulisemad…