experiência 1 -introdução ao módulo didático mc-1 e ... · unidade se encontra no modo...

6
1 UNIVERSIDADE ESTADUAL PAULISTA “JÚLIO DE MESQUITA FILHO” FACULDADE DE ENGENHARIA DE ILHA SOLTEIRA DEPARTAMENTO DE ENGENHARIA ELÉTRICA LABORATÓRIO DE MICROPROCESSADORES I ELE 1078 Experiência 1 -Introdução ao Módulo Didático MC-1 e Instruções de Transferência de Dados Objetivos: Conhecer os elementos básicos e usar o módulo didático MC-1; Conhecer e utilizar as instruções de transferência de dados do 8085. Introdução O módulo MC-1 é um sistema baseado no microprocessador 8085 e projetado para uso didático em laboratórios de ensino de microprocessadores. O módulo principal é composto dos seguintes blocos: - CPU - 8085A, operando em 2,35 MHz; - Memória RAM de 256 bytes (2000H até 20FFH); - Memória EPROM de 2 Kbytes (0000 até 07FFH); - Teclado híbrido (24 teclas); - Display de 7 segmentos com seis dígitos; - Interface paralela; - Outros periféricos. O MC-1 é, de fato, um microcomputador simples, onde a unidade de entrada é o TECLADO e a unidade de saída é o “DISPLAY”. Para um conhecimento básico em microprocessadores, o MC-1 é altamente eficiente e flexível. No sistema existem várias placas de expansão, como: Memória RAM, Memória EPROM, Interface Paralela 8255, Interface Serial 8251, TIMER 8253, etc. Dessa forma, experimentos variados podem ser realizados, possibilitando um aprendizado eficiente. Naturalmente, o sistema MC-1 possibilita uma formação mais adequada para os engenheiros que irão desenvolver atividades na área de automação e controle, onde se usam microprocessadores simples, CLPs, etc. Mas seu esquema geral está próximo dos micros mais modernos. Manuais de Apoio: Curso MC- Vol 1 e 2 e MC-1 Instruções de Uso Comandos Básicos do MC-1 Reset in - Esta tecla causa o reinicio do sistema e do funcionamento do Monitor (sistema operacional do módulo). A mensagem “- LAB 85” aparecerá no display se a unidade se encontra no modo teclado/display. Após apertar esta tecla, o monitor estará

Upload: dodien

Post on 09-Feb-2019

213 views

Category:

Documents


0 download

TRANSCRIPT

1

UNIVERSIDADE ESTADUAL PAULISTA “JÚLIO DE MESQUITA FILHO”

FACULDADE DE ENGENHARIA DE ILHA SOLTEIRA

DEPARTAMENTO DE ENGENHARIA ELÉTRICA

LABORATÓRIO DE MICROPROCESSADORES I – ELE 1078

Experiência 1 -Introdução ao Módulo Didático MC-1 e Instruções de

Transferência de Dados

Objetivos:

Conhecer os elementos básicos e usar o módulo didático MC-1;

Conhecer e utilizar as instruções de transferência de dados do 8085.

Introdução

O módulo MC-1 é um sistema baseado no microprocessador 8085 e projetado

para uso didático em laboratórios de ensino de microprocessadores. O módulo principal

é composto dos seguintes blocos:

- CPU - 8085A, operando em 2,35 MHz;

- Memória RAM de 256 bytes (2000H até 20FFH);

- Memória EPROM de 2 Kbytes (0000 até 07FFH);

- Teclado híbrido (24 teclas);

- Display de 7 segmentos com seis dígitos;

- Interface paralela;

- Outros periféricos.

O MC-1 é, de fato, um microcomputador simples, onde a unidade de entrada é o

TECLADO e a unidade de saída é o “DISPLAY”. Para um conhecimento básico em

microprocessadores, o MC-1 é altamente eficiente e flexível. No sistema existem várias

placas de expansão, como: Memória RAM, Memória EPROM, Interface Paralela

8255, Interface Serial 8251, TIMER 8253, etc. Dessa forma, experimentos variados

podem ser realizados, possibilitando um aprendizado eficiente. Naturalmente, o sistema

MC-1 possibilita uma formação mais adequada para os engenheiros que irão

desenvolver atividades na área de automação e controle, onde se usam

microprocessadores simples, CLPs, etc. Mas seu esquema geral está próximo dos

micros mais modernos.

Manuais de Apoio: Curso MC- Vol 1 e 2 e MC-1 – Instruções de Uso

Comandos Básicos do MC-1

Reset in - Esta tecla causa o reinicio do sistema e do funcionamento do Monitor

(sistema operacional do módulo). A mensagem “- LAB 85” aparecerá no display se a

unidade se encontra no modo teclado/display. Após apertar esta tecla, o monitor estará

2

pronto para aceitar um comando, o conteúdo da memória não é alterado, porém os

