of 25/25
Prentice Hall Microcontroladores 8051 1 Capítulo 2 Capítulo 2 A família de A família de Microcontroladores MCS-51 da Microcontroladores MCS-51 da Intel Intel Membro original é o 8051; 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;

Micro 8051

  • View
    177

  • Download
    1

Embed Size (px)

Text of Micro 8051

Captulo 2A famlia de Microcontroladores MCS-51 MCSda Intel Membro

original o 8051; CPU de 8 bits otimizada para aplicaes de controle; Poderosa capacidade de processamento booleano, incluindo lgica individual de bits; 64 Kbytes de endereamento de memria de programa; 64 Kbytes de endereamento de memria de dados; 4 Kbytes de memria de programa interna;Prentice Hall Microcontroladores 8051 1

Captulo 2:RAM de dados interna; 32 linhas de I/O bidirecionais endereveis individualmente; 2 Timers/Contadores de 16 bits; 5 entradas de interrupes (3 internas e 2 externas) com 2 nveis de prioridade; 1 oscilador interno de relgio. 128 bytes de memria

Prentice Hall

Microcontroladores 8051

2

Captulo 2:Arquitetura do 8051Interrupes Internas (3) e Externas (2) Entradas externas de clock dos Contadores

Controle de Interrupes

ROM

RAM

Timer 0

Timer 1

CPU

OSC

Bar. Controle

4 Portes de Ent/Sai

Porte Serial

P0Prentice Hall Microcontroladores 8051

P1

P2

P3

TX

RX3

Figura 1: Arquitetura bsica do microcontrolador 8051.

Captulo 2:

Famlia de Microcontroladores MCS-51 da IntelVerso sem ROM Verso com EPROM Capacidade Capacidade da ROM da RAM Portes Timers/ de E/S Contade 8 bits dores de 16 bits Matrizes de contadores programveis UART Canais de DMA Canais A/D Fontes de interrupo Modos de baixo consumo e Idle

Dispositivo

8051 8051AH 8052AH 80C51BH 80C52 83C51FA 83C51FB 83C152JA 83C152JC 83C452

8031 8031AH 8032AH 80C31BH 80C32 80C51FA 80C51FA 80C152JA 80C152JB 80C152JC 80C152JD 80C452

8751AH 8751BH 8752BH 87C51 87C51FA 87C51FB 87C452P

4K 4K 8K 4K 8K 8K 16K 8K 8K 8K

128 128 256 128 256 256 256 256 256 256 256 256

4 4 4 4 4 4 4 5 7 5 7 5

2 2 3 2 3 3 3 2 2 2 2 2

X X X X X X X X X X X X

6/5 6/5 8/6 6/5 8/6 14/7 14/7 19/11 19/11 19/11 19/11 9/8 X X X X X X X X X

X X

2 2 2 2

Tabela 1: A famlia de microcontroladores de 8 bits da Intel.Prentice Hall Microcontroladores 8051 4

Captulo 2:Pinagem do 8051E n t ra d a d o s in a l e x t e rn o d e R e se t E n t ra d a 2 d o c irc u it o o sc ila d o r e x t e rn o a c rist a l E n t ra d a 1 d o c irc u it o o sc ila d o r e x t e rn o a c rist a l P o rte 0 o u B a rra m e n to d e E n d e re o s m e n o s sig n if ic a tiv o e d a d o s (m u ltip le x a d o s): B it 0 d e p o rt e 0 o u A 0 e D 0 B it 1 d e p o rt e 0 o u A 1 e D 1 B it 2 d e p o rt e 0 o u A 2 e D 2 B it 3 d e p o rt e 0 o u A 3 e D 3 B it 4 d e p o rt e 0 o u A 4 e D 4 B it 5 d e p o rt e 0 o u A 5 e D 5 B it 6 d e p o rt e 0 o u A 6 e D 6 B it 7 d e p o rt e 0 o u A 7 e D 7 B it 0 d o p o rt e 1 B it 1 d o p o rt e 1 B it 2 d o p o rt e 1 ----9 ----18 ----19 ----39 ----38 ----37 ----36 ----35 ----34 ----33 ----32 ----1 ----2 ----3 ----4 ----5 ----6 ----7 ----8

