Rôzne typy registrov používaných v mikrokontroléri 8051

Vyskúšajte Náš Nástroj Na Odstránenie Problémov





Register je hlavnou časťou mikrokontroléry a procesory ktoré poskytujú rýchly spôsob zhromažďovania a ukladania údajov. Ak chceme manipulovať s údajmi s radičom alebo procesorom vykonaním sčítania, odčítania a podobne, nemôžeme to urobiť priamo v pamäti, ale na spracovanie a uloženie údajov je potrebné registre. Mikrokontroléry obsahujú niekoľko typov registrov, ktoré je možné klasifikovať podľa ich obsahu alebo pokynov, ktoré v nich fungujú.

Rôzne typy registrov v mikrokontroléri 8051

Registrovať




Register je malé miesto v CPU, ktoré dokáže ukladať malé množstvá údajov použitých na vykonávanie rôznych operácií, ako je sčítanie a násobenie, a načítať výsledné údaje do hlavnej pamäte. Registre obsahujú adresu pamäťového miesta, kam sa majú údaje uložiť. Veľkosť registra je pre moderné radiče . Napríklad pre 64-bitový register sa CPU pokúsi pridať dve 32-bitové čísla a poskytne 64-bitový výsledok.

Druhy registrov

Mikrokontrolér 8051 obsahuje hlavne dva typy registrov:



  • Registre na všeobecné účely (bajtové adresovateľné registre)
  • Registre so špeciálnymi funkciami (bitovo adresovateľné registre)
Pamäť RAM 8051

Pamäť RAM 8051

The Mikrokontrolér 8051 pozostáva z 256 bajtov RAM, ktorá je rozdelená do dvoch spôsobov, napríklad 128 bajtov na všeobecné účely a 128 bajtov na pamäť registrov špeciálnych funkcií (SFR). Pamäť, ktorá sa používa na všeobecné účely, sa nazýva RAM a pamäť použitá pre SFR obsahuje všetky periférne súvisiace registre, ako sú akumulátory, register „B“, časovače alebo počítadlá a registre súvisiace s prerušením.

Registre na všeobecné účely

Pamäť na všeobecné použitie

Pamäť na všeobecné použitie

Pamäť na všeobecné účely sa nazýva RAM RAM mikrokontrolérov 8051, ktorá je rozdelená do 3 oblastí, ako sú banky, bitovo adresovateľná oblasť a oblasť stieracích pamätí. Banky obsahujú rôzne univerzálne registre, ako napríklad R0-R7, a všetky takéto registre sú bajtovo adresovateľné registre, ktoré ukladajú alebo odstraňujú iba 1 bajt údajov.


Banky a registre

B0, B1, B2 a B3 znamenajú banky a každá banka obsahuje osem univerzálnych registrov od „R0“ po „R7“. Všetky tieto registre sú adresovateľné bajtom. Prenos údajov medzi univerzálnymi registrami do univerzálnych registrov nie je možný. Tieto banky sú vybrané registrom Program Status Word (PSW).

Registre na všeobecné účely

Registre na všeobecné účely

Register PSW (programové stavové slovo)

Register PSW je register bitových a bajtov adresovateľných. Tento register odráža stav operácie, ktorá sa vykonáva v ovládači. Register PSW určuje výber banky pomocou RS1 a RS0, ako je uvedené nižšie. Fyzická adresa PSW začína od D0h a k jednotlivým bitom sa pristupuje od D0h do D7h.

Registre PSW

Registre PSW

Niesť vlajku (C) : Adresa vlajky Carry je D7. Tento prenosový príznak je ovplyvnený, keď je bit generovaný zo 7. pozície.
Keď sa C = 0 prenáša, resetuje sa
C = 1 prenosná súprava

Niesť vlajku

Niesť vlajku

Pomocná vlajka (AC) : Adresa pomocného prenosu je D5. Toto pomocné prenášanie je ovplyvnené, keď sa bit vygeneruje z 3. polohy do 4. polohy.
AC = 0 pomocný je resetovaný
AC = 1 pomocné zariadenie je nastavené