registradores perdem seu conteúdo.

Mem - Permite verificar o conteúdo da memória ROM e ler ou alterar o

conteúdo da memória RAM. Ao apertar esta tecla, um ponto decimal será mostrado no

extremo direito.

Reg - Permite verificar e alterar o conteúdo dos registradores. Ao apertar esta

tecla, aparece um ponto decimal no extremo direito no campo de endereços; deve-se

apertar uma tecla correspondente ao registrador que se deseja verificar ou alterar o

conteúdo. Será mostrado o registrador teclado e seu conteúdo no campo de dados. Para

se alterar seu conteúdo basta digitar novo valor e teclar Next ou Execute.

Next - Permite verificar o conteúdo do endereço ou registrador seguinte ao

mostrado no display e trocá-lo, caso se deseje.

Execute - Executa um determinado programa a partir do endereço fornecido pelo

comando GO ou termina um comando.

Go - Permite alterar o valor do PC (Program Counter - Contador de Programa).

Single Step - Permite a execução de um programa passo a passo;

Restart 7.5 - Desvia o programa para a posição 20CEH (RAM). Esse comando é

baseado na interrupção RST 7.5 (desvio normal para 003CH).

A visualização de dados e endereços é realizada através do “Display” (unidade

de saída), que é dividido em dois campos: Endereços (4 dígitos) e Dados (2 dígitos).

Cada dígito representa uma parcela binária de 4 bits. Assim, como o 8085 possui 16

linhas de endereços, são necessárias 4 unidades de 7 segmentos. Já no caso dos dados, o

8085 opera com 8 bits, necessitando apenas de 2 dígitos.

Esquema dos Displays do MC-1

Campo de endereços Campo de dados

Experiências

Parte 1 – Uso do Módulo Didático

1.1 – Anote o conteúdo dos seguintes blocos de memória: B1: 0000H a 0003H, B2:

1000H a 1003H e B3: 2000H a 2003H. Tente modificar tais posições inserindo o

valor 18H em todas as posições de memória. Em seguida desligue o equipamento por

20 segundos. Religue-o e verifique novamente os blocos de memória. Comente os

resultados observando os possíveis tipos de memória.

1.2 – Insira, a partir da posição 2000H, os seguintes valores: 3EH, 77H, 06H, 66H,

0EH, 55H e CFH. Execute o programa (GO 2 0 0 0 EXEC). Verifique o conteúdo do

contador de programa (PCH-PCL) e dos registradores A, B e C usando o comando

REG. Comente os resultados, tentando explicá-los. (não use a tecla RST IN após a

execução do programa).

3

1.3 – Insira o seguinte programa na memória, execute-o e comente o que observa.

Endereço (H) Conteúdo (H) Endereço (H) Conteúdo (H) Endereço (H) Conteúdo (H)

2000 31 200B D3 2016 80

2001 B0 200C 22 2017 CD

2002 20 200D 7B 2018 F1

2003 3E 200E D3 2019 05

2004 03 200F 21 201A D1

2005 D3 2010 D5 201B 13

2006 20 2011 CD 201C C3

2007 AF 2012 63 201D 0A

2008 57 2013 03 201E 20

2009 5F 2014 11

200A 7A 2015 00

Faça a seguinte alteração e verifique o que ocorre: (2016H) = 02H.

Parte 2 – Instruções de Transferência de Dados

2.1 – Codificar em op code, armazenar na memória e executar o seguinte programa:

4

INSTRUÇÃO CÓDIGO (HEXA)

MVI A, 33H

STA 2070H

MVI B, 20H

MOV C, A

STAX B

RST 1

Verifique, sem usar RESET IN após a execução do programa, os conteúdos dos

registradores A, B e C, e também das posições de memória 2033H e 2070H. A partir do

resultado, resuma as operações realizadas pelo programa, comentando-o.

2.2 – Elaborar um programa para carregar os registradores A, B, C, D e E com valores

de oito bits e salve o conteúdo de cada um desses registradores a partir da posição

2050H. Converter para linguagem de máquina, executar e verificar seu funcionamento.

2.3 – Elaborar um programa para transferência de 6 bytes armazenados a partir da

posição 2050H para uma outra área começando no endereço 2080H. Converter para

linguagem de máquina, executar e verificar seu funcionamento.

Parte 3 – Tarefa Extra

3.1 – Simule o programa 2.1, 2.2 e 2.3 usando o Emulador Abacus.

3.2 – Faça o relatório das experiências realizadas e uma conclusão geral.

5

6

Conjunto de Instruções do 8085 – Ordem Alfabética

CODE INSTRUC CODE INSTRUC CODE INSTRUC CODE INSTRUC CODE INSTRUC

CE ACI D8 15 DCR D 41 MOV B,C 72 MOV M,D E7 RST 4