R eset X2 X1 P 0 .0 /A D 0 P 0 .1 /A D 1 P 0 .2 /A D 2 P 0 .3 /A D 3 P 0 .4 /A D 4 P 0 .5 /A D 5 P 0 .6 /A D 6 P 0 .7 /A D 7 P 1 .0 P 1 .1 P 1 .2 P 1 .3 P 1 .4 P 1 .5 P 1 .6 P 1 .7 8

EA/ ALE PSEN/ P 2 .0 /A 8 P 2 .1 /A 9 P 2 .2 /A 1 0 P 2 .3 /A 1 1 P 2 .4 /A 1 2 P 2 .5 /A 1 3 P 2 .6 /A 1 4 P 2 .7 /A 1 5 P 3 .0 /R X D P 3 .1 /T X D P 3 .2 /I N T 0 / P 3 .3 /I N T 1 / P 3 .4 /T 0 P 3 .5 /T 1 P 3 .6 /W R / P 3 .7 /R D /

----31 ----30 ----29 ----21 ----22 ----23 ----24 ----25 ----26 ----27 ----28 ----10 ----11 ----12 ----13 ----14 ----15 ----16 ----17

S in a l d e s a d a p a ra a c e sso e x t e rn o a m e m r ia d e p ro g ra m a S in a l d e s a d a h a b ilit a d o r d e c a p t u ra e x t e rn a d o b y te d e e n d e re o m e n o s s ig n ific a t iv o q u e e st m u lt ip le x a d o c o m o b y te d e d a d o s S in a l d e s a d a d e c o n t ro le d e le it u ra d a m e m r ia d e p ro g ra m a e x t e rn a (R O M ) P o rte 2 o u B a rra m e n to d e E n d e re o s m a is sig n if ic a tiv o: B it 0 d o p o rt e 2 o u A 8 B it 1 d o p o rt e 2 o u A 9 B it 2 d o p o rt e 2 o u A 1 0 B it 3 d o p o rt e 2 o u A 1 1 B it 4 d o p o rt e 2 o u A 1 2 B it 5 d o p o rt e 2 o u A 1 3 B it 6 d o p o rt e 2 o u A 1 4 B it 7 d o p o rt e 2 o u A 1 5 B it 0 d o p o rt e 3 o u p in o d e re c e p o d e d a d o s se ria is B it 1 d o p o rt e 3 o u p in o d e t ra n s m is s o d e d a d o s se ria is B it 2 d o p o rt e 3 o u sin a l d e e n t ra d a e x t e rn a d a in t e rru p o 0 B it 3 d o p o rt e 3 o u sin a l d e e n t ra d a e x t e rn a d a in t e rru p o 1 B it 4 d o p o rt e 3 o u sin a l d e e n t ra d a d e c lo c k d o tim e r 0 B it 5 d o p o rt e 3 o u sin a l d e e n t ra d a d e c lo c k d o tim e r 1 B it 6 d o p o rt e 3 o u sin a l d e sa d a d e c o n t ro le d e e sc r it a d e m e m r ia d e d a d o s e x t e rn a (R A M ) B it 7 d o p o rt e 3 o u sin a l d e sa d a d e c o n t ro le d e le it u ra d e m e m r ia d e d a d o s e x t e rn a (R A M )

0

5

B it 3 d o p o rt e 1

1

B it 4 d o p o rt e 1 B it 5 d o p o rt e 1 B it 6 d o p o rt e 1 B it 7 d o p o rt e 1

F ig u ra 2 : P in a g e m d o 8051Prentice Hall Microcontroladores 8051 5

Captulo 2:Memria de programa e memria de dadosMemria de Programa:FFFFh FFFFh Externa Interna FFh 1000h0FFFh128 bytes superiores SFRs

Memria de Dados:Externa

PSEN\

EA\=0 Externa

EA\=1 Interna

80h 7Fh 00h

128 bytes inferiores

0000h RD\ WR\

0000h

Figura 3: Organizao da Memria da famlia de microcontroladores MCS-51 da Intel. Prentice Hall Microcontroladores 8051 6

Captulo 2:Endereamento das InterrupesROM 07FFh : : : : 0033h 0032h 002Bh 002Ah 0023h 0022h 001Bh 001Ah 0013h 0012h 000Bh 000Ah 0003h 0002h 0000h 8 bytes

Timer 2 (8052/32)

Serial Port

Timer 1

Ext. Int. 1 Timer 0

Ext. Int. 0 Reset

Figura 4: Memria de programa do MCS-51. Prentice Hall Microcontroladores 8051 7

Captulo 2:8051P1 PSENbarra P0

ROM/EPROM OE\=OEbarra D7-D0 LatchALE

Endereos menos significativo Endereos mais significativos

P3

P2 EAbarra

GND

Figura 5: Hardware para memria de programa externa.

Prentice Hall

Microcontroladores 8051

8

Captulo 2:MCS-51 com ROM interna

RAM D7-D0 Latch Endereos menos significativo Endereos mais significativos WE\ OE\

P1VCC

P0

EAbarra ALEE/S RD\ P3 WR\

P2

bits de paginaoE/S

Figura 6: Hardware para memria de dados externa.

Prentice Hall

Microcontroladores 8051

9

Captulo 2:

FFh Acessvel somente por endereamento indireto (128 bytes superiores) 80h 7Fh Acessvel por endereamento direto e indireto (128 bytes inferiores) 00h

FFh Acessvel por endereamento direto (SFRs: Portes, Bits de controles dos Timers, Acumulador, etc) 80h

Figura 7: Memria de dados interna.

Prentice Hall

Microcontroladores 8051

10

Captulo 2:Figura 8: 128 bytes inferiores da RAM interna.7Fh 30h2Fh

Endereamento por byte Enderevel por bit e/ou byteR7 Banco 3 R0 R7 Banco 2 R0 R7 Banco 1 R0 R7 Banco 0 R0 11

20h 1Fh 18h 17h

Valor inicial do SP (Stack Pointer: ponteiro de pilha) aps um sinal de Reset.

10h 0Fh 08h 07h 00Hh

Prentice Hall

Microcontroladores 8051

Captulo 2: Program Status Wordbits 7 6 5 4 3 2 1 0

(PSW = )

C

AC F0 RS1 RS0 OV

-

P

RS1 RS0 Banco Selecionado Registradores Selecionados Endereos de M emria Selecionados 0 0 0 R0 a R7 00h a 07h 0 1 1 R0 a R7 08h a 0Fh 1 0 2 R0 a R7 10h a 17h 1 1 3 R0 a R7 18h a 1Fh

Prentice Hall

Microcontroladores 8051

12

Bancos de RegistradoresR S 1 R S 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 E n d ereo 1 F h 1 E h 1 D h 1 C h 1 B h 1 A h 1 9 h 1 8 h 1 7 h 1 6 h 1 5 h 1 4 h 1 3 h 1 2 h 1 1 h 1 0 h 0 F h 0 E h 0 D h 0 C h 0 B h 0 A h 0 9 h 0 8 h 0 7 h 0 6 h 0 5 h 0 4 h 0 3 h 0 2 h 0 1 h 0 0 h R e g is tr a d o r R 7 R 6 R 5 R 4 R 3 R 2 R 1 R 0 R 7 R 6 R 5 R 4 R 3 R 2 R 1 R 0 R 7 R 6 R 5 R 4 R 3 R 2 R 1 R 0 R 7 R 6 R 5 R 4 R 3 R 2 R 1 R 0 B a n co 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0

Captulo 2:

Prentice Hall

Microcontroladores 8051

13

Captulo 2:Endereamento por bits/bytes bits/Endereo de Memria bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0

2Fh 2Eh 2Dh 2Ch 2Bh 2Ah 29h 28h 27h 26h 25h 24h 23h 22h 21h 20hPrentice Hall

7Fh 77h 6Fh 67h 5Fh 57h 4Fh 47h 3Fh 37h 2Fh 27h 1Fh 17h 0Fh 07h

7Eh 76h 6Eh 66h 5Eh 56h 4Eh 46h 3Eh 36h 2Eh 26h 1Eh 16h 0Eh 06h

7Dh 75h 6Dh 65h 5Dh 55h 4Dh 45h 3Dh 35h 2Dh 25h 1Dh 15h 0Dh 05h

7Ch 74h 6Ch 64h 5Ch 54h 4Ch 44h 3Ch 34h 2Ch 24h 1Ch 14h 0Ch 04h

7Bh 73h 6Bh 63h 5Bh 53h 4Bh 43h 3Bh 33h 2Bh 23h 1Bh 13h 0Bh 03h

7Ah 72h 6Ah 62h 5Ah 52h 4Ah 42h 3Ah 32h 2Ah 22h 1Ah 12h 0Ah 02h

79h 71h 69h 61h 59h 51h 49h 41h 39h 31h 29h 21h 19h 11h 09h 01h

78h 70h 68h 60h 58h 50h 48h 40h 38h 30h 28h 20h 18h 10h 08h 00h14

Microcontroladores 8051

Captulo 2:Registradores de Funes Especiais (SFRs)Registradores A ou ACC * ndereo E0h 0h 82h 83h A8h 8h 98h 99h 0h 87h 88h 89h 8Ch 8Ah 8Dh 8 h 80h 90h A0h 0h No e dos Registradores Acumulador egistrador Byte menos signi icativo do onteiro de ados Byte mais signi icativo do onteiro de ados abilitador de Interrupes riorizador de Interrupes Controlador da Comunicao erial Buffer de ados erial alavra de Status de rograma Controle de otncia Controle do Ti er/Contador odo de operao de Ti er/Contador Byte mais signi icativo do Ti er/Contador 0 Byte menos signi icativo do Ti er/Contador 0 Byte mais signi icativo do Ti er/Contador 1 Byte menos signi icativo do Ti er/Contador 1 orte 0 orte 1 orte 2 orte 3

IE* I CON* W* CON TCON* T OD T 0 T 0 T 1 T 1 0* 1* 2* 3*

Prentice Hall

Microcontroladores 8051

15

Captulo 2:Registradores de Funes Especiais (SFRs) para o 8052Registradores Endereo ome dos Registradores T2CON* C8h Controle de Timer/Contador 2 TH2 CDh Byte mais significativo do Timer/Contador 2 TL2 CCh Byte menos significativo do Timer/Contador 2 RCAP2H CBh Byte mais significativo do Timer/Contador de captura 2 RCAP2L CAh Byte mais significativo do Timer/Contador de captura 2 * Registradores endereados por bit; Tabela 2 - Registradores de Funes Especiais.

Prentice Hall

Microcontroladores 8051

16

Captulo 2:

Figura 10: Decodificador 74HC138

Figura 12: Decodificador 74138Prentice Hall Microcontroladores 8051 17

Captulo 2:Entradas SadasY6 1 1 1 1 1 1 1 1 1 0 1 G2A G2B G1 A2 A1 A0 Y0 Y1 Y2 Y3 Y4 Y5 1 X X X X X 1 1 1 1 1 1 X 1 X X X X 1 1 1 1 1 1 X X 0 X X X 1 1 1 1 1 1 0 0 1 0 0 0 0 1 1 1 1 1 0 0 1 0 0 1 1 0 1 1 1 1 0 0 1 0 1 0 1 1 0 1 1 1 0 0 1 0 1 1 1 1 1 0 1 1 0 0 1 1 0 0 1 1 1 1 0 1 0 0 1 1 0 1 1 1 1 1 1 0 0 0 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 0: 0 lgico; 1: 1 lgico; X: pode ser 0 ou 1 lgico; : representa entrada ativa em0 lgico.

Tabela 3: Tabela verdade do 74138Prentice Hall Microcontroladores 8051 18

Captulo 2:

Figura 11: Exemplo de mapeamento de memria com o 74138.

Prentice Hall

Microcontroladores 8051

19

Captulo 2:A15 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 A14 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 A13 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 A12 0

A11 0

A10 0

A9 0

A8 0

A7 0

A6 0

A5 0

A4 0

A3 0

A2 0

A1 0

A0 0

Endereo Inicial e inal 0000H 1 H 2000H 3FFFH 4000H 5FFFH 6000H 7FFFH 8000H 9FFFH A000H

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

FFFH C000H

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

1 0

DFFFH E000H FFFFH

1

1

1

1

1

1

1

1

1

1

1

1

1

Dgito + sign. do endereo

2 dgito + sign do endereo

2 dgito - sign do endereo

Dgito - sign do endereo

Prentice Hall

Microcontroladores 8051

20

Captulo 2:

i ra 1 2 i r c i t o d e Reset para a famlia de microcontroladores MCS-51 da Intel.

Prentice Hall

Microcontroladores 8051

21

Captulo 2:

F ig u ra 1 3 : C irc u ito d o sin a l d e re l g io ( c lo c k ).

Prentice Hall

Microcontroladores 8051

22

Captulo 2:2 2 2 2 2 2 2 2 2 2 Sinal de LE :

O pcode

o prx. O pcode (descarta)

o prx. O pcode novam ente

1

2

3

S4

S5

S6 ,#data.

O pcode

segundo Byte

S1 3

S2

S3

S4

S5

S6 P TR . S6

O pcode

prox. O pcode (descata)

prox. O pcode (descarta)

S1

S2

S3

S4

S5

S1

S2

S3

Abaixo os sinais e tempos envolvidos na b usca do programa em m emria de programa externa em uso da instruo O V X .

S1 1

2

S2 1

2

S3 1

2

S4 1

2

S5 1

2

S6 1

2

S1 1

2

S2 1

2

S3 1

2

Sinal de

LE :

SE N \ : D \:

2: CH O ut 0:Inst. in

CH O utInst. in

CH O utC L O utInst. in

CH O ut

C L O ut

C L O ut

Inst. in

Prentice Hall

Microcontroladores 8051

ois ciclos de instruo de um byte . Ex: INC

2- U m ciclo de instruo de dois bytes . E x:

1- U m ciclo de instruo de um byte. E x: INC

.

S1

S2

S3

S4

S5

S6

prox. O pcode

S1

S2

S3

S4

S5

S6

prox. O pcode (descarta)

S4

S5

S6

S4 1

2

S5 1

2

S6 1

CH O utC L O ut

Sinal de relgio : 1 2 1 2 1

3 1

4 1

5 1

6 1

1 1

2 1

3 1

4 1

5 1

6 1

2

2

23

Captulo 2: Operao de executar um programa passo a passo: passo:JNB P3.2,$ JB P3.2,$ ETI ; Aguarda que o bit 3.2 v para 1 lgico ; Aguarda que o bit P3.2 v para 0 lgico ; etorna da rotina de atendimento da onte de interrupo INT0\

Prentice Hall

Microcontroladores 8051

24

Captulo 2: Modos de reduo de potncia em microcontroladores CHMOS: CHMOS:Modo Idle Modo Baixa PotnciaRegistrador PCON: bit 7 SMOD bit 6 bit 5 bit 4 bit 3 GF1 bit 2 GF0 bit 1 PD bit 0 IDL

-SMOD: Bit de duplo baud rate (freqncia de recepo e transmisso do canal de comunicao serial). Quando igual a 1 lgico, o baud rate dobrado quando o canal de comunicao serial ou est no modo 1, ou 2, ou 3; -GF1: flag de uso de propsito geral; -GF0: flag de uso de propsito geral; -PD: Bit de baixa potncia (Power Down). Fazendo este bit igual a 1 lgico, ativa o modo de baixa potncia.

-IDL: Bit de Modo Idle. Fazendo este bit igual a 1 lgico, ativa o modo Idle.Prentice Hall Microcontroladores 8051 25