Mikrokontrolér 8051 zůstává jedním z nejznámějších a nejzákladnějších vestavěných řadičů v digitální elektronice. Tento článek se bude zabývat detaily pinoutů mikrořadičů 8051, vnitřní architekturou, vysvětlením blokového diagramu, specifikacemi, aplikacemi, porovnáním s mikroprocesory 8085 a mnoha dalšími informacemi.

8051 Microcontroller Basic
Mikrokontrolér 8051 je 8bitový vestavěný systémový řadič původně vyvinutý společností Intel, který integruje procesor, paměť, vstupní/výstupní porty, časovače a komunikační rozhraní do jednoho čipu. Je navržen tak, aby ovládal elektronická zařízení prováděním naprogramovaných instrukcí a přímou interakcí s hardwarovými komponentami. Na rozdíl od univerzálního počítačového procesoru je 8051 navržen speciálně pro specializované řídicí úkoly, jako je čtení senzorů, řídicí displeje, správa motorů, zpracování komunikačních signálů a provádění časovaných operací. Jeho účelem je sloužit jako "mozek" vestavěných systémů, umožňující automatizované řízení a rozhodování v kompaktních, nákladově efektivních elektronických návrzích.
Detaily pinů mikrořadiče 8051

| Číslo pinu. | PIN Name | Typ | Popis |
|---|---|---|---|
| 1 – 8 | P1.0 – P1.7 | I/O port (port 1) | Univerzální 8bitový obousměrný I/O port. V základním 8051 nejsou žádné alternativní funkce. |
| 9 | RST | Reset | Aktivní vstup vysokého resetu. Vysoký pulz resetuje mikrokontrolér. |
| 10 – 17 | P3.0 – P3.7 | I/O port (port 3) | Dvojfunkční port. Zahrnuje RXD, TXD, INT0, INT1, T0, T1, WR, RD. |
| 18 | XTAL2 | Hodiny | Výstup z vnitřního oscilátorového zesilovače. |
| 19 | XTAL1 | Hodiny | Vstup do vnitřního oscilátoru a generátoru hodin. |
| 20 | GND | Síla | Referenční zem (0V). |
| 21 – 28 | P2.0 – P2.7 | I/O / Adresní sběrnice | Obecný I/O nebo sběrnice vyšších řádů (A8–A15) při použití externí paměti. |
| 29 | PSEN | Control | Program Store Enable. Používá se ke čtení externí paměť programu. |
| 30 | ALE/PROG | Control | Zapnutí zámku adresy. Odděluje adresy/data v externí paměťové rozhraní. |
| 31 | EA/VPP | Control | Externí přístup umožněný. Vybere interní nebo externí paměť programu. |
| 32 – 39 | P0.0 – P0.7 | I/O / Adresní/Datová sběrnice | Multiplexovaná nízkořádová adresní/datová sběrnice (AD0–AD7) nebo obecný I/O. |
| 40 | VCC | Síla | +5V vstup napájení. |
Architektura mikrokontroléru 8051