87 ADD A 1D DCR E 42 MOV B,D 73 MOV M,E EF RST 5

80 ADD B 25 DCR H 43 MOV B,E 74 MOV M,H F7 RST 6

81 ADD C 2D DCR L 44 MOV B,H 75 MOV M,L FF RST 7

82 ADD D 35 DCR M 45 MOV B,L C8 RZ

83 ADD E 0B DCX B 46 MOV B,M 3E MVI A,D8

84 ADD H 1B DCX D 06 MVI B,D8 9F SBB A

85 ADD L 2B DCX H 4F MOV C,A 0E MVI C,D8 98 SBB B

86 ADD M 3B DCX SP 48 MOV C,B 16 MVI D,D8 99 SBB C

8F ADC A F3 DI 49 MOV C,C 1E MVI E,D8 9A SBB D

88 ADC B FB EI 4A MOV C,D 26 MVI H,D8 9B SBB E

89 ADC C 4B MOV C,E 2E MVI L,D8 9C SBB H

8A ADC D 76 HLT 4C MOV C,H 36 MVI M, D8 9D SBB L

8B ADC E DB IN D8 4D MOV C,L 9E SBB M

8C ADC H 3C INR A 4E MOV C,M 00 NOP DE SBI D8

8D ADC L 04 INR B

8E ADC M 0C INR C 57 MOV D,A B7 ORA A 30 SIM

C6 ADI D8 14 INR D 50 MOV D,B B0 ORA B F9 SPHL

A7 ANA A 1C INR E 51 MOV D,C B1 ORA C 32 STA ADR

A0 ANA B 24 INR H 52 MOV D,D B2 ORA D 02 STAX B

A1 ANA C 2C INR L 53 MOV D,E B3 ORA E 12 STAX D

A2 ANA D 34 INR M 54 MOV D,H B4 ORA H 37 STC

A3 ANA E 03 INX B 55 MOV D,L B5 ORA L 97 SUB A

A4 ANA H 13 INX D 56 MOV D,M B6 ORA M 90 SUB B

A5 ANA L 23 INX H 5F MOV E,A F6 ORI D8 91 SUB C

A6 ANA M 33 INX SP 58 MOV E,B D3 OUT D8 92 SUB D

E6 ANI D8 59 MOV E,C 93 SUB E

DA JC ADR 5A MOV E,D E9 PCHL 94 SUB H

CD CALL ADR C3 JMP ADR 5B MOV E,E C1 POP B 95 SUB L

DC CC ADR FA JM ADR 5C MOV E,H D1 POP D 96 SUB M

FC CM ADR D2 JNC ADR 5D MOV E,L E1 POP H D6 SUI D8

2F CMA C2 JNZ ADR 5E MOV E,M F1 POP PSW

3F CMC F2 JP ADR C5 PUSH B EB XCHG

BF CMP A EA JPE ADR 67 MOV H,A D5 PUSH D E3 XTHL

B8 CMP B E2 JPO ADR 60 MOV H,B E5 PUSH H AF XRA A

B9 CMP C CA JZ ADR 61 MOV H,C F5 PUSH PSW A8 XRA B

BA CMP D 62 MOV H,D A9 XRA C

BB CMP E 3A LDA ADR 63 MOV H,E 17 RAL AA XRA D

BC CMP H 0A LDAX B 64 MOV H,H 1F RAR AB XRA E

BD CMP L 1A LDAX D 65 MOV H,L D8 RC AC XRA H

BE CMP M 2A LHLD ADR 66 MOV H,M AD XRA L

D4 CNC ADR 01 LXI B,D16 C9 RET AE XRA M

C4 CNZ ADR 11 LXI D,D16 6F MOV L,A 20 RIM EE XRI D8

F4 CP ADR 21 LXI H,D16 68 MOV L,B F8 RM

EC CPE ADR 31 LXI SP,D16 69 MOV L,C D0 RNC 08

FE CPI D8 6A MOV L,D C0 RNZ 10

E4 CPO ADR 7F MOV A,A 6B MOV L,E F0 RP 18

CC CZ ADR 78 MOV A,B 6C MOV L,H E8 RPE 28

27 DAA 79 MOV A,C 6D MOV L,L E0 RPO 38

09 DAD B 7A MOV A,D 6E MOV L,M 0F RRC CB

19 DAD D 7B MOV A,E C7 RST 0 D9

29 DAD H 7C MOV A,H 77 MOV M,A CF RST 1 DD

39 DAD SP 7D MOV A,L 70 MOV M,B D7 RST 2 ED

3D DCR A 7E MOV A,M 71 MOV M,C DF RST 3 ED

05 DCR B 47 MOV B,A

0D DCR C 40 MOV B,B

CODE INSTRUC CODE INSTRUC CODE INSTRUC CODE INSTRUC CODE INSTRUC