Pomocné prenášanie (AC)

Pomocné prenášanie (AC)

Vlajka pretečenia (OV) : Adresa príznaku pretečenia je D2. Keď sa bit vygeneruje zo 6. polohy do 7. polohy, potom je ovplyvnený príznak pretečenia.

OV = 0 sa resetuje príznak pretečenia
OV = 1 sada príznakov pretečenia

Vlajka pretečenia

Vlajka pretečenia

Vlajka parity (P) : Adresa príznaku parity je D0. Ak je počas vykonávania aritmetických operácií výsledok 1, je nastavený príznak parity - inak resetujte.
RS1 a RS0
Bity RS1 a RS0, bity v registri PSW, sa používajú na výber rôznych pamäťových miest (banka 0 až banka 4) v RAM.

Register bánk

Register bánk

Nasleduje príklad použitia tohto registra.

Nasledujúci príklad demonštruje pridanie dvoch čísel a následné uloženie konečnej hodnoty do registra Bank1 pomocou programu na úrovni zostavenia.

Org. 0000 h
MOV PSW, # 00 h
MOV A, 15
PRIDAŤ A, 20
MOV 00 h, A
KONIEC

Montážny program na presun 6 prirodzených čísel do bank0 registra R0-R5

Org 0000h (deklarácia počiatočných adries)
MOV PSW, # 00h (otvorenie pamäte bank0)
MOV r0, # 00h (počiatočná adresa pamäte bank0)
MOV r1, # 01 h
MOV r2, # 02 h
MOV r2, # 03h
MOV r3, # 04h
MOV r4, # 05h
KONIEC

Montážny program na presun 6 prirodzených čísel do registra bank1 R0-R7

Org 0000h (deklarácia počiatočných adries)
MOV PSW, # 08h (otvorenie pamäte bank1)
MOV r0, 00h (hodnota odoslaná do pamäte bank1)
MOV r1, 02h
MOV r2, 02 h
MOV r2, 03 h
MOV r3, 04h
MOV r4, 05h
MOV r5, 06h
MOV r6, 07h
MOV r7, 08h
KONIEC

Špeciálne funkčné registre (SFR)

Registre špeciálnych funkcií sú horná RAM v 8051 mikrokontroléroch . Tieto registre obsahujú všetky periférne súvisiace registre, ako sú P0, P1, P2, P3, časovače alebo čítače, sériový port a registre súvisiace s prerušeniami. Adresa pamäte SFR začína od 80 h do FFh. Register SFR je implementovaný registrami bitových adries a registrami bajtových adries.

Špeciálne funkčné registre (SFR)


Špeciálne funkčné registre (SFR)

Registre akumulátora, register B, registry Po, P1, P2, P3, IE sú bitovo adresovateľné, zvyšné všetky sú bajtovo adresovateľné registre.

Akumulátor

Akumulátor, ktorý je tiež známy ako ACC alebo A, je bit, rovnako ako bajtový adresný register podľa adresy akumulátora. Ak chcete použiť bitovo adresovateľný register, môžete použiť jeden bit (E0) registra a ako bitovo adresovateľný register môžete použiť 8-bitový akumulátor. Akumulátor uchováva výsledky väčšiny aritmetických a logických operácií.

Register akumulátorov

Register akumulátorov

Montážny program pre odčítanie používaný s akumulátorom

Org. 0000 h
MOV R0, # 09h
MOV A, # 03 h (1 bajtové dáta)
SUBB A, 01 h (1 bajtové dáta)
KONIEC

B-Register

B-register je bitovo a bajtovo adresovateľný register. K 1-bitovým alebo ku všetkým 8-bitovým bitom môžete pristupovať pomocou fyzickej adresy F0h. Predpokladajme, že máme prístup k bitu 1, musíme použiť f1. Register B sa používa iba na operácie násobenia a delenia.

