10M+ Erdvinės dalys sandėlyje
ISO sertifikuotas
Garantija įtraukta
Greitas Pristatymas
Sunku Rasti Dalis?
Mes juos gauname.
Prašyti kainos

8051 mikrovaldiklio architektūra, kaiščių schema, funkcijos ir programos

Feb 28 2026
Šaltinis: DiGi-Electronics
Naršyti: 1419

8051 mikrovaldiklis išlieka vienu iš plačiausiai pripažintų ir pagrindinių įterptųjų valdiklių skaitmeninėje elektronikoje. Šiame straipsnyje bus aptarta 8051 mikrovaldiklio kontaktų informacija, vidinė architektūra, blokinės schemos paaiškinimas, specifikacijos, programos, palyginimas su 8085 mikroprocesoriais ir daug daugiau.

Figure 1. 8051 Microcontroller

8051 mikrovaldiklis pagrindinis

8051 mikrovaldiklis yra 8 bitų įterptosios sistemos valdiklis, kurį iš pradžių sukūrė "Intel", kuris integruoja procesorių, atmintį, įvesties / išvesties prievadus, laikmačius ir ryšio sąsajas į vieną lustą. Jis skirtas valdyti elektroninius prietaisus vykdant užprogramuotas instrukcijas ir tiesiogiai sąveikaujant su aparatūros komponentais. Skirtingai nuo bendrosios paskirties kompiuterinio procesoriaus, 8051 sukurtas specialiai specialioms valdymo užduotims, tokioms kaip jutiklių skaitymas, ekranų valdymas, variklių valdymas, ryšio signalų valdymas ir laiko operacijų atlikimas. Jo paskirtis yra tarnauti kaip įterptųjų sistemų "smegenys", įgalinančios automatizuotą valdymą ir sprendimų priėmimą kompaktiškuose, ekonomiškuose elektroniniuose dizainuose.

8051 mikrovaldiklio kontaktų informacija

Figure 2. 8051 Microcontroller Pinout Details

Smeigtuko Nr.PIN pavadinimasTipasAprašymas
1 – 8P1.0 – P1.7Įvesties / išvesties prievadas (1 prievadas)Bendrosios paskirties 8 bitų dvikryptis įvesties / išvesties prievadas. Nėra alternatyvių funkcijų pagrindiniame 8051.
9RSTAtstatytiAktyvi aukšto atstatymo įvestis. Didelis impulsas iš naujo nustato mikrovaldiklį.
10 – 17P3.0 – P3.7Įvesties / išvesties prievadas (3 prievadas)Dviejų funkcijų prievadas. Apima RXD, TXD, INT0, INT1, T0, T1, WR, RD.
18XTAL2LaikrodisIšėjimas iš vidinio osciliatoriaus stiprintuvo.
19XTAL1LaikrodisĮvestis į vidinį osciliatorių ir laikrodžio generatorių.
20GNDGaliaŽemės atskaitos taškas (0 V).
21 – 28P2.0 – P2.7I/O / Adreso magistralėBendrasis įvesties / išvesties arba aukštos eilės adreso magistralė (A8–A15), kai naudojama išorinė atmintis.
29PSENValdymasProgramų saugyklos įgalinimas. Naudojamas išorinei programos atminčiai nuskaityti.
30ALE / PROGValdymasĮgalinti adreso skląstį. Atskiria adresą / duomenis išorinėje atminties sąsajoje.
31EA/VPPValdymasIšorinės prieigos įgalinimas. Pasirenka vidinę arba išorinę programos atmintį.
32 – 39P0.0 – P0.7I/O / Adresas/Duomenų magistralėSutankinta žemos eilės adreso ir (arba) duomenų magistralė (AD0–AD7) arba bendrosios paskirties įvestis/išvestis.
40VCCGalia+5V maitinimo įvestis.

8051 mikrovaldiklio architektūra

Figure 3. 8051 Microcontroller Block Diagram

Žemiau pateikiami pagrindiniai 8051 architektūriniai blokai ir kaip kiekvienas iš jų veikia.

Centrinis procesorius (CPU)

CPU yra 8051 mikrovaldiklio šerdis ir yra atsakingas už instrukcijų vykdymą, aritmetinių ir loginių operacijų atlikimą bei visos vidinės veiklos koordinavimą. Tai apima aritmetinį loginį vienetą (ALU), akumuliatorių, B registrą, programos būsenos žodį (PSW), programos skaitiklį (PC), duomenų rodyklę (DPTR) ir rietuvės rodyklę (SP). Procesorius apdoroja 8 bitų duomenis ir kontroliuoja instrukcijų dekodavimą, laiką ir duomenų srautą tarp atminties ir periferinių įrenginių. Kiekviena mikrovaldiklio atliekama operacija valdoma per šį centrinį procesorių.

Programos atmintis (kodo atmintis)

Programos atmintyje saugomos instrukcijos, kurias vykdo mikrovaldiklis. Klasikiniame 8051 paprastai yra 4 KB vidinio ROM, kuris išsaugo saugomas instrukcijas net ir atjungus maitinimą. Architektūra taip pat leidžia išplėsti iki 64 KB išorinės programos atminties. Kadangi 8051 atitinka Harvardo architektūrą, programos atmintis yra atskirta nuo duomenų atminties, užtikrinant organizuotą instrukcijų vykdymą ir didesnį efektyvumą.

Duomenų atmintis (RAM)

Duomenų atmintis naudojama laikinam saugojimui vykdant programą. Standartas 8051 apima 128 baitus vidinės RAM, kuri yra padalinta į registrų bankus, bitų adresuojamą atmintį, bendrosios paskirties RAM ir rietuvės vietą. Ši atmintis saugo kintamuosius, tarpinius rezultatus ir veiklos duomenis, kol programa veikia. Išorinę duomenų atmintį taip pat galima išplėsti iki 64 KB, jei to reikia didesnėms programoms.

Įvesties / išvesties (I/O) prievadai

8051 turi keturis 8 bitų lygiagrečius įvesties / išvesties prievadus: 0 prievadą, 1 prievadą, 2 prievadą ir 3 prievadą. Šie prievadai leidžia mikrovaldikliui tiesiogiai susieti su išoriniais įrenginiais, tokiais kaip jutikliai, ekranai, jungikliai ir varikliai. Kai kurie prievadai taip pat turi alternatyvias funkcijas. Pavyzdžiui, 0 ir 2 prievadai gali būti naudojami kaip adresų ir duomenų magistralės išorinei atminčiai pasiekti, o 3 prievadas teikia specialias funkcijas, tokias kaip nuoseklusis ryšys ir išoriniai pertraukimai. Dėl šios lanksčios prievado konstrukcijos 8051 tinka įvairioms techninės įrangos sąsajų programoms.

Laikmačiai / skaitikliai

8051 turi du 16 bitų laikmačius / skaitiklius: laikmatis 0 ir laikmatis 1. Šie laikmačiai naudojami laiko vėlavimams generuoti, laiko intervalams matuoti, išoriniams įvykiams skaičiuoti ir nuosekliojo ryšio perdavimo spartai generuoti. Jie pagerina sistemos efektyvumą, tvarkydami laiko operacijas aparatinėje įrangoje, todėl procesorius gali vienu metu atlikti kitas užduotis.

Pertraukimo valdymo sistema

Pertraukimo sistema leidžia 8051 laikinai pristabdyti dabartinę užduotį, kad reaguotų į aukštesnio prioriteto įvykius. Mikrovaldiklis palaiko penkis pertraukimo šaltinius, įskaitant du išorinius pertraukimus, du laikmačio pertraukimus ir vieną nuosekliojo ryšio pertraukimą. Kai įvyksta pertrauka, procesorius automatiškai pereina prie iš anksto nustatytos paslaugos rutinos ir baigęs atnaujina pagrindinę programą. Ši funkcija pagerina reagavimą į programas realiuoju laiku.

Nuosekliojo ryšio sąsaja

8051 turi įmontuotą visiškai dvipusį UART (universalų asinchroninį imtuvą / siųstuvą), skirtą nuosekliam duomenų perdavimui. Tai leidžia mikrovaldikliui perduoti ir priimti duomenis per tam skirtus TXD ir RXD kaiščius. Ši funkcija plačiai naudojama ryšiui su kompiuteriais, ryšio moduliais ir kitais mikrovaldikliais.

Osciliatorius ir laikrodžio grandinė

Osciliatoriaus grandinė teikia laikrodžio signalą, reikalingą instrukcijoms vykdyti ir periferiniam darbui. 8051 naudoja išorines kristalų jungtis per XTAL1 ir XTAL2 kaiščius, kad generuotų stabilius laikrodžio impulsus. Šie laikrodžio impulsai sinchronizuoja visas vidines operacijas ir nustato instrukcijų vykdymo greitį.

Vidinė magistralės sistema

