microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3...

29
Microprocessadores Descrição do 8051 Prof. Clayrton Henrique rev. 02 | fev. 2016

Upload: others

Post on 20-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

Microprocessadores

Descrição do 8051

Prof. Clayrton Henrique rev. 02 | fev. 2016

Page 2: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

2

Roteiro

Introdução ao 8051;

Descrição Técnica;

Organização da Memória;

Registradores Especiais;

Portas I/O;

Outros periféricos;

Referências...

Page 3: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

3

Introdução

8051

É um microcontrolador fabricado pela INTEL na década de

oitenta o qual, apesar de simples, tem uma enorme diversidade

de aplicações. Possui quarenta pinos os quais serão

apresentados a seguir:

Page 4: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

4

8051 DIP40

39

38

37

36

35

34

33

32

31

30

29

28

27

26

25

24

23

22

21

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

VCC

P0.0

P0.1

P0.2

P0.3

P0.4

P0.5

P0.6

P0.7

EA/VPP

ALE/PROG

PSEN

P1.0

P1.1

P1.2

P1.3

P1.4

P1.5

P1.6

P1.7

RST

XTAL2

XTAL1

VSS

ED0 P0.0

ED1

ED2

ED3

ED4

ED5

ED6

ED7

P2.6

P2.5

P2.4

P2.3

P2.2

P2.1

P2.0

E15

E14

E13

E12

E11

E10

E9

E8

P2.7

TXD

INT0

INT1

T0

T1

WR

RD

P3.0

P3.1

P3.2

P3.3

P3.4

P3.5

P3.6

P3.7

RXD

80

51

Page 5: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

5

Descrição Técnica

VSS [20]1

Terminal de referência ou de terra ( 0V ).

Nota 1: Cuidado para não inverter o CHIP durante manuseio.

Page 6: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

6

Descrição Técnica

VCC [40]

Terminal alimentação ou fonte ( 5V ±10%)²

Nota 2: Estamos abordando o datasheet de lógica TTL da INTEL.

Page 7: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

7

40

39

38

37

36

35

34

33

32

31

30

29

28

27

26

25

24

23

22

21

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

VCC

P0.0

P0.1

P0.2

P0.3

P0.4

P0.5

P0.6

P0.7

EA/VPP

ALE/PROG

PSEN

P1.0

P1.1

P1.2

P1.3

P1.4

P1.5

P1.6

P1.7

RST

XTAL2

XTAL1

VSS

ED0 P0.0

ED1

ED2

ED3

ED4

ED5

ED6

ED7

P2.6

P2.5

P2.4

P2.3

P2.2

P2.1

P2.0

E15

E14

E13

E12

E11

E10

E9

E8

P2.7

TXD

INT0

INT1

T0

T1

WR

RD

P3.0

P3.1

P3.2

P3.3

P3.4

P3.5

P3.6

P3.7

RXD

80

51

40

39

38

37

36

35

34

33

32

31

30

29

28

27

26

25

24

23

22

21

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

VCC

P0.0

P0.1

P0.2

P0.3

P0.4

P0.5

P0.6

P0.7

EA/VPP

ALE/PROG

PSEN

P1.0

P1.1

P1.2

P1.3

P1.4

P1.5

P1.6

P1.7

RST

XTAL2

XTAL1

VSS

ED0P0.0

ED1

ED2

ED3

ED4

ED5

ED6

ED7

P2.6

P2.5

P2.4

P2.3

P2.2

P2.1

P2.0

E15

E14

E13

E12

E11

E10

E9

E8

P2.7

TXD

INT0

INT1

T0

T1

WR

RD

P3.0

P3.1

P3.2

P3.3

P3.4

P3.5

P3.6

P3.7

RXD

805

1

Page 8: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

8

Descrição Técnica

RST [9]

Terminal de RESET. Deve estar em nível alto por, pelo

menos, dois ciclos de máquina. Ele organiza os valores

internos do chip para iniciar o trabalho adequadamente e

sempre da mesma maneira.

Nota 2: Estamos abordando o datasheet de lógica TTL da INTEL.

Page 9: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

9

Descrição Técnica

RST [9]

Ocorrendo o reset, ao Program Counter (PC) é atribuído

endereço 0000h [PC ←0000h]3, ou seja, o 8051 irá realizar o

fetch na posição inicial de memória, o que significa que o

programa desenvolvido deve estar nessa posição da ROM.

Nota 3: Usamos ORG 0h para que isso seja feito.

Page 10: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

10

Descrição Técnica

EA [31]

EXTERNAL ACESS: É um dos pinos de controle do chip, de