B-Register

B-Register

Montážny program pre množenie používaný s B-registrom

Org. 0000 h
MOV A, # 09h
MOV B, # 03 h
MUL A, B (konečná hodnota uložená v A)
KONIEC
Montážny program pre divíziu používaný s B-registrom
Org. 0000 h
MOV A, # 09h
MOV B, # 03 h
DIC A, B (konečná hodnota uložená v A)
KONIEC

Registre prístavov

Mikrokontrolér 8051 pozostáva zo 4-vstupných a výstupných portov (P0, P1, P2 a P3) alebo 32-I / O pinov. Každý špendlík je navrhnutý s tranzistorom a P registre. The konfigurácia pinov je veľmi dôležitý pre mikrokontrolér, ktorý závisí od logických stavov registrov. Konfigurácia pinov ako vstup daný 1 alebo výstup 0 závisí od logických stavov. Ak sa na bit P registra použije logika 1, výstupný tranzistor vypne príslušný pin, ktorý slúži ako vstupný pin.

Registre prístavov 8051

Registre prístavov 8051

Montážny program na prepínanie LED diód Port0

ORG 0000h
NÁVRATNOSŤ: MOV P0, # 00 h
ACALL DEL1
MOV P0, # 0FF
ACALL DEL1
NÁVRAT SJMP
DEL1: MOV R2, č. 200
FR: DJNZ R0, č. 230
DJNZ R2, DEL
SPRÁVNY
KONIEC

Počítadlá a registre

Mnoho mikrokontrolérov sa skladá z jedného alebo viacerých časovače a počítadlá . Časovače sa používajú na generovanie vzácneho časového oneskorenia a zdrojom časovačov je kryštálový oscilátor. Počítadlá sa používajú na počítanie počtu externých udalostí - napríklad objektívny pult a zdrojom pre počítadlá sú externé impulzy vedené cez kolík počítadla.

Mikrokontrolér 8051 sa skladá z dvoch 16-bitových časovačov a počítadiel, ako je časovač 0 a časovač 1. Oba časovače pozostávajú zo 16-bitového registra, v ktorom je spodný bajt uložený v TL a vyšší bajt je uložený v TH. Časovač je možné použiť ako počítadlo, ako aj na časovanie, ktoré závisí od zdroja hodinových impulzov k počítadlám.

Počítadlá a časovače v mikrokontroléroch 8051 obsahujú dva registre špeciálnych funkcií: TMOD (Register Timer Mode Register) a TCON (Timer Control Register) , ktoré sa používajú na aktiváciu a konfiguráciu časovačov a počítadiel.

Typy zmenového registra

Posuvné registre sú typom sekvenčných logických obvodov, ktoré sa používajú hlavne na ukladanie digitálnych údajov. Posuvné registre sú bitovo adresovateľné registre, ktoré uchovávajú iba jeden bit dát. Posuvné registre sú konštruované s klopnými obvodmi - skupinou klopných obvodov spojených ako reťazec, takže výstup z jedného klopného obvodu sa stáva vstupom nasledujúceho klopného obvodu.

Všetky klopné obvody sú poháňané hodinovými signálmi, ktoré sú implementované do klopnej klapky D. Posuvné registre sa používajú hlavne na sériová komunikácia .

Sú rozdelené do 4 typov:

  • Serial in Serial out (SISO)
  • Sériový paralelný výstup (SIPO)
  • Paralelné zapojenie do sériového výstupu (PISO)
  • Paralelné zapojenie paralelné (PIPO)
D- flipflop register

D- flipflop register

Toto sú všetko rôzne typy registrov v mikrokontroléri 8051. Dúfame, že sme vám pre každý register úspešne poskytli relevantný obsah s príslušným programom. Ak potrebujete ďalšiu pomoc pri poznávaní kódovania niekoľkých ďalších registrov, môžete nás kontaktovať komentárom nižšie.

Fotografické úvery: