Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Microcontroladores 8051, Notas de estudo de Engenharia Elétrica

Microcontroladores 8051

Tipologia: Notas de estudo

2011

Compartilhado em 24/10/2011

atleta-de-jesus-1
atleta-de-jesus-1 🇧🇷

3.9

(18)

100 documentos

1 / 19

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
1
Microprocessador: chip que contém a UC, ULA e capacidade
para controle de memória e I/O.
Microcontrolador: microprocessador com um sistema de
memória e I/O integrado.
Registradores: conjunto de flip-flops - 8 bits, 16 bits, 32 bits,
etc.
Instrução: é a capacidade do microprocessador em executar
tarefas específicas (movimentação de dados, operações aritméticas
e lógicas, etc.).
Programa (Software): conjunto de instruções arranjadas de
forma organizada que apresenta função específica.
Firmware: Programa que está armazenado em memória não
volátil.
Microcontroladores 8051
Microcontroladores 8051
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13

Pré-visualização parcial do texto

Baixe Microcontroladores 8051 e outras Notas de estudo em PDF para Engenharia Elétrica, somente na Docsity!

Microprocessador: chip que contém a UC, ULA e capacidade

para controle de memória e I/O.

Microcontrolador: microprocessador com um sistema de

memória e I/O integrado.

Registradores: conjunto de flip-flops - 8 bits, 16 bits, 32 bits,

etc.

Instrução: é a capacidade do microprocessador em executar

tarefas específicas (movimentação de dados, operações aritméticas

e lógicas, etc.).

Programa ( Software ): conjunto de instruções arranjadas de

forma organizada que apresenta função específica.

Firmware : Programa que está armazenado em memória não

volátil.

Microcontroladores 8051

Microcontroladores 8051

Fabricante: Intel.

Possui uma vasta família para diversas aplicações.

CPU de 8 bits otimizada para aplicações de controle.

Poderosa capacidade de processamento booleano , incluindo

lógica individual de bits.

64 Kbytes de endereçamento de memória de programa.

64 Kbytes de endereçamento de memória de dados.

4 Kbytes de memória de programa interna.

Características do 8051

Características do 8051

P0 + P2: Address / Data

4 I/O Port’s OSC

CPU

Interrupt

Control

External

Interrupt

4K ROM

128 Bytes

RAM

Timer 1

Timer 0

Counter

Inputs

Serial

Port

TXD RXD
P0 P1 P
P
BUS
BUS

Control

Arquitetura do 8051

Arquitetura do 8051

1 2 3 4 5 6 7 8 9

10

11

12

13

14

15

16

17

18

19

20

40

39

38

37

36

35

34

33

32

31

30

29

28

27

26

25

24

23

22

21

** T2 P1.

** T2EX P1.

P1.

P1.

P1.

P1.

P1.

P1.

Rst

RXD P3.

TXD P3.

T0 P3.

T1 P3.

XTAL

XTAL

Vss

Vcc

P0.0 AD

P0.1 AD

P0.2 AD

P0.3 AD

P0.4 AD

P0.5 AD

P0.6 AD

P0.7 AD

P2.7 A

P2.6 A

P2.5 A

P2.4 A

P2.3 A

P2.2 A

P2.1 A

P2.0 A

EA / Vpp*

ALE / Prog*

INT0 PSEN P3.

INT1 P3.

WR P3.

RD P3.

Pin (DIP)

Pinagem do 8051

Pinagem do 8051

  • EPROM Only

** 8052/8032 Only

/PSEN

P1 P

ALE

P3 P

/EA

Latch

GND

ROM/EPROM

/OE

D7-D

Endereços menos

significativo

Endereços mais

significativos

Hardware: memória de programa externa

Hardware: memória de programa externa

MCS-51 com

ROM interna

P1 P

/EA

ALE

RD\ P

WR\

Latch

VCC

RAM

D7-D

Endereços menos

significativo

Endereços mais

significativos

WE\ OE\

E/S

bits de paginação

E/S

Hardware: memória de dados externa

Hardware: memória de dados externa

7Fh Endereçamento por byte

30h

07h R

Banco 0

00Hh R

0Fh R

Banco 1

08h R

17h R

Banco 2

10h R

1Fh R

Banco 3

18h R

2Fh Endereçável

por bit e/ou byte

20h

Valor inicial do SP

(Stack Pointer:

ponteiro de pilha) após

um sinal de Reset.

128 bytes inferiores da RAM interna

128 bytes inferiores da RAM interna

Registradores de Funções Especiais (SFR)

Registradores de Funções Especiais (SFR)

Registradores Endereço Nome dos Registradores

A ou ACC E0h Acumulador

B F0h Registrador B

DPL 82h Byte menos significativo do Ponteiro de Dados

DPH 83h Byte mais significativo do Ponteiro de Dados

IE A8h Habilitador de Interrupções

IP B8h Priorizador de Interrupções

SCON 98h Controlador da Comunicação Serial

SBUF 99h Buffer de Dados Serial

PSW D0h Palavra de Status de Programa

PCON 87h Controle de Potência

TCON 88h Controle do Timer /Contador

TMOD 89h Modo de operação de Timer /Contador

TH0 8Ch Byte mais significativo do Timer /Contador 0

TL0 8Ah Byte menos significativo do Timer /Contador 0

TH1 8Dh Byte mais significativo do Timer /Contador 1

TL1 8Bh Byte menos significativo do Timer /Contador 1

P0 80h Porta 0

