Olika typer av register som används i 8051 Microcontroller

Prova Vårt Instrument För Att Eliminera Problem





Registret är huvuddelen av mikrokontroller och processorer som ger ett snabbt sätt att samla in och lagra data. Om vi ​​vill manipulera data med en styrenhet eller processor genom att utföra addition, subtraktion och så vidare kan vi inte göra det direkt i minnet, men det behöver register för att bearbeta och lagra data. Microcontrollers innehåller flera typer av register som kan klassificeras enligt deras innehåll eller instruktioner som fungerar i dem.

Olika typer av register i 8051 Microcontroller

Registrera




Ett register är en liten plats i en CPU som kan lagra små mängder av den data som används för att utföra olika operationer såsom tillägg och multiplikation och laddar den resulterande data i huvudminnet. Register innehåller adressen till minnesplatsen där data ska lagras. Storleken på registret är mycket viktigt för moderna styrenheter . Till exempel, för ett 64-bitarsregister, försöker en CPU lägga till två 32-bitarsnummer och ger ett 64-bitarsresultat.

Typer av register

8051-mikrokontrollern innehåller huvudsakligen två typer av register:



  • Allmänna register (Byte adresserbara register)
  • Specialfunktionsregister (Bitadresserbara register)
8051 RAM-minne

8051 RAM-minne

De 8051 mikrokontroller består av 256 byte RAM, som är uppdelad på två sätt, såsom 128 byte för allmänt ändamål och 128 byte för SFR-minne (Special Function Registers). Minnet som används för allmänt ändamål kallas RAM och minnet som används för SFR innehåller alla perifera relaterade register som Ackumulator, ‘B’-register, Timers eller Counters och avbrottsrelaterade register.

Register för allmänt ändamål

Minne för allmänt ändamål

Minne för allmänt ändamål

Det allmänna minnet kallas RAM för 8051-mikrokontroller, vilket är uppdelat i 3 områden som banker, bitadresserbart område och skrapladningsområde. Bankerna innehåller olika allmänna register som R0-R7, och alla sådana register är byte-adresserbara register som bara lagrar eller tar bort 1-byte data.


Banker och register

B0, B1, B2 och B3 står för banker, och varje bank innehåller åtta allmänna register som sträcker sig från 'R0' till 'R7'. Alla dessa register kan byteadresseras. Dataöverföring mellan allmänna register till allmänna register är inte möjlig. Dessa banker väljs av PSW-registret (Program Status Word).

Register för allmänt ändamål

Register för allmänt ändamål

PSW (Program Status Word) Register

PSW-registret är ett bit- och byte-adresserbart register. Detta register återspeglar status för operationen som utförs i styrenheten. PSW-registret bestämmer bankval med en RS1 och RS0, som visas nedan. PSW: s fysiska adress börjar från D0h och de enskilda bitarna nås med D0h till D7h.

PSW-register

PSW-register

Carry Flag (C) : Adressen till bärflaggan är D7. Denna bärflagga påverkas när biten genereras från den sjunde positionen.
När C = 0 bärs återställs
C = 1 bärsatser

Bär flagga

Bär flagga

Auxillary Flag (AC) : Hjälpbärarens adress är D5. Denna hjälpbärande påverkas när en bit genereras från 3: e position till 4: e position.
AC = 0 extra återställs
AC = 1 extra är inställt

Auxiliary Carry (AC)

Auxiliary Carry (AC)

Överflödesflagga (OV) : Adressen till överflödesflaggan är D2. När en bit genereras från den sjätte positionen till den sjunde positionen påverkas överflödesflaggan.

OV = 0 överflödesflagga återställs
OV = 1 överflödesuppsättningar

Överflödesflagga

Överflödesflagga

Paritetsflagga (P) : Adressen till paritetsflaggan är D0. Under resultatet av aritmetiska operationer, om resultatet är 1, ställs paritetsflaggan in - annars återställs.
RS1 och RS0
RS1 och RS0, bitarna i PSW-registret, används för att välja olika minnesplatser (bank0 till bank4) i RAM-minnet.

Bankvalsregister

Bankvalsregister

Följande är ett exempel på att använda detta register.

Följande exempel visar tillägget av två nummer och sedan lagringen av slutvärdet i Bank1-registret med hjälp av ett monteringsnivåprogram.

Org 0000h
MOV PSW, # 00h
MOV A, 15
LÄGG TILL A, 20
MOV 00h, A
SLUTET

Monteringsprogram för att flytta 6 naturliga nummer i bank0-register R0-R5

Org 0000h (startadressdeklaration)
MOV PSW, # 00h (öppna bank0-minnet)
MOV r0, # 00h (startadress för bank0-minne)
MOV r1, # 01h
MOV r2, # 02h
MOV r2, # 03h
MOV r3, # 04h
MOV r4, # 05h
SLUTET

Monteringsprogram för att flytta 6 naturliga nummer i bank1-register R0-R7