Vidinė magistralės sistema sujungia procesorių, atmintį ir periferinius įrenginius mikrovaldiklyje. Jame yra 8 bitų duomenų magistralė, 16 bitų adreso magistralė ir valdymo signalai. Duomenų magistralė perduoda duomenis, adresų magistralė parenka atminties vietas, o valdymo linijos valdo skaitymo/rašymo operacijas. Ši organizuota magistralės struktūra užtikrina sklandų ryšį tarp vidinių komponentų.

Kaip susieti LED su 8051 mikrovaldikliu

Žemiau esančioje diagramoje parodyta pagrindinė LED sąsajos grandinė su 8051 mikrovaldikliu. Vienas iš bendrosios paskirties įvesties / išvesties kaiščių (P1.0) naudojamas šviesos diodui valdyti per 220 Ω srovę ribojantį rezistorių. Rezistorius apsaugo šviesos diodą nuo per didelės srovės ir apsaugo nuo šviesos diodo ir mikrovaldiklio kaiščio pažeidimo. Kai išvesties kaištis P1.0 nustatytas HIGH (1 logika), srovė teka iš mikrovaldiklio per rezistorių ir šviesos diodą į žemę, todėl šviesos diodas šviečia. Kai kaištis nustatytas LOW (logika 0), srovės srautas sustoja ir šviesos diodas išsijungia. Tai rodo paprastą skaitmeninį išvesties valdymą naudojant 8051.

Figure 4. Interfacing LED with 8051 Microcontroller

Grandinėje taip pat yra būtini pagalbiniai komponentai, užtikrinantys tinkamą mikrovaldiklio veikimą. Atstatymo grandinė, susidedanti iš kondensatoriaus (10 μF) ir rezistoriaus, užtikrina, kad 8051 tinkamai įsijungtų įjungus. Kristalinis osciliatorius (11,0592 MHz) su dviem 33pF kondensatoriais suteikia laikrodžio signalą, reikalingą instrukcijoms vykdyti. Prie 0 prievado prijungti traukiamieji rezistoriai užtikrina stabilų loginį lygį, kai naudojami kaip I/O linijos. Kartu šie komponentai sudaro pilną ir funkcionalią LED sąsajos sąranką, naudojant 8051 mikrovaldiklius.

8051 mikrovaldiklio specifikacijos

KategorijaSpecifikacijaIšsami informacija
Procesoriaus architektūra8 bitų procesoriusApdoroja 8 bitų duomenis; apima akumuliatorių (A) ir B registrą
Programos atmintisVidinis ROM8 KB Flash (tipiniai patobulinti 8051 variantai); išplečiama iki 64 KB išorinės atminties
Duomenų atmintisVidinė RAMIš viso 256 baitai (128 baitų bendroji RAM + 128 baitų SFR sritis)
Bendroji RAM (00H–7FH)128 baitaiApima 4 registrų bankus (R0–R7), bitų adresuojamą sritį ir bendrosios paskirties RAM
Specialiųjų funkcijų registrai (80H–FFH)128 baitaiValdo laikmačius, nuoseklųjį prievadą, įvesties / išvesties prievadus, pertraukimus ir sistemos funkcijas
Registruoti bankus4 BankaiKiekviename banke yra 8 bendrosios paskirties registrai (R0–R7)
Rietuvės rodyklė (SP)8 bitųTaškai į rietuvės vietą RAM
Programų skaitiklis (PC)16 bitųTuri kitos instrukcijos adresą
Duomenų rodyklė (DPTR)16 bitųNaudojamas išorinės atminties adresavimui (DPH ir DPL)
Įvesties / išvesties prievadai32 I/O kaiščiaiSuskirstyta į 4 prievadus: P0, P1, P2, P3 (po 8 bitus)
Laikmačiai / skaitikliai2 × 16 bitųLaikmatis 0 ir laikmatis 1 delsos generavimui ir įvykių skaičiavimui
Pertraukimai5 Pertraukimo šaltiniai2 išoriniai (INT0, INT1) + 3 vidiniai (laikmatis0, laikmatis1, nuoseklusis)
Nuoseklusis ryšysDvipusis UARTAtskiros Tx (perdavimo) ir Rx (priėmimo) eilutės
OsciliatoriusLusto osciliatoriaus grandinėLaikrodžio generavimui reikalingas išorinis kristalas
Adresas Autobusas16 bitųPalaiko iki 64 KB išorinės atminties
Duomenų magistralė8 bitųPerduoda duomenis viduje ir išorėje
Kontrolės registraiKeliApima PCON, SCON, TMOD, TCON, IE, IP ir kitus
Darbo režimasHarvardo architektūraAtskiros programos ir duomenų atminties vietos

8051 mikrovaldiklio taikymas