comando externo que determina se será utilizada a memória

ROM interna (EA = 1)4 ou se será lida uma ROM externa

(EA=0) ao chip.

Nota 4: com EA = 1 usa a ROM interna e, após 0FFF, usa a externa, se existir.

Page 11: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

11

Descrição Técnica

EA [31]

0 1 2 3 4 5 6 7

0FFFh

ROMInterna

0000h

1000h

FFFFh

ROM Externa

ROM Externa

FFFFh

0000h

0 1 2 3 4 5 6 70 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7

EA = 1

EA = 0

Page 12: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

12

Descrição Técnica

XTAL1[19] / XTAL2[18]

Terminais do oscilador, em geral, utiliza-se um cristal5. O

chip tem um sistema de oscilação interna que só exige do

exterior o cristal conectado a dois capacitores para gerar a

oscilação, que será o clock de sincronismo do dispositivo.

Nota 5: Se utilizar outro tipo de oscilador, deve-se ligá-lo diretamente em XTAL2.

Page 13: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

13

Descrição Técnica

XTAL1

VSS

XTAL2

C1

C2

XTAL1[19] / XTAL2[18]

Configuração para uso de um

oscilador a cristal no 8051.

Page 14: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

14

Descrição Técnica

XTAL1

VSS

XTAL2OsciladorExterno

XTAL1[19] / XTAL2[18]

Configuração para uso de um

oscilador externo no 8051.

Page 15: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

15

Descrição Técnica

PORTA 1 [1...8]

É uma porta bidirecional de uso geral como I/O. Composta por

8 vias (linhas) de comunicação.

Pode ser manipulada bit a bit6.

Page 16: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

16

Porta P1P

ort

a P

1

Nota 6: Para endereçar cada linha individualmente basta utilizar a seguinte notação:

PORTA . BIT

P1.2

ou seja, seleção da linha 2 da porta P1.

40

39

38

37

36

35

34

33

32

31

30

29

28

27

26

25

24

23

22

21

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

VCC

P0.0

P0.1

P0.2

P0.3

P0.4

P0.5

P0.6

P0.7

EA/VPP

ALE/PROG

PSEN

P1.0

P1.1

P1.2

P1.3

P1.4

P1.5

P1.6

P1.7

RST

XTAL2

XTAL1

VSS

ED0 P0.0

ED1

ED2

ED3

ED4

ED5

ED6

ED7

P2.6

P2.5

P2.4

P2.3

P2.2

P2.1

P2.0

E15

E14

E13

E12

E11

E10

E9

E8

P2.7

TXD

INT0

INT1

T0

T1

WR

RD

P3.0

P3.1

P3.2

P3.3

P3.4

P3.5

P3.6

P3.7

RXD

80

51

Page 17: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

17

Descrição Técnica

PORTA 2 [21...28]

É uma porta bidirecional de uso geral como I/O, somente no

caso de não ser utilizada nenhuma memória externa

(RAM/ROM). Composta por 8 vias (linhas) de comunicação.

Pode também ser manipulada bit a bit6.

Page 18: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

18

Porta P2

Caso seja utilizada uma

memória externa, estes pinos

assumem a função de

endereçamento dos bits mais

significativos.P

ort

a P

2

40

39

38

37

36

35

34

33

32

31

30

29

28

27

26

25

24

23

22

21

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

VCC

P0.0

P0.1

P0.2

P0.3

P0.4

P0.5

P0.6

P0.7

EA/VPP

ALE/PROG

PSEN

P1.0

P1.1

P1.2

P1.3

P1.4

P1.5

P1.6

P1.7

RST

XTAL2

XTAL1

VSS

ED0 P0.0

ED1

ED2

ED3

ED4

ED5

ED6

ED7

P2.6

P2.5

P2.4

P2.3

P2.2

P2.1

P2.0

E15

E14

E13

E12

E11

E10

E9

E8

P2.7

TXD

INT0

INT1

T0

T1

WR

RD

P3.0

P3.1

P3.2

P3.3

P3.4

P3.5

P3.6

P3.7

RXD

80

51

Page 19: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

19

Descrição Técnica

PORTA 0 [39...32]

É uma porta bidirecional de uso geral como I/O, somente no

caso de não ser utilizada nenhuma memória externa

(RAM/ROM). Composta por 8 vias (linhas) de comunicação.

Page 20: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

20

Descrição Técnica

PORTA 0 [39...32]

É responsável por multiplexar as informações de endereço e

dados, utilizando-se do pino ALE[30] para tal feito.

Page 21: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

21

Porta P0

Caso seja utilizada uma

memória externa, estes pinos