Níže jsou základní architektonické bloky modelu 8051 a jak každý z nich funguje.
Centrální zpracovatelská jednotka (CPU)
CPU je jádrem mikrokontroléru 8051 a je zodpovědný za provádění instrukcí, aritmetické a logické operace a koordinaci všech interních aktivit. Zahrnuje Aritmeticko-logickou jednotku (ALU), akumulátor, B registr, Program Status Word (PSW), Program Counter (PC), Data Pointer (DPTR) a Stack Pointer (SP). CPU zpracovává 8bitová data a řídí dekódování instrukcí, časování a tok dat mezi pamětí a periferiemi. Každá operace prováděná mikrokontrolérem je řízena touto centrální procesorovou jednotkou.
Paměť programu (paměť kódu)
Programová paměť ukládá instrukce, které mikrokontrolér vykonává. V klasickém modelu 8051 obvykle obsahuje 4 KB interní ROM, která uchovává uložené instrukce i při odpojení napájení. Architektura také umožňuje rozšíření až 64 KB externí programové paměti. Protože 8051 následuje architekturu Harvardu, je paměť programu oddělená od datové paměti, což zajišťuje organizované provádění instrukcí a zvýšenou efektivitu.
Datová paměť (RAM)
Datová paměť se používá k dočasnému ukládání během běhu programu. Standard 8051 obsahuje 128 bajtů interní RAM, která je rozdělena na banky registrů, bitově adresovatelnou paměť, univerzální RAM a zásobníkový prostor. Tato paměť ukládá proměnné, mezivýsledky a provozní data během běhu programu. Externí datová paměť lze také rozšířit až na 64 KB, pokud je to potřeba pro větší aplikace.
Vstupní/výstupní (I/O) porty
8051 obsahuje čtyři 8bitové paralelní I/O porty: Port 0, Port 1, Port 2 a Port 3. Tyto porty umožňují mikrokontroléru přímo komunikovat s externími zařízeními, jako jsou senzory, displeje, spínače a motory. Některé porty mají také alternativní funkce. Například port 0 a port 2 mohou sloužit jako adresní a datové sběrnice pro přístup do externí paměti, zatímco port 3 poskytuje speciální funkce, jako je sériová komunikace a externí přerušení. Tento flexibilní design portu činí 8051 vhodným pro různé hardwarové aplikace.
Časovače/Počítadlo
8051 obsahuje dva 16bitové časovače/čítače: Timer 0 a Timer 1. Tyto časovače se používají k generování časových zpoždění, měření časových intervalů, počítání vnějších událostí a vytváření přenosových rychlostí pro sériovou komunikaci. Zlepšují efektivitu systému tím, že zpracovávají časové operace v hardwaru, což umožňuje CPU provádět další úkoly současně.
Systém řízení přerušení
Systém přerušení umožňuje 8051 dočasně pozastavit svou aktuální úlohu, aby reagoval na události s vyšší prioritou. Mikrokontrolér podporuje pět zdrojů přerušení, včetně dvou externích přerušení, dvou časovačových přerušení a jednoho sériového přerušení komunikace. Když dojde k přerušení, CPU automaticky přejde na předdefinovanou servisní rutinu a po dokončení obnoví hlavní program. Tato funkce zvyšuje odezvu v aplikacích v reálném čase.
Rozhraní pro sériovou komunikaci
Model 8051 obsahuje vestavěný plně duplexní UART (Universal Asynchronous Receiver/Transmitter) pro sériovou datovou komunikaci. Umožňuje mikrokontroléru přenášet a přijímat data prostřednictvím vyhrazených pinů TXD a RXD. Tato funkce je široce využívána pro komunikaci s počítači, komunikačními moduly a dalšími mikrokontroléry.
Oscilátor a hodinový obvod
Oscilátorový obvod poskytuje hodinový signál potřebný pro provádění instrukcí a provoz periferií. 8051 používá externí krystalová připojení přes piny XTAL1 a XTAL2 k generování stabilních hodinových pulzů. Tyto hodinové pulzy synchronizují všechny interní operace a určují rychlost vykonávání instrukcí.
Interní sběrnicový systém
Interní sběrnicový systém propojuje CPU, paměť a periferie uvnitř mikrokontroléru. Obsahuje 8bitovou datovou sběrnici, 16bitovou adresovou sběrnici a řídicí signály. Datová sběrnice přenáší data, adresní sběrnice vybírá paměťová místa a řídicí linky spravují operace čtení/zápisu. Tato organizovaná sběrnicová struktura zajišťuje plynulou komunikaci mezi vnitřními komponentami.
Jak propojit LED s mikrokontrolérem 8051
Schéma níže ukazuje základní LED rozhraní s mikrokontrolérem 8051. Jeden z obecných I/O pinů (P1.0) se používá k ovládání LED přes rezistor omezující proud 220Ω. Rezistor chrání LED před nadměrným proudem a zabraňuje poškození jak LED, tak pinu mikrokontroléru. Když je výstupní pin P1.0 nastaven na HIGH (logická 1), proud teče z mikrokontroléru přes rezistor a LED do země, což způsobuje záření LED. Když je pin nastaven na LOW (logická 0), proud se zastaví a LED zhasne. To demonstruje jednoduché digitální řízení výstupů pomocí 8051.