• Pramoninės automatikos sistemos – 8051 mikrovaldiklis naudojamas varikliams, relėms ir jutikliams valdyti automatizuotose gamybos linijose ir mašinų valdymo sistemose.

• Buitinė technika – valdo laiką, temperatūros reguliavimą ir vartotojo įvesties apdorojimą tokiuose įrenginiuose kaip skalbimo mašinos ir mikrobangų krosnelės.

• Įterptosios valdymo sistemos – 8051 mikrovaldiklis yra pagrindinis valdiklis specialiose įterptosiose programose, kurioms reikalingas stabilus ir nuspėjamas veikimas.

• Robotikos projektai – nuskaito jutiklių duomenis ir valdo pavaras, todėl tinka mažiems robotų ir automatikos projektams.

• Buitinė elektronika – 8051 mikrovaldiklis dažniausiai integruojamas į elektroninius žaislus, nuotolinio valdymo pultus ir skaitmeninius laikrodžius, skirtus signalų valdymui ir loginiam apdorojimui.

• Ryšių sistemos – palaiko nuoseklųjį ryšį, skirtą sąveikai su kompiuteriais, ryšio moduliais ir kitais mikrovaldikliais.

• Medicinos prietaisai – 8051 mikrovaldiklis naudojamas paprastoje stebėjimo ir mažos galios diagnostikos įrangoje.

• Automobilių programos – atlieka pagrindines valdymo funkcijas, tokias kaip ekrano valdymas ir jutiklių stebėjimas transporto priemonėse.

• Apsaugos sistemos – 8051 mikrovaldiklis naudojamas signalizacijos sistemose, klaviatūros užraktuose ir prieigos kontrolės įrenginiuose.

• Švietimo ir mokymo projektai – jis plačiai naudojamas akademinėse laboratorijose mokant mikrovaldiklių programavimo ir įterptinių sistemų projektavimo pagrindų.

8051 mikrovaldiklis vs 8085 mikroprocesorius

Funkcija8051 mikrovaldiklis8085 mikroprocesorius
TipasMikrovaldiklisMikroprocesorius
ArchitektūraHarvardo architektūra (atskiras kodas ir duomenų atmintis)Von Neumann architektūra (bendra kodo ir duomenų atmintis)
Duomenų plotis8 bitų8 bitų
ProcesoriusIntegruotas 8 bitų procesorius su lusto periferiniais įrenginiaisTik 8 bitų procesorius (nėra įmontuotų periferinių įrenginių)
Programos atmintisPaprastai 4 KB–8 KB vidinis ROM (išplečiamas iki 64 KB išorinis)Nėra vidinio ROM (reikalinga išorinė atmintis)
Duomenų atmintis128–256 baitų vidinė RAM (išplečiama)Nėra vidinės RAM (reikalinga išorinė RAM)
Įvesties / išvesties prievadai32 įmontuotos įvesties / išvesties linijos (4 prievadai)Nėra integruotų įvesties / išvesties prievadų (reikalingi išoriniai sąsajos lustai)
Laikmačiai / skaitikliai2 × 16 bitų laikmačiaiNėra vidinių laikmačių (reikalingi išoriniai laikmačiai)
Pertraukimai5 pertraukimo šaltiniai5 pertraukimo įėjimai (TRAP, RST 7.5, 6.5, 5.5, INTR)
Nuoseklusis ryšysIntegruotas dvipusis UARTNėra įmontuoto nuosekliojo prievado
OsciliatoriusLusto osciliatoriaus grandinėReikalingas išorinis laikrodžio generatorius
KrūvaVidinis RAM kaminasIšorinėje RAM valdoma rietuvė
Adresas Autobusas16 bitų (palaiko iki 64 KB išorinės atminties)16 bitų (palaiko iki 64 KB atminties)
Duomenų magistralė8 bitų8 bitų
Periferinė integracijaLabai integruotas (laikmačiai, nuoseklusis, I/O, pertraukimai)Minimali integracija (tik procesorius)
Reikalingi išoriniai komponentaiMažiau išorinių komponentųReikalingi keli išorinio palaikymo IC
Energijos suvartojimasŽemasDidesnis lyginant su mikrovaldiklių sistemomis
Dėmesys programaiĮterptinės sistemos ir valdymo programosBendrosios paskirties skaičiavimas ir sistemų kūrimas
SudėtingumasPaprastas, kompaktiškas sistemos dizainasSudėtingesnis sistemos projektavimas
KainaMažesnės bendros sistemos išlaidosDidesnė sistemos kaina dėl išorinių komponentų
Tipiški naudojimo atvejaiBuitinė technika, robotika, automatika, įterptieji įrenginiaiAnkstyvosios kompiuterinės sistemos, mokymo rinkiniai, procesorių sistemos
Įvedimo metai1980 m. (Intel)1976 m. (pagal Intel)

