10M+ Elekroonilised komponendid laos
ISO sertifikaat
Garantii kaasas
Kiire üleandmine
Rasked leiduvad osad?
Me Allikas Seame.
Küsi pakkumist

8051 mikrokontrolleri arhitektuur, PIN-diagramm, funktsioonid ja rakendused

feb 28 2026
Allikas: DiGi-Electronics
Sirvi: 831

8051 mikrokontroller on endiselt üks laialdasemalt tunnustatud ja põhilisi manustatud kontrollereid digitaalses elektroonikas. Selles artiklis käsitletakse 8051 mikrokontrolleri tihvti detaile, sisemist arhitektuuri, plokkdiagrammi selgitust, spetsifikatsioone, rakendusi, võrdlust 8085 mikroprotsessoritega ja palju muud.

Figure 1. 8051 Microcontroller

8051 mikrokontrolleri põhiseade

8051 mikrokontroller on 8-bitine manussüsteemikontroller, mille arendas algselt Intel ja mis ühendab protsessori, mälu, sisend/väljund pordid, taimerid ja kommunikatsiooniliidesed üheks kiibiks. See on loodud elektroonikaseadmete juhtimiseks, täites programmeeritud käske ja suheldes otse riistvarakomponentidega. Erinevalt üldotstarbelisest arvutiprotsessorist on 8051 ehitatud spetsiaalselt spetsiaalseteks juhtimisülesanneteks, nagu sensorite lugemine, ekraanide juhtimine, mootorite haldamine, sidesignaalide käsitlemine ja ajastatud operatsioonide sooritamine. Selle eesmärk on toimida manussüsteemide "ajuna", võimaldades automatiseeritud juhtimist ja otsuste tegemist kompaktsetes ja kulutõhusates elektroonilistes disainides.

8051 mikrokontrolleri tihvti detailid

Figure 2. 8051 Microcontroller Pinout Details

Pin nr.PIN-nimiTüüpKirjeldus
1 – 8P1.0 – P1.7I/O port (port 1)Üldotstarbeline 8-bitine kahesuunaline I/O port. Basic 8051-s pole alternatiivseid funktsioone.
9RSTLähtestamineAktiivne kõrge lähtestus sisend. Kõrge impulss lähtestab mikrokontrolleri.
10 – 17P3.0 – P3.7I/O port (port 3)Topeltfunktsionaalne port. Sisaldab RXD, TXD, INT0, INT1, T0, T1, WR, RD.
18XTAL2KellVäljund sisemisest ostsillaatorivõimendist.
19XTAL1KellSisend sisemisele ostsillaatorile ja kella generaatorile.
20GNDVõimsusMaandusreferents (0V).
21 – 28P2.0 – P2.7I/O / AadressibussÜldine sisend/väljund või kõrge järgu aadressibuss (A8–A15) välismälu kasutamisel.
29PSENKontrollProgramm Store Enable. Kasutatakse välise programmi mälu lugemiseks.
30ALE/PROGKontrollAadressi lukustus on lubatud. Eraldab aadressi/andmed välismälu liideses.
31EA/VPPKontrollVälise ligipääsu lubamine. Valib sisemise või välise programmi mälu.
32 – 39P0.0 – P0.7Sisend/väljund / Aadress/andmebussMultiplexitud madala järgu aadressi/andmebuss (AD0–AD7) või üldotstarbeline I/O.
40VCCVõimsus+5V toiteallika sisend.

8051 mikrokontrolleri arhitektuur

Figure 3. 8051 Microcontroller Block Diagram

Allpool on toodud 8051 põhiarhitektuurilised plokid ja kuidas igaüks neist töötab.

Keskprotsessor (CPU)

CPU on 8051 mikrokontrolleri tuum ning vastutab käskude täitmise, aritmeetiliste ja loogiliste toimingute sooritamise ning kõigi sisemiste tegevuste koordineerimise eest. See sisaldab aritmeetilist loogikaühikut (ALU), akumulaatorit, B-registrit, programmi olekusõna (PSW), programmi loendurit (PC), andmeosutit (DPTR) ja virnaosutit (SP). CPU töötleb 8-bitiseid andmeid ning juhib käskude dekodeerimist, ajastust ja andmevoogu mälu ja perifeerseadmete vahel. Iga mikrokontrolleri poolt teostatav toiming toimub selle keskse protsessori kaudu.

