Nejvýkonnější a nejdůležitější funkce jsou přerušení 8051 mikrokontrolér . Ve většině procesů v reálném čase musí být skutečný úkol pro správné zvládnutí určitých podmínek po určitou dobu zastaven - vyžaduje požadovanou akci - a poté se musí vrátit k hlavnímu úkolu. K provádění tohoto typu programů jsou nutná přerušení. Úplně se liší od metody dotazování, kdy procesor musí postupně kontrolovat každé zařízení a zeptat se, zda je služba vyžadována nebo ne, zatímco spotřebovává více času procesoru.
Přeruší mikrokontrolér 8051
Přerušení v mikrokontroléru 8051 jsou vhodnější pro snížení pravidelné kontroly stavu zařízení s rozhraním nebo vestavěných zařízení. Přerušení je událost, která dočasně pozastaví hlavní program, předá řízení speciální sekci kódu, provede funkci související s událostí a obnoví tok hlavního programu tam, kde přestal.
Přerušení jsou různých typů, jako je software a hardware, maskovatelné a nemaskovatelné, pevné a vektorové přerušení atd. Rutina přerušení služby (ISR) se objeví v obraze, když dojde k přerušení, a poté řekne procesoru, aby provedl příslušnou akci pro přerušení, a po provedení ISR ovladač skočí do hlavního programu.
Typy přerušení v mikrokontroléru 8051
Mikrokontrolér 8051 dokáže rozpoznat pět různých událostí, které způsobí přerušení hlavního programu od normálního provedení. Těchto pět zdrojů přerušení v 8051 je:
- Přerušení přetečení časovače 0 - TF0
- Přerušení přetečení časovače 1 - TF1
- Přerušení externího hardwaru - INT0
- Přerušení externího hardwaru - INT1
- Přerušení sériové komunikace - RI / TI
Časová a sériová přerušení jsou interně generována mikrokontrolérem, zatímco externí přerušení jsou generována dalšími propojovací zařízení nebo spínače, které jsou externě připojeny k mikrokontroléru. Tato externí přerušení mohou být spouštěna hranou nebo spouštěna na úrovni. Když dojde k přerušení, mikrokontrolér provede rutinu služby přerušení tak, aby umístění paměti odpovídalo přerušení, které ji umožňuje. Přerušení odpovídající umístění paměti je uvedeno v tabulce vektorů přerušení níže.
Přerušit vektorovou tabulku
Struktura přerušení mikrořadiče 8051
Po „RESETU“ budou všechna přerušení deaktivována, a proto musí být všechna tato přerušení povolena softwarem. Ve všech těchto pěti přerušeních, pokud jsou kdokoli nebo všichni aktivováni, se nastaví odpovídající příznaky přerušení, jak je znázorněno na obrázku. Všechna tato přerušení mohou být bitem nastavena nebo vymazána v nějakém registru speciálních funkcí, který je Interrupt Enabled (IE), a to zase závisí na prioritě, která je prováděna registrem priority přerušení IP.
Přerušená struktura mikrokontroléru 8051
Registr přerušení povolení (IE): Tento registr je odpovědný za povolení a zakázání přerušení. Jedná se o bitově adresovatelný registr, ve kterém musí být EA nastaven na jeden pro povolení přerušení. Odpovídající bit v tomto registru umožňuje konkrétní přerušení, jako je časovač, externí a sériové vstupy. V níže uvedeném registru IE bit odpovídající 1 aktivuje přerušení a 0 deaktivuje přerušení.
Registr přerušení povolení (IE)
Přerušit prioritní registr (IP): Je také možné změnit úrovně priority přerušení nastavením nebo vymazáním odpovídajícího bitu v registru priority přerušení (IP), jak je znázorněno na obrázku. To umožňuje přerušení s nízkou prioritou přerušit přerušení s vysokou prioritou, ale zakazuje přerušení dalším přerušením s nízkou prioritou. Podobně nelze přerušit přerušení s vysokou prioritou. Pokud tyto priority přerušení nejsou naprogramovány, provede mikrokontrolér předdefinovaný způsob a jeho pořadí je INT0, TF0, INT1, TF1 a SI.
IP registr
Registr TCON: Kromě výše uvedených dvou registrů určuje registr TCON typ externího přerušení mikrokontroléru 8051, jak je znázorněno na obrázku. Dvě externí přerušení, ať už spuštěná na hraně nebo na úrovni, specifikovaná tímto registrem sadou nebo vymazaná příslušnými bity v něm. A je to také trochu adresovatelný registr.
Registrace TCON
Přerušení programování v roce 8051
1. Programování přerušení časovače
Přerušení časovače 0 a časovače 1 jsou generována bity časových registrů TF0 a TF1. Tato přerušení programování pomocí C kódu zahrnuje:
- Výběr časovače konfigurací registru TMOD a jeho provozního režimu.
- Volba a načítání počátečních hodnot TLx a THx pro příslušné režimy.
- Povolení registrů IE a odpovídající bit časovače v něm.
- Nastavení bitu časovače pro spuštění časovače.
- Zápis podprogramu pro časovač na požadovaný čas a vymazání hodnoty časovače TRx na konci podprogramu.
Programování přerušení časovače
2. Programování přerušení externího hardwaru
Mikrokontroléry 8051 se skládají ze dvou externích hardwarových přerušení: INT0 a INT1, jak bylo popsáno výše. Ty jsou povoleny na pinech 3.2 a 3.3. Mohou být spuštěny na hraně nebo na úrovni. Při spouštění na úrovni umožňuje nízko na kolíku 3.2 přerušení, zatímco na kolíku 3.2 - přechod z vysoké na nízkou umožňuje přerušení spouštěné hranou. O tomto spouštění hrany nebo spouštění úrovně rozhoduje registr TCON, který byl diskutován výše. The programovací postup v 8051 je následující:
- Povolte odpovídající bit externího přerušení v registru IE.
- Pokud se jedná o spouštění na úrovni, stačí napsat podprogram odpovídající tomuto přerušení, nebo povolit bit registru TCON odpovídající přerušení spouštěnému hranou - ať už je to INT0 nebo INT1.
Programování přerušení externího hardwaru
3. Programování přerušení sériové komunikace
Přerušení sériové komunikace se objeví, když je potřeba odesílat nebo přijímat data. Jelikož je pro příznaky TI (Transfer Interrupt) a RI (Receiver Interrupt) nastaven jeden přerušovací bit, musí rutina Interrupt Service tyto příznaky prozkoumat, aby poznala skutečné přerušení.
Logická operace OR těchto dvou příznaků (RI a TI) způsobí toto přerušení a vymaže jej samotný software. Zde se pro ovládání používá speciální registr SCON sdělení povolením odpovídajících bitů v něm.
- Nakonfigurujte registr IE pro povolení sériového přerušení
- Nakonfigurujte registr SCON pro operaci příjmu nebo přenosu
- Napište podprogram pro toto přerušení s příslušnou funkcí a zrušte v této rutině příznaky TI nebo RI.
Programování sériového přerušení
Jedná se o přerušení mikrokontroléru 8051, typy, jejich strukturu a programování. Doufám, že jste z tohoto článku obdrželi dobré informace. Můžete nám také napsat v sekci komentáře níže pro implementaci v reálném čase projekty mikrokontrolérů abychom vám mohli pomoci získat lepší praktické zkušenosti.
Fotografické kredity
- Přeruší mikrokontrolér 8051 uživatelem inženýrská garáž
- Přerušit vektorovou tabulku o 8051 projektů
- Přerušte strukturu mikrokontroléru 8051 pomocí štětec
- Interrupt Enable (IE) Register by elektroony
- IP registrace do obvod dnes
- TCON Zaregistrujte se do obvod dnes