8051 privalumai ir apribojimai

8051 Privalumai

• Paprasta ir lengvai suprantama architektūra

• Integruoti CPU, RAM, ROM, laikmačiai ir I/O prievadai viename luste

• Maža kaina ir plačiai prieinama

• Mažos energijos sąnaudos

• Integruotas nuosekliojo ryšio palaikymas

• Keli pertraukimo šaltiniai realiojo laiko programoms

• Išplečiama išorinė atmintis (iki 64KB)

• Didelė kūrimo įrankių ir mokymosi išteklių ekosistema

• Stabilus ir patikimas įterptųjų valdymo užduočių atlikimui

8051 apribojimai

• Ribota vidinė RAM ir programos atmintis

• 8 bitų apdorojimas riboja skaičiavimo galimybes

• Mažesnis apdorojimo greitis, palyginti su šiuolaikiniais mikrovaldikliais

• Pagrindinėse versijose nėra įmontuoto ADC ar DAC

• Riboti periferiniai įrenginiai, palyginti su pažangiais MCU (pvz., ARM, AVR)

• Sudėtingoms programoms reikalingi išoriniai komponentai

• Neidealiai tinka didelio našumo ar daug duomenų reikalaujančioms sistemoms

• Pasenusi architektūra, palyginti su šiuolaikiniais 32 bitų valdikliais

Išvada

Su 8051 mikrovaldiklio Harvardo architektūra, integruotu procesoriumi, organizuota atminties struktūra, programuojamais įvesties / išvesties prievadais, laikmačiais, pertraukimo sistema ir nuosekliojo ryšio palaikymu, jis yra išsamus ir efektyvus sprendimas specialioms valdymo programoms. Nors šiuolaikiniai mikrovaldikliai siūlo didesnį našumą ir pažangesnius periferinius įrenginius, 8051 išlieka vertingas dėl savo paprastumo, mažos kainos, patikimumo ir didelės edukacinės reikšmės.

Dažnai užduodami klausimai [DUK]

1 klausimas. Kokios programavimo kalbos naudojamos 8051 mikrovaldikliui?

8051 paprastai programuojamas Embedded C ir Assembly kalba. Įterptasis C yra plačiai naudojamas dėl lengvesnio derinimo ir nešiojamumo, o surinkimas siūlo tikslų aparatūros lygio valdymą.

2 klausimas. Kokie programinės įrangos įrankiai geriausiai tinka programuoti 8051?

Populiarūs įrankiai yra Keil μVision, Proteus (modeliavimui) ir SDCC (Small Device C Compiler). Keil yra plačiausiai naudojama profesinio tobulėjimo aplinka.

3 klausimas. Koks yra maksimalus 8051 laikrodžio dažnis?

Klasikinis 8051 paprastai veikia iki 12 MHz, o šiuolaikiniai patobulinti variantai gali veikti daug didesniu greičiu, priklausomai nuo gamintojo.

4 klausimas. Ar 8051 gali sąveikauti su šiuolaikiniais jutikliais ir moduliais?

Taip, 8051 gali sąveikauti su šiuolaikiniais jutikliais, naudojant skaitmeninius I/O, UART, SPI (per programinę įrangą) ir I2C (bit-banging arba išorinius IC), nors tam gali prireikti papildomų sąsajos komponentų.

5 klausimas. Kaip maitinamas 8051 ir kokia jo darbinė įtampa?

Standartas 8051 veikia esant +5 V. Tačiau kai kurie šiuolaikiniai dariniai palaiko mažesnę įtampą, pvz., 3,3 V mažos galios programoms.

6 klausimas. Kokie yra įprasti 8051 šeimos variantai šiandien?

Populiarūs variantai yra AT89C51, AT89S52 ir kiti patobulinti su 8051 suderinami skirtingų gamintojų mikrovaldikliai, siūlantys daugiau atminties ir funkcijų.

7 klausimas. Kuo 8051 skiriasi nuo šiuolaikinių mikrovaldiklių, tokių kaip ARM Cortex-M?

8051 yra 8 bitų valdiklis, skirtas paprastoms valdymo užduotims atlikti, o ARM Cortex-M įrenginiai yra 32 bitų procesoriai su didesniu greičiu, pažangiais periferiniais įrenginiais ir didesne atminties talpa.