Programmi mälu (Koodimälu)

Programmi mälu salvestab käsud, mida mikrokontroller täidab. Klassikalises 8051-s sisaldab see tavaliselt 4 KB sisemist ROM-i, mis säilitab salvestatud käsud isegi siis, kui toide on eemaldatud. Arhitektuur võimaldab ka laiendada kuni 64 KB välist programmimälu. Kuna 8051 järgib Harvardi arhitektuuri, on programmimälu eraldiseisev andmemälust, tagades organiseeritud käskude täitmise ja parema efektiivsuse.

Andmemälu (RAM)

Andmemälu kasutatakse ajutiseks salvestamiseks programmi täitmise ajal. Standardne 8051 sisaldab 128 baiti sisemist RAM-i, mis on jagatud registripankadeks, bitiaadressitavaks mäluks, üldotstarbeliseks RAM-iks ja virnaruumiks. See mälu salvestab muutujaid, vahetulemusi ja tööandmeid programmi käivitamise ajal. Välist andmemälu saab vajadusel laiendada kuni 64 KB-ni suuremate rakenduste jaoks.

Sisend/väljund (I/O) pordid

8051 sisaldab nelja 8-bitist paralleelset I/O porti: Port 0, Port 1, Port 2 ja Port 3. Need pordid võimaldavad mikrokontrolleril suhelda otse väliste seadmetega, nagu sensorid, ekraanid, lülitid ja mootorid. Mõnel portil on ka alternatiivsed funktsioonid. Näiteks võivad port 0 ja port 2 toimida aadressi- ja andmebussidena välismälu ligipääsu jaoks, samas kui port 3 pakub erifunktsioone nagu jadaside ja välised katkestused. See paindlik pordidisain teeb 8051 sobivaks erinevateks riistvaraliideste rakendusteks.

Taimerid/loendurid

8051 sisaldab kahte 16-bitist taimerit/loendurit: taimer 0 ja taimer 1. Neid taimereid kasutatakse viivituste genereerimiseks, ajavahemike mõõtmiseks, väliste sündmuste lugemiseks ja baudi kiiruste tootmiseks järjestikuse side jaoks. Need parandavad süsteemi efektiivsust, tehes ajastustoiminguid riistvaras, võimaldades protsessoril samaaegselt täita teisi ülesandeid.

Katkestuste kontrollisüsteem

Katkestussüsteem võimaldab 8051-l ajutiselt peatada oma praeguse ülesande, et reageerida kõrgema prioriteediga sündmustele. Mikrokontroller toetab viit katkestusallikat, sealhulgas kahte välist katkestust, kahte taimeri katkestust ja ühte jadasidekatkestust. Kui katkestus tekib, hüppab protsessor automaatselt eelmääratud teenindusrutiini juurde ja jätkab põhiprogrammi pärast lõpetamist. See funktsioon parandab reageerimisvõimet reaalajas rakendustes.

Jadakommunikatsiooniliides

8051 sisaldab sisseehitatud täisdupleks-UART-i (Universal Asünkroonne vastuvõtja/saatja) jadasideks. See võimaldab mikrokontrolleril edastada ja vastu võtta andmeid spetsiaalsete TXD ja RXD kontaktide kaudu. Seda funktsiooni kasutatakse laialdaselt suhtlemiseks arvutite, kommunikatsioonimoodulite ja teiste mikrokontrolleritega.

Ostsillaator ja kella skeem

Ostsillaatori ahel tagab kella signaali, mis on vajalik käskude täitmiseks ja perifeerse töö jaoks. 8051 kasutab väliseid kristallühendusi XTAL1 ja XTAL2 tihvtide kaudu, et genereerida stabiilseid kellaimpulsse. Need kella impulsid sünkroniseerivad kõik sisemised toimingud ja määravad käskude täitmise kiiruse.

Sisemine bussisüsteem

Sisemine bussisüsteem ühendab protsessori, mälu ja perifeerseadmed mikrokontrolleri sees. See sisaldab 8-bitist andmebussi, 16-bitist aadressibussi ja juhtsignaale. Andmebuss edastab andmeid, aadressibuss valib mälu asukohad ja juhtliinid haldavad lugemis-/kirjutamisoperatsioone. See organiseeritud bussistruktuur tagab sujuva suhtluse sisemiste komponentide vahel.

Kuidas ühendada LED-i 8051 mikrokontrolleriga

Allolev diagramm näitab lihtsat LED-liidesahelat 8051 mikrokontrolleriga. Üks üldotstarbeline I/O tihvt (P1.0) juhib LED-i läbi 220Ω voolupiirava takisti. Takisti kaitseb LED-i liigse voolu eest ja takistab nii LED-i kui ka mikrokontrolleri tihvti kahjustamist. Kui väljundpin P1.0 on seatud KÕRGELE (loogika 1), voolab vool mikrokontrollerist läbi takisti ja LED-i maandusse, põhjustades LED-i helendamise. Kui tihvt on seatud MADALAKS (loogika 0), peatub vooluvool ja LED kustub. See näitab lihtsat digitaalset väljundjuhtimist 8051 abil.

Figure 4. Interfacing LED with 8051 Microcontroller

Vooluring sisaldab ka olulisi tugikomponente mikrokontrolleri nõuetekohaseks toimimiseks. Lähtestusahel, mis koosneb kondensaatorist (10μF) ja takistist, tagab, et 8051 käivitub õigesti, kui see sisse lülitatakse. Kristallostsillaator (11,0592 MHz) koos kahe 33pF kondensaatoriga tagab käsu täitmiseks vajaliku kella signaali. Tõmbetakistid, mis on ühendatud Port 0-ga, tagavad stabiilsed loogikatasemed, kui neid kasutatakse I/O liinidena. Koos moodustavad need komponendid täieliku ja funktsionaalse LED-liideslahenduse, kasutades 8051 mikrokontrollereid.

8051 mikrokontrolleri tehnilised andmed

KategooriaSpetsifikatsioonÜksikasjad
CPU arhitektuur8-bitine protsessorTöötleb 8-bitiseid andmeid; sisaldab akumulaatori (A) ja B registrit
Programmi mäluSisemine ROM8 KB välklamp (tüüpilised täiustatud 8051 variandid); laiendatav kuni 64 KB välismälu
AndmemäluSisemine RAMKokku 256 baiti (128 baiti üldmälu + 128 baiti SFR ala)
Üldmälu (00H–7FH)128 baitiSisaldab 4 registripanka (R0–R7), bitiaadressitavat ala ja üldotstarbelist RAM-i
Erifunktsioonide registrid (80H–FFH)128 baitiJuhib taimereid, jadaporte, I/O porte, katkestusi ja süsteemifunktsioone
Registreeri pangad4 pankaIgas pangas on 8 üldotstarbelist registrit (R0–R7)
Stack Pointer (SP)8-bitinePunktid virna asukohale RAM-is
Programmi loendur (PC)16-bitineHoiab järgmise käsu aadressi
Andmepointer (DPTR)16-bitineKasutatud välismälu aadressimiseks (DPH ja DPL)
I/O pordid32 I/O tihvtiOrganiseeritud neljaks pordiks: P0, P1, P2, P3 (igaüks 8 bitti)
Taimerid/loendurid2 × 16-bitineTaimer 0 ja taimer 1 viivituse genereerimiseks ja sündmuste lugemiseks
Katkestused5 katkestusallikat2 Väline (INT0, INT1) + 3 Sisemine (Timer0, Timer1, Serial)
SeeriasideTäisdupleks UARTEralda Tx (Saatja) ja Rx (Vastuvõtt) liinid
OstsillaatorKiibisisene ostsillaatori ahelKella genereerimiseks on vaja välist kristalli
Aadressibuss16-bitineToetab kuni 64 KB välismälu
Andmebuss8-bitineAndmete edastamine nii sisemiselt kui ka väliselt
JuhtimisregistridMitmekordneSisaldab PCON, SCON, TMOD, TCON, IE, IP ja teisi
TöörežiimHarvardi arhitektuurEraldi programmi- ja andmemäluruumid

8051 mikrokontrolleri rakendused

• Tööstusautomaatikasüsteemid – 8051 mikrokontrollerit kasutatakse mootorite, releede ja sensorite juhtimiseks automatiseeritud tootmisliinides ja masinate juhtimissüsteemides.

• Kodumasinad – Haldab ajastust, temperatuuri reguleerimist ja kasutaja sisendi töötlemist seadmetes nagu pesumasinad ja mikrolaineahjud.

• Sisseehitatud juhtimissüsteemid – 8051 mikrokontroller toimib põhikontrollerina spetsiaalsetes manusrakendustes, mis nõuavad stabiilset ja ennustatavat tööd.

• Robootikaprojektid – see loeb andurandmeid ja juhib ajameid, muutes selle sobivaks väikesteks roboti- ja automaatikaprojektideks.

• Tarbeelektroonika – 8051 mikrokontroller on sageli integreeritud elektroonilistesse mänguasjadesse, pulditesse ja digitaalsetesse kelladesse signaali juhtimiseks ja loogikatöötlemiseks.

• Sidesüsteemid – toetab jadakommunikatsiooni arvutite, kommunikatsioonimoodulite ja teiste mikrokontrolleritega suhtlemiseks.

• Meditsiiniinstrumendid – 8051 mikrokontrollerit kasutatakse lihtsas jälgimises ja madala energiatarbega diagnostikaseadmetes.

• Autorakendused – See haldab põhilisi juhtimisfunktsioone, nagu ekraanihaldus ja sensorite jälgimine sõidukites.

• Turvasüsteemid – 8051 mikrokontrollerit kasutatakse alarmisüsteemides, klaviatuuripõhistes lukkudes ja juurdepääsukontrolliseadmetes.

• Haridus- ja koolitusprojektid – seda kasutatakse laialdaselt akadeemilistes laborites mikrokontrollerite programmeerimise ja sisseehitatud süsteemide disaini aluste õpetamiseks.

8051 mikrokontroller vs 8085 mikroprotsessor

Funktsioon8051 mikrokontroller8085 mikroprotsessor
TüüpMikrokontrollerMikroprotsessor
ArhitektuurHarvardi arhitektuur (eraldi kood ja andmemälu)Von Neumanni arhitektuur (jagatud mälu koodi ja andmete jaoks)
Andmete laius8-bitine8-bitine
CPUIntegreeritud 8-bitine protsessor kiibisiseste perifeerseadmetegaAinult 8-bitine protsessor (sisseehitatud lisaseadmeid pole)
Programmi mäluTavaliselt 4KB–8KB sisemine ROM (laiendatav kuni 64KB väliseks)Sisemist ROM-i ei ole (vajab välismälu)
Andmemälu128–256 baiti sisemine RAM (laiendatav)Sisemist RAM-i puudub (vajab välist RAM-i)
I/O pordid32 sisseehitatud I/O liini (4 porti)Sisseehitatud I/O porte ei ole (vajab väliseid liideskiipe)
Taimerid/loendurid2 × 16-bitist taimeritSisemisi taimereid ei ole (väliseid taimereid on vaja)
Katkestused5 katkestusallikat5 katkestussisendit (TRAP, RST 7.5, 6.5, 5.5, INTR)
SeeriasideSisseehitatud täisdupleks UARTSisseehitatud seriaalport puudub
OstsillaatorKiibisisene ostsillaatori skeemVajab välist kellageneraatorit
StackSisemine virn RAM-isStacki hallamine välises RAM-is
Aadressibuss16-bitine (toetab kuni 64KB välismälu)16-bitine (toetab kuni 64KB mälu)
Andmebuss8-bitine8-bitine
Perifeerne integratsioonVäga integreeritud (taimerid, jada, I/O, katkestused)Minimaalne integratsioon (ainult CPU)
Välised komponendid vajalikudVähem väliseid komponenteVajab mitut välist tugi-IC-d
EnergiatarveMadalKõrgem võrreldes mikrokontrolleripõhiste süsteemidega
Rakenduse fookusManussüsteemid ja juhtimisrakendusedÜldotstarbeline arvutus ja süsteemide arendus
KeerukusLihtne ja kompaktne süsteemidisainKeerukam süsteemidisain
HindMadalam süsteemi kogukuluKõrgem süsteemikulu väliste komponentide tõttu
Tüüpilised kasutusjuhtumidKodumasinad, robootika, automatiseerimine, manusseadmedVarased arvutisüsteemid, treeningkomplektid, protsessoripõhised süsteemid
Tutvustatud aasta1980 (Inteli poolt)1976 (Inteli poolt)

8051 eelised ja piirangud

8051 eelised

• Lihtne ja arusaadav arhitektuur

• Integreeritud protsessor, RAM, ROM, taimerid ja I/O pordid ühel kiibil

• Madala hinnaga ja laialdaselt kättesaadav

• Madal energiatarve

• Sisseehitatud jadasidetugi

• Mitmed katkestusallikad reaalajas rakendusteks

• Laiendatava välismälu tugi (kuni 64KB)

• Suur arendustööriistade ja õppevahendite ökosüsteem

• Stabiilne ja usaldusväärne manustatud juhtimisülesannete jaoks

8051 piirangud

• Piiratud sisemine RAM ja programmimälu

• 8-bitine töötlemine piirab arvutusvõimekust

• Madalam töötlemiskiirus võrreldes tänapäevaste mikrokontrolleritega

• Põhiversioonides pole sisseehitatud ADC ega DAC-i

• Piiratud lisaseadmed võrreldes arenenud MCU-dega (nt ARM, AVR)

• Nõuab keerukate rakenduste jaoks väliseid komponente

• Ei ole ideaalne kõrge jõudlusega või andmemahukate süsteemide jaoks

• Aegunud arhitektuur võrreldes tänapäevaste 32-bitiste kontrolleritega

Kokkuvõte

8051 mikrokontrolleri Harvardi arhitektuuri, integreeritud protsessori, organiseeritud mälustruktuuri, programmeeritavate I/O portide, taimerite, katkestussüsteemi ja jadakommunikatsiooni toe abil pakub see täielikku ja tõhusat lahendust spetsiaalsetele juhtimisrakendustele. Kuigi kaasaegsed mikrokontrollerid pakuvad kõrgemat jõudlust ja arenenumaid lisaseadmeid, on 8051 väärtuslik tänu lihtsusele, madalale hinnale, töökindlusele ja tugevale hariduslikule tähendusele.

Korduma kippuvad küsimused [KKK]

Q1. Milliseid programmeerimiskeeli kasutatakse 8051 mikrokontrolleri jaoks?

8051 on tavaliselt programmeeritud Embedded C ja assembleri keeles. Manustatud C on laialdaselt kasutusel tänu lihtsamale silumisele ja kaasaskantavusele, samas kui Assembly pakub täpset riistvaratasandi juhtimist.

Q2. Millised tarkvaratööriistad on 8051 programmeerimiseks parimad?

Populaarsed tööriistad on Keil μVision, Proteus (simulatsiooniks) ja SDCC (Small Device C kompilaator). Keil on kõige laialdasemalt kasutatav professionaalse arengu keskkond.

Q3. Mis on 8051 maksimaalne taktsagedus?

Klassikaline 8051 töötab tavaliselt kuni 12 MHz, samas kui kaasaegsed täiustatud variandid võivad sõltuvalt tootjast töötada palju suurematel kiirustel.

Q4. Kas 8051 saab ühenduda kaasaegsete sensorite ja moodulitega?

Jah, 8051 suudab suhelda kaasaegsete sensoritega digitaalse I/O, UART, SPI (tarkvara kaudu) ja I2C (bit-banging või välised IC-d) abil, kuigi see võib vajada täiendavaid liideskomponente.

Q5. Kuidas on 8051 toidetud ja mis on selle tööpinge?

Standardne 8051 töötab +5V juures. Siiski toetavad mõned kaasaegsed tuletised madalamaid pingeid, näiteks 3,3V madala energiatarbega rakenduste puhul.

Q6. Millised on tänapäeval levinumad 8051 perekonna variandid?

Populaarsed variandid hõlmavad AT89C51, AT89S52 ja teisi täiustatud 8051-ühilduvaid mikrokontrollereid erinevatelt tootjatelt, pakkudes rohkem mälu ja funktsioone.

Q7. Kuidas erineb 8051 tänapäevastest mikrokontrolleritest nagu ARM Cortex-M?

8051 on 8-bitine kontroller, mis on loodud lihtsateks juhtimisülesanneteks, samas kui ARM Cortex-M seadmed on 32-bitised protsessorid, millel on suurem kiirus, arenenud lisaseadmed ja suurem mälumaht.

Küsi pakkumist (Laevad homme)