P1 90h Porta 1

P2 A0h Porta 2

P3 B0h Porta 3

Conjunto de Instruções do 8051

Conjunto de Instruções do 8051

Estrutura: OPCODE DESTINO FONTE

Modos de endereçamento:

  • Direto: ADD A, 7FH ; MOV 90H, A
  • Indireto: ADD A, @R0 ; MOVX @DPTR, A
  • Registrador: MOV R5, A
  • Registrador Específico: CRL A ; INC DPTR
  • Constante Imediata: MOV A, #100 ; MOV DPTR, #05FEH
  • Indexado: MOVC A, @A+DPTR ; MOVC A, @A+PC

Grupos de Instruções:

  • Instruções de Transferência;
  • Instruções Lógicas;
  • Instruções Aritméticas;
  • Instruções Booleanas;
  • Instruções de Desvio.

Instruções de Transferência de Dados

Instruções de Transferência de Dados

Modos de Endereçamento

Mnemônico Operação Dir. Ind. Reg. Imed.

Tempo de Exec. (

s)

MOV A,< src >

(A)

< src >

X X X X 1

MOV < dest >,A

< dest >

(A)

X X X 1

MOV < dest >,< src >

< dest >

< src >

X X X X 2

MOV DPTR,# data

16

(DPTR)

# data

16

X 2

PUSH < src >

(SP)

(SP)+1, ((SP))

< src >

X 2

POP < dest >

< dest >

((SP)), (SP)

(SP)-

X 2

XCH A,< byte >

(A)

< byte >

X X X 1

XCHD A,@Ri

(A)

3,

((Ri))

3,

X 1

Tabela 1: Operações de transferência de dados da RAM interna.

Instruções Lógicas

Instruções Lógicas

Modos de Endereçamento

Mnemônico Operação Dir. Ind. Reg. Imed. Tempo de Exec. (

s)

ANL A,< byte > (A)

(A) and < byte >

X X X X 1

ANL < byte >,A < byte >

< byte > and (A)

X 1

ANL < byte >,# data < byte >

< byte > and #data

X 2

ORL A,< byte > (A)

(A) or < byte >

X X X X 1

ORL < byte >,A < byte >

< byte > or (A)

X 1

ORL < byte >,# data < byte >

< byte > or # data

X 2

XRL A,< byte > (A)

(A) or-ex < byte >

X X X X 1

XRL < byte >,A < byte >

< byte > or-ex (A)

X 1

XRL < byte >, #data < byte >

< byte > or-ex #data

X 2
CLR A
(A)

#00h

Só (A) 1

CPL A
(A)

not (A)

Só (A) 1

RL A Rotaciona (A) um bit para a esq.

Só (A)

1

RLC A Rotaciona (A) um bit para a

esquerda através do (C)

Só (A) 1

RR A Rotaciona (A) um bit para a dir.

Só (A) 1

RRC A Rotaciona (A) um bit para a

direita através do (C)

Só (A) 1

SWAP A
(A)

3,

(A)

7,

Só (A) 1

Instruções Aritméticas

Instruções Aritméticas

Modos de Endereçamento

Mnemônico Operação Dir. Ind. Reg. Imed.

Tempo de Exec. (

s)

ADD A,< byte >

(A)

(A) + < byte >

X X X X 1

ADDC A,< byte >

(A)

(A) + < byte > + (C)

X X X X 1

SUBB A,< byte >

(A)

(A) - < byte > - (C)

X X X X 1

INC A

(A)

(A) + 1

Só (A) 1

INC < byte >

( byte )

< byte > + 1

X X X 1

INC DPTR

(DPTR)

(DPTR) + 1

Só DPTR 2

DEC A

(A)

(A) - 1

Só (A) 1

DEC < byte >

( byte )

< byte > - 1

X X X 1

MUL AB

(B)

+ sign (A*B)

(A)

  • sign (A*B)

(A) e (B)

DIV AB

(A)

int (A/B)

(A)

mod (A/B)

(A) e (B)

DA A Ajuste decimal Só (A) 1

Instruções de Desvio

Instruções de Desvio

Mnemônico Operação Tempo de Exec. (

s)

SJMP addr salta para addr (-128 a +127) 2

AJMP addr salta para addr ( dentro do espaço de –1024 a +1024) 2

LJMP addr salta para addr (64K) 3

JMP @A+DPTR salta para A+DPTR 2

ACALL addr chama a sub-rotina para o end. addr (dentro do espaço de

  • 1024 a +1024)

2

LCALL addr chama a sub-rotina para o end. addr (64K) 3

RET Retorna da sub-rotina 2

RETI Retorna da rotina de atendimento a interrupção 2

NOP Nenhuma operação ( No operation ) 1

Tabela 1: Instruções de salto incondicional.

Modos de Endereçamento

Mnemônico Operação Dir. Ind. Reg. Imed. Tempo de Exec. (s)

JZ rel (PC)

 (PC) + rel , se (A) = 0 Só (A) 2

JNZ rel (PC)  (PC) + rel , se (A)  0 Só (A) 2

DJNZ < byte >, rel < byte >

 < byte >-1 e

(PC)  (PC) + rel , se ( byte )  0

X X 2

CJNE A,< byte >, rel (PC)

 (PC) + rel ,

se (A)  < byte >

X X 2

CJNE A ,#data , rel (PC)  (PC) + rel ,

se (A)

#data

X X 2

Tabela 2: Instruções de salto condicional.