assumem a função de

endereçamento dos bits

menos significativos (LSB).P

ort

a P

0

40

39

38

37

36

35

34

33

32

31

30

29

28

27

26

25

24

23

22

21

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

VCC

P0.0

P0.1

P0.2

P0.3

P0.4

P0.5

P0.6

P0.7

EA/VPP

ALE/PROG

PSEN

P1.0

P1.1

P1.2

P1.3

P1.4

P1.5

P1.6

P1.7

RST

XTAL2

XTAL1

VSS

ED0 P0.0

ED1

ED2

ED3

ED4

ED5

ED6

ED7

P2.6

P2.5

P2.4

P2.3

P2.2

P2.1

P2.0

E15

E14

E13

E12

E11

E10

E9

E8

P2.7

TXD

INT0

INT1

T0

T1

WR

RD

P3.0

P3.1

P3.2

P3.3

P3.4

P3.5

P3.6

P3.7

RXD

80

51

Page 22: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

22

Descrição Técnica

PORTA 0 [39...32]

Além de endereçamento, esta porta se utiliza de multiplexação

no tempo para selecionar os dados a serem lidos/escritos nas

mesmas linhas, utilizando-se do pino ALE[30] para isso.

Pode também ser manipulada bit a bit6.

Page 23: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

23

Descrição Técnica

PORTA 3 [10...17]

É uma porta bidirecional de uso geral como I/O, somente

no caso de não ser utilizado nenhum dos recursos a seguir:

interrupções externas, comunicação serial, timers e memória

RAM externa. Composta por 8 vias (linhas) de comunicação.

Pode também ser manipulada bit a bit6.

Page 24: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

24

Porta P3

São vários recursos que esta

porta pode oferecer, os quais

serão tratados mais a frente

no curso.

Po

rta

P3

40

39

38

37

36

35

34

33

32

31

30

29

28

27

26

25

24

23

22

21

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

VCC

P0.0

P0.1

P0.2

P0.3

P0.4

P0.5

P0.6

P0.7

EA/VPP

ALE/PROG

PSEN

P1.0

P1.1

P1.2

P1.3

P1.4

P1.5

P1.6

P1.7

RST

XTAL2

XTAL1

VSS

ED0 P0.0

ED1

ED2

ED3

ED4

ED5

ED6

ED7

P2.6

P2.5

P2.4

P2.3

P2.2

P2.1

P2.0

E15

E14

E13

E12

E11

E10

E9

E8

P2.7

TXD

INT0

INT1

T0

T1

WR

RD

P3.0

P3.1

P3.2

P3.3

P3.4

P3.5

P3.6

P3.7

RXD

80

51

Page 25: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

25

Descrição Técnica

PSEN [29]

PROGRAM STORE ENABLE: Ele aciona a ROM/EPROM

externa (memória de programa) quando o microcontrolador

vai fazer uma busca de instrução na ROM, para, em seguida,

interpretá-la e executá-la. É ligado ao pino OE da memória.

Page 26: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

26

Descrição Técnica

ALE/PROG [30]

ADDRESS LATCH ENABLE: É um pino de controle do MC

que comanda7 a demultiplexação das informações de dados e

endereços menos significativos da porta P0. Seu valor equivale

a 1/6 do clock e pode ser utilizado para temporização externa,

porém, é desprezado quando do acesso à memória externa.

Nota 7: Ele é automaticamente gerado pelo microcontrolador.

Page 27: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

27

Descrição Técnica

8051

ALE[30] e PSEN[29]

ROM

PSEN

ALE

P2 Endereços 8 a 15

Endereços 0 a 7

LATCH

Dados 0 a 7

P0

OE

dados/ender.D0...D7E0

:E7

E8

:E15

Page 28: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

28

Descrição Técnica

ALE/PROG [30]

Este pino também é usado para entrada de pulso de

programação da memória interna, simultaneamente a este

processo, o pino 30 [VPP] recebe a tensão de 21V – Gravador

de EPROM.

Page 29: Microprocessadores · 4 8051 dip 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6

29

Descrição Técnica

UFSC. A família de microcontroladores 8051. Notas de aula. disponível em: <http://user.das.ufsc.br/~werner/eel7030/8051/Apostila8051Hari.pdf> acesso: fev/16

NICOLOSI, D. E. C. Microcontrolador 8051 detalhado. 8 Ed. São Paulo: Érica, 2007.

FERLIN, E. P. Apostila 8051 - Manual. Curitiba: 2004. Dispoível em: <files.professorferlin.webnode.com.br/200000338.../apostila%208051.pdf> Acesso Fev/2016.