Obvod také obsahuje nezbytné podpůrné komponenty pro správný provoz mikrokontroléru. Resetovací obvod složený z kondenzátoru (10μF) a rezistoru zajišťuje správné spuštění 8051 při zapnutí. Krystalový oscilátor (11,0592 MHz) se dvěma kondenzátory 33pF poskytuje hodinový signál potřebný pro provádění instrukcí. Pull-up rezistory připojené k portu 0 zajišťují stabilní logické úrovně při použití jako I/O linky. Tyto komponenty společně tvoří kompletní a funkční LED rozhraní pomocí mikrokontrolérů 8051.
Specifikace mikrokontroléru 8051
| Kategorie | Specifikace | Podrobnosti |
|---|---|---|
| Architektura CPU | 8bitový CPU | Zpracovává 8bitová data; zahrnuje akumulátor (A) a B registr |
| Paměť programu | Interní ROM | 8 KB flash (typické vylepšené varianty 8051); rozšiřitelné až na 64 KB externí paměti |
| Datová paměť | Interní RAM | 256 bajtů celkem (128 bajtů obecné RAM + 128 bajtů SFR oblasti) |
| Obecná RAM (00H–7FH) | 128 bajtů | Zahrnuje 4 banky registrů (R0–R7), oblast adresovatelnou bitů a univerzální RAM |
| Registry speciálních funkcí (80H–FFH) | 128 bajtů | Ovládá časovače, sériový port, I/O porty, přerušení a systémové funkce |
| Registrujte banky | 4 Banky | Každá banka obsahuje 8 univerzálních registrů (R0–R7) |
| Stack Pointer (SP) | 8-bitový | Ukazuje na umístění zásobníku v RAM |
| Programový čítač (PC) | 16bitový | Drží adresu další instrukce |
| Data Pointer (DPTR) | 16bitový | Používá se pro externí paměťové adresování (DPH & DPL) |
| Vstup/Výstupní porty | 32 I/O pinů | Organizováno do 4 portů: P0, P1, P2, P3 (každý 8 bitů) |
| Časovače/Počítadlo | 2 × 16bitové | Časovač 0 a Časovač 1 pro generování zpoždění a počítání událostí |
| Přerušení | 5 Zdroje přerušení | 2 Externí (INT0, INT1) + 3 Interní (Timer0, Timer1, Sériové) |
| Sériová komunikace | Full-Duplex UART | Oddělte linky Tx (Transmission) a Rx (Receive) |
| Oscilátor | Obvod oscilátoru na čipu | Vyžaduje externí krystal pro generování hodin |
| Adresní sběrnice | 16bitový | Podporuje až 64 KB externí paměti |
| Data Bus | 8-bitový | Přenáší data interně i externě |
| Řídicí registry | Násobek | Zahrnuje PCON, SCON, TMOD, TCON, IE, IP a další |
| Provozní režim | Harvardská architektura | Oddělené paměťové prostory programů a dat |
Aplikace mikrokontroléru 8051
• Průmyslové automatizační systémy – Mikrokontrolér 8051 se používá k řízení motorů, relé a senzorů v automatizovaných výrobních linkách a systémech řízení strojů.
• Domácí spotřebiče – Řídí časování, regulaci teploty a zpracování vstupů uživatelem v zařízeních jako jsou pračky a mikrovlnné trouby.
• Vestavěné řídicí systémy – Mikrokontrolér 8051 slouží jako hlavní řadič v specializovaných vestavěných aplikacích, které vyžadují stabilní a předvídatelný provoz.
• Robotické projekty – Čte data ze senzorů a ovládá akční členy, což jej činí vhodnou pro malé robotické a automatizační projekty.
• Spotřební elektronika – Mikrokontrolér 8051 je běžně integrován do elektronických hraček, dálkových ovladačů a digitálních hodin pro řízení signálu a logické zpracování.
• Komunikační systémy – Podporuje sériovou komunikaci pro propojení s počítači, komunikačními moduly a dalšími mikrokontroléry.
• Lékařské přístroje – Mikrokontrolér 8051 se používá v jednoduchých monitorovacích a nízkoenergetických diagnostických zařízeních.
• Automobilové aplikace – Zajišťuje základní řídicí funkce, jako je správa displejů a monitorování senzorů ve vozidlech.
• Bezpečnostní systémy – Mikrokontrolér 8051 se používá v alarmových systémech, zámocích na klávesnici a zařízeních pro řízení přístupu.
• Vzdělávací a školící projekty – Široce se používá v akademických laboratořích k výuce programování mikrokontrolérů a základů návrhu vestavěných systémů.
8051 mikrokontrolér vs 8085 mikroprocesor
| Funkce | 8051 mikrokontrolér | 8085 Mikroprocesor |
|---|---|---|
| Typ | Mikrokontrolér | Mikroprocesor |
| Architektura | Harvardská architektura (samostatný kód a datová paměť) | Von Neumannova architektura (sdílená paměť pro kód a data) |
| Šířka dat | 8-bitový | 8-bitový |
| CPU | Integrovaný 8bitový CPU s periferiemi na čipu | Pouze 8bitový CPU (bez vestavěných periferií) |
| Paměť programu | Typicky 4KB–8KB interní ROM (rozšiřitelná na 64KB externí) | Žádná interní ROM (vyžaduje externí paměť) |
| Datová paměť | 128–256 bajtů interní RAM (rozšiřitelná) | Žádná interní RAM (vyžaduje externí RAM) |
| Vstup/Výstupní porty | 32 vestavěných I/O linek (4 porty) | Žádné vestavěné I/O porty (vyžaduje externí rozhraní čipů) |
| Časovače/Počítadlo | 2 × 16bitové časovače | Žádné interní časovače (externí časovače jsou vyžadovány) |
| Přerušení | 5 zdrojů přerušení | 5 vstupů přerušení (TRAP, RST 7.5, 6.5, 5.5, INTR) |
| Sériová komunikace | Vestavěný full-duplex UART | Žádný vestavěný sériový port |
| Oscilátor | Obvod oscilátoru na čipu | Vyžaduje externí generátor hodin |
| Stack | Interní zásobník v RAM | Stack spravovaný v externí RAM |
| Adresní sběrnice | 16bitová (podporuje až 64KB externí paměti) | 16bitový (podporuje až 64KB paměť) |
| Data Bus | 8-bitový | 8-bitový |
| Periferní integrace | Vysoce integrované (časovače, sériové připojení, I/O, přerušení) | Minimální integrace (pouze CPU) |
| Požadované externí komponenty | Méně externích komponent | Vyžaduje více externích podpůrných integrovaných obvodů |
| Spotřeba energie | Nízké | Vyšší než systémy založené na mikrokontrolérech |
| Zaměření aplikace | Vestavěné systémy a řídicí aplikace | Univerzální výpočetní technika a vývoj systémů |
| Složitost | Jednoduchý, kompaktní návrh systému | Složitější návrh systému |
| Cena | Nižší celkové náklady na systém | Vyšší náklady na systém kvůli externím komponentám |
| Typické případy použití | Domácí spotřebiče, robotika, automatizace, vestavěná zařízení | Raný počítačový systém, školicí sady, systémy založené na procesorech |
| Rok představení | 1980 (od Intel) | 1976 (od Intel) |
8051 Výhody a omezení
8051 Výhody
• Jednoduchá a snadno pochopitelná architektura
• Integrované CPU, RAM, ROM, časovače a I/O porty na jednom čipu
• Nízké náklady a široce dostupná
• Nízká spotřeba energie
• Vestavěná podpora sériové komunikace
• Více zdrojů přerušení pro aplikace v reálném čase
• Podpora rozšiřitelné externí paměti (až 64KB)
• Rozsáhlý ekosystém vývojových nástrojů a vzdělávacích zdrojů
• Stabilní a spolehlivé pro vestavěné řídicí úkoly
Omezení 8051
• Omezená interní RAM a paměť programu
• 8bitové zpracování omezuje výpočetní schopnosti
• Nižší rychlost zpracování ve srovnání s moderními mikrokontroléry
• Žádné vestavěné ADC nebo DAC v základních verzích
• Omezené periferie ve srovnání s pokročilými MCU (např. ARM, AVR)
• Vyžaduje externí komponenty pro složité aplikace
• Není ideální pro vysoce výkonné nebo datově náročné systémy
• Zastaralá architektura ve srovnání s moderními 32bitovými řadiči
Závěr
S harvardskou architekturou mikrokontroléru 8051, integrovaným CPU, organizovanou paměťovou strukturou, programovatelnými I/O porty, časovači, systémem přerušení a podporou sériové komunikace poskytuje kompletní a efektivní řešení pro specializované řídicí aplikace. Zatímco moderní mikrokontroléry nabízejí vyšší výkon a pokročilejší periferie, 8051 zůstává cenný díky své jednoduchosti, nízké ceně, spolehlivosti a silnému vzdělávacímu významu.
Často kladené otázky [FAQ]
Q1. Jaké programovací jazyky se používají pro mikrokontrolér 8051?
8051 je běžně programován v embedded C a assembleru. Embedded C je široce používán díky snadnějšímu ladění a přenosnosti, zatímco Assembly nabízí přesné hardwarové řízení.
Q2. Které softwarové nástroje jsou nejlepší pro programování 8051?
Mezi oblíbené nástroje patří Keil μVision, Proteus (pro simulaci) a SDCC (Small Device C Compiler). Keil je nejpoužívanější prostředí pro profesní rozvoj.
Q3. Jaká je maximální frekvence hodin 8051?
Klasický 8051 obvykle pracuje až do 12 MHz, zatímco moderní vylepšené varianty mohou běžet mnohem vyšší rychlosti v závislosti na výrobci.
Q4. Může 8051 spolupracovat s moderními senzory a moduly?
Ano, 8051 může spolupracovat s moderními senzory pomocí digitálních I/O, UART, SPI (softwarově) a I2C (bit-banging nebo externí integrované obvody), i když může vyžadovat další rozhraní komponenty.
Q5. Jak je 8051 napájena a jaké má provozní napětí?
Standardní 8051 pracuje na +5V. Některé moderní deriváty však podporují nižší napětí, například 3,3 V pro nízkoenergetické aplikace.
Q6. Jaké jsou běžné varianty rodiny 8051 dostupné dnes?
Mezi oblíbené varianty patří AT89C51, AT89S52 a další vylepšené mikrokontroléry kompatibilní s 8051 od různých výrobců, které nabízejí více paměti a funkcí.
Q7. Jak se 8051 liší od moderních mikrokontrolérů jako ARM Cortex-M?
8051 je 8bitový řadič navržený pro jednoduché řídicí úkoly, zatímco zařízení ARM Cortex-M jsou 32bitové procesory s vyšší rychlostí, pokročilými periferiemi a větší kapacitou paměti.