Org 0000h (startadressdeklaration)
MOV PSW, # 08h (öppna bank1-minnet)
MOV r0, 00h (värde skickas till bank1-minnet)
MOV r1, 02h
MOV r2, 02h
MOV r2, 03h
MOV r3, 04h
MOV r4, 05h
MOV r5, 06h
MOV r6, 07h
MOV r7, 08h
SLUTET

Special Function Registers (SFR)

Specialregister är övre RAM-minne i 8051 mikrokontroller . Dessa register innehåller alla perifera relaterade register som P0, P1, P2, P3, timers eller räknare, seriell port och avbrottsrelaterade register. SFR-minnesadressen börjar från 80h till FFh. SFR-registret implementeras av bitadressregister och byte-adressregister.

Special Function Registers (SFR)


Special Function Registers (SFR)

Ackumulator-, B-register-, Po-, P1-, P2-, P3-, IE-registren är bitadresserbara register som återstår, alla är byte-adresserbara register.

Ackumulator

Ackumulatorn som också är känd som ACC eller A är lite såväl som ett byte-adresserbart register av en ackumulatoradress. Om du vill använda ett bitadresserbart register kan du använda en enda bit (E0) i registret och du kan använda en 8-bit av ackumulatorn som ett byte-adresserbart register. Ackumulatorn innehåller resultaten av de flesta aritmetiska och logiska operationer.

Ackumulatorregister

Ackumulatorregister

Monteringsprogrammet för subtraktion används med en ackumulator

Org 0000h
MOV R0, # 09h
MOV A, # 03h (1byte data)
SUBB A, 01h (1byte data)
SLUTET

B-register

B-registret är ett bit- och byte-adresserbart register. Du kan komma åt 1-bit eller alla 8-bitar med en fysisk adress F0h. Antag att för att komma åt bit 1 måste vi använda f1. B-registret används endast för multiplikations- och delningsoperationer.

B-register

B-register

Monteringsprogrammet för multiplikation används med ett B-register

Org 0000h
MOV A, # 09h
MOV B, # 03h
MUL A, B (slutligt värde lagrat i A)
SLUTET
Monteringsprogrammet för division används med ett B-register
Org 0000h
MOV A, # 09h
MOV B, # 03h
DIC A, B (slutligt värde lagrat i A)
SLUTET

Hamnaregister

8051-mikrokontrollern består av 4-ingångs- och utgångsportar (P0, P1, P2 och P3) eller 32-I / O-stift. Varje stift är designad med en transistor och P-register. De stiftkonfiguration är mycket viktigt för en mikrokontroller som beror på logikernas tillstånd i registren. Stiftkonfigurationen som ingången som ges av 1 eller utgång 0 beror på de logiska tillstånden. Om logik 1 tillämpas på biten i P-registret stänger utgångstransistorn av lämplig stift som fungerar som en ingångsstift.

Hamnaregister 8051

Hamnaregister 8051

Monteringsprogram för att växla lysdioder för Port0

ORG 0000h
RETUR: MOV P0, # 00h
ACALL DEL1
MOV P0, # 0FF
ACALL DEL1
SJMP RETUR
DEL1: MOV R2, # 200
FRONT: DJNZ R0, # 230
DJNZ R2, DEL
RÄTT
SLUTET

Räknare och register

Många mikrokontroller består av en eller flera timers och räknare . Timarna används för att generera värdefull tidsfördröjning och källan för timrarna är en kristalloscillator. Räknarna används för att räkna antalet externa händelser - till exempel objektiv räknare och källan för räknare är externa pulser applicerade över räknarstiftet.

8051-mikrokontrollern består av två 16-bitars timers och räknare såsom timer 0 och timer 1. Båda timrarna består av ett 16-bitars register där den lägre byten lagras i TL och den högre byten lagras i TH. Timern kan användas både som en räknare och för tidsdrift som beror på källan till klockpulserna till räknarna.

Counters and Timers i 8051 mikrokontroller innehåller två speciella funktionsregister: TMOD (Timer Mode Register) och TCON (Timer Control Register) , som används för att aktivera och konfigurera timers och räknare.

Typer av skiftregister

Skiftregister är en typ av sekventiella logiska kretsar som huvudsakligen används för lagring av digital data. Skiftregisterna är bitadresserbara register som bara lagrar en bit data. Skiftregisterna är konstruerade med flip-flops - en grupp flip-flops anslutna som en kedja så att utsignalen från en flip-flop blir ingången till nästa flip-flop.

Alla flip-flops drivs av klocksignalerna som implementeras av D-flip-flap. Skiftregistret används främst för seriell kommunikation .

Dessa klassificeras i fyra typer:

  • Serial in Serial out (SISO)
  • Serial in Parallel Out (SIPO)
  • Parallell in Serial out (PISO)
  • Parallel in Parallel Out (PIPO)
D-flipflop-register

D-flipflop-register

Dessa är alla olika typer av register i en 8051 mikrokontroller. Vi hoppas att vi framgångsrikt har gett dig relevant innehåll med lämpligt program för varje register. Dessutom kan du kontakta oss genom att kommentera nedan för att få hjälp med att känna till flera andra register.

Fotokrediter: