Você está na página 1de 8

UNIVERSIDADE PAULISTA (UNIP)

Curso de Engenharia Mecatrnica


Disciplina: Microprocessadores e Microcontroladores (MM)

LISTA III

Orientaes: Esta lista de Exerccios deve ser entregue juntamente com a Prova P1 da
disciplina de MM. A realizao da lista individual e deve ser feita toda a mo. Somente
sero aceitas listas que atenderem as orientaes aqui especificadas.

EXERCCIO 01

Desenhe o diagrama de blocos do 8051 e explique a funcionalidade de todos os blocos
presentes no seu desenho.


CPU: Responsvel pelo Controle do Mc. o crebro do sistema, e tem competncia para acionar
e se comunicar com todas as vias supracitadas, s que sempre seguindo ou obedecendo s
diretivas gravadas na ROM.
PC: o indicador de endereo de memria . Ele serve para enderear a prxima instruo a ser
lida pelo Mc.
ROM: Memria responsvel por armazenar o programa de controle.
RAM: Memria responsvel por armazenar dados.
PORTAS PARALELAS: As portas P0, P1, P2 e P3, cada uma com oito linhas, so destinadas
comunicao externa. Pode se conectar a perifricos e I/O. uma interface de comunicao entre
o MC e um perifrico.

PORTA SERIAL: Porta de comunicao utilizada para conectar o Mc a outros equipamentos de
hardware. Na interface serial, os bits so transferidos em fila, ou seja, um bit de dados de cada
vez.
INTERRUPES EXTERNAS: Pinos de acesso nexterno que permitem interromper o
microprocessador, que ento interrompe suas tarefas atuais e atende aquelas planejadas pela
interrupo solicitada.
TIMER 0 e Timer 1: Responsveis pela temporizao. Permite que o Mc realize suas tarefas de
forma sincronizada e com velocidade predeterminada.


EXERCCIO 02

a- Faa um fluxograma e um programa em Assembly que some trs nmeros de 8 bits,
armazenados em posies subsequentes na rea da RAM interna (endereos 40h, 41h e
42h). O resultado deve ser armazenado na posio seguinte aos dados. Em seguida subtraia
deste valor encontrado (soma dos trs nmeros) o contedo do endereo 46h.
Para realizar a subtrao utilize o modo de endereamento indireto.
Transfira os seguintes dados para os seguintes endereos de memria antes de realizar a
soma:
(40h) = Os dois ltimos dgitos do seu RA.
(41h) = A soma do valor absoluto dos algarismos que compem seu RA.
(42h) = Se o valor alocado em 41h for par armazene o valor 1100100b, caso contrrio
armazene 11001001b.
(46h) = 110010b

Parte comum a programao:
Org 0h
.
.
.
CLR C
MOV B,#46h
SUBB A,@B
.
.
.

b- Indique quais so os valores finais em hexadecimal encontrados em todos os
registradores utilizados no programa.

Resultado depende do nmero do RA do aluno.

c- Neste programa necessrio realizar alguma operao com um bit de um registrador de
funo especial? Por qu?

Sim necessrio utilizar o bit C (carry) do Registrador PSW antes de efetuar a subtrao. Porque a ULA
no realiza a operao subtrao, desta forma para realizar a operao (A-B) obtemos este resultado
somando A ao Complemento a dois do nmero B.

EXERCCIO 03

a- Qual a capacidade mxima de endereamento da ROM e RAM externa na famlia
8051?

64*1024 = 65536 endereos. Intervalo de 0 a (1111111111111111b). Necessrio 16 bits para
endereamento.

b- Qual a capacidade mxima de endereamento da RAM interna na famlia 8051?

256 bytes. 256 endereos. 0 255 (11111111)

c- Qual o procedimento necessrio para eu mover o contedo do ltimo endereo
damemria ROM externa para o Acc?

necessrio alocar este endereo(16 bits) no DPTR que um registrador de 16 bits e utilizar o
endereamento indireto.

d- Faa a linha de cdigo em Assembly necessria para realizar o procedimento do
item c.

MOVX DPTR,#65535
MOVX A, @DPTR

EXERCCIO 04

a- O que so os bancos de registradores (R0 R7) do 8051. Para que servem?

So uma diviso da memria RAM interna, onde cada parte possui uma seqncia dos registradores
(R0 R7). Esses bancos alocam registradores que so utilizados em diversas instrues do Mc. Esse
registradores podem ser endereados diretamente.

b- Quantos bancos esto disponveis e como pode-se alterar o banco de registradores
que ser utilizado?

4 bancos(B0 B1 B2 B3). Atravs dos pinos do RS0 e RS1 do Registrador Especial PSW.

c- Em qual dispositivo estes bancos esto localizados? Defina a utilidade deste
dispositivo e suas caractersticas.

Na memria RAM Interna. A memria RAM um dispositivo de memria para armazenamento de dados
temporrio. Trata-se de uma memria voltil.

d- Faa o desenho de todo o dispositivo onde estes bancos esto localizados e indique
como este dispositivo ocupado (diviso do dispositivo).

A memria RAM interna ao Mc dividida em duas partes. Alta e baixa. Na parte alta esto alocados os
registradores de Funes Especiais (128 bytes). A parte baixa (128 bytes) encontra-se dividida em trs
partes: 32 bytes alocados aos Bancos R0, R1, R2 e R3. 16 bytes endereados bit a bit e 80 bytes
endereados byte a byte.



EXERCCIO 05

Construa um fluxograma e uma rotina que retorne no registrador R6 do banco 3 o nmero 6
quando o nmero armazenado no endereo 10h da RAM interna for divisvel por 6.
(Considere que um nmero divisvel por 6 quando ele divisvel por 2 e por 3 ao mesmo
tempo).

Org 0h
MOV A, 10h
MOV B,#2
DIV AB
MOV A,B
JZ
CLR PSW.3
SETB PSW.3
MOV A, 10h
MOV B,#3
DIV AB
MOV A,B
JZ
CLR PSW.3
SETB PSW.3
MOV R6, 10h
RET
Note que o bit PSW.3 corresponde ao bit RS0!

EXERCCIO 06

Qual a funo dos seguintes registradores de um microprocessador: Rn, A, PC, DPTR e B?
Quais deles armazenam endereos e quais deles armazenam dados? Onde cada um se
localiza?
A: Registrador que se utiliza como operando em vrias instrues do Mc. tambm onde fica o
resultado de vrias operaes realizadas.
PC: Enderea a prxima instruo a ser lida.
DPTR: um par de registradores (DPH + DPL) como se fosse uma s palavra de 16 bits. utilizado
para enderear at 64Kbytes de memria externa.
B: Registrador que em algumas poucas instrues tem seu nome diretamente referenciado: mulAB, div
AB, que so operaes entre os registradores A e B. na multiplicao armazena a parte menos
significativa do resultado e na diviso armazena o resto.

EXERCCIO 07

Descreva por passos um ciclo de busca de instruo de um Microcontrolador.

1: Endereo do PC colocado na via de endereos.
2: Sinal de controle da ROM ativado ( pois ser lida a ROM e no a RAM).
3: A instruo lida da ROM, no endereo dado pelo PC e lida pela via de dados

EXERCCIO 08

a- Descreva o port 3, quando ele usado para comunicao com memria externa e
com perifricos. Esse port pode ser usado , parcialmente, com os perifricos e ao
mesmo tempo, com os pinos restantes como port normal?

O port 3 s pode ser utilizado como port de propsito geral se no utilizar nenhum perifrico interno ao
chip, nenhuma interrupo externa e tambm no utilizar a RAM externa. Quando utilizado para a
comunicao com memria externa e com perifricos o Port P3 tem seus pinos comprometidos.

b- O port P0 na figura acima apresenta-se como AD0...AD7. O que a palavra AD quer
dizer? Qual a afuno do port P0?

A palavra AD referente a Address/Data ( endereos /dados). Este port multiplexado entre as
funes de enviar endereos ( address) e dados (data) pela mesma porta.

EXERCCIO 09

Qual a diferena entre microprocessador (MP) e microcontrolador (MC)? Exemplifique
aplicaes para um MP e para um MC.

O microprocessador somente o chip que contm IR, PC, ALU, INT. O Microcontrolador j inclui num
s chip o Mp, timer, serial, RAM e ROM.

EXERCCIO 10
O que significa dizer que o Mc 8051 um Mc de 8 bits?

Significa que sua clula de memria capaz de armazenar 8 bits.
EXERCCIO 11

Apresente os mneumnicos da seqncia de instrues que realiza a seguinte expresso:
(R3,R2) {(R1-R4) x [(R5+R6)/R0]}
Os registradores presentes na expresso acima devem pertencer aos registradores do banco
3.
ORG OOH
SETBRS0
SETB RS1
MOV A, R6
ADD A, R5
MOV B RO
DIV AB
MOV B,A
MOV A, R1
CLR C
SUBB A,R4
MUL AB
MOV R3,B
MOV R2,A
RET

EXERCCIO 12

Quais so os registradores no microcontrolador 8051 capazes de armazenar 16 bits?
Explique porque eles precisam ser capazes de armazenar 16 bits.

DPTR e PC. Devido a capacidade de endereamento de 16 bits do 8051, estes dois
registradores que armazenam endereo tm que ter a capacidade de armazenar 16 bits.

EXERCCIO 13

Considere as seguintes clulas de memria RAM externa de um microcontrolador 8051:

Fig.1.

a- Qual a diferena entre as instrues MOV A, #04h e MOVX A, 04h? Qual ser o
contedo de A aps a realizao de cada instruo considerando a Memria RAM
da Fig.1.?

MOV A, #04h: Endereamento imediato em A aps a execuo da instruo teremos: 04h
MOVX A, 04h: Endereamento direto em A aps a execuo da instruo teremos: 26h

b- Qual a diferena entre as instrues MOV @R2, A e MOVX @R2, A? Qual delas
capaz de alterar

A diferena entre as instrues MOV @R2, A e MOVX @R2, A que na primeira instruo o valor do
acumulador ser armazenado no endereo INTERNO indicado indiretamente por R2 j na segunda
instruo o valor do acumulador ser armazenado no endereo EXTERNO indicado indiretamente por
R2.
c- Qual a diferena entre as instrues MOVX A,@01h e MOVX A,01h? Qual ser o
contedo de A aps a realizao de cada instruo considerando a Memria RAM
da Fig.1.?

Sim necessrio utilizar o bit C (carry) do Registrador PSW antes de efetuar a subtrao. Porque a ULA
no realiza a operao subtrao, desta forma para realizar a operao (A-B) obtemos este resultado
somando A ao Complemento a dois do nmero B.

EXERCCIO 14

Considere o seguinte programa da Tabela 1.


Execute o programa passo a passo, isto , uma instruo de cada vez, e complete as seguintes
frases:
Aps a execuo da primeira instruo, o valor do PC foi alterado para 3002 h, que
corresponde ao
endereo da prxima instruo a ser executada. A primeira instruo carregou o valor 18h no
acumulador. O
modo de endereamento do operando #48h o endereamento imediato.
Execute a segunda instruo. Nela, o contedo do acumulador copiado no registrador R0,
sendo ambos acessados no modo de endereamento de registradores. Se os bits RS1 e RS0 do
registrador especial PSW estiverem ambos em 0, o banco de registradores correntemente selecionado
ser banco 0 . O registrador R0 deste banco, deve, agora, ter o valor 18h. E o acumulador, tem o seu
valor alterado? (S/N). Ao final da segunda instruo, o valor do PC 3003h.
Execute a terceira instruo, que coloca no acumulador o valor 48h e deixa o PC com o valor
3005h. Execute a quarta instruo, que coloca no registrador DPTR o valor 4567h e deixa o PC
com o valor 3008h.
Execute a quinta instruo. MOV @R0, A utiliza o modo de endereamento indireto para o
destino, pois ela copia o valor do acumulador na rea de RAM interna, numa posio cujo endereo est
no registrador R0. No passo 2, esse registrador foi carregado com o valor do acumulador, que era 18h.
O PC agora tem o valor 3009 h.
Execute a sexta instruo. MOVX @DPTR, A tambm utiliza o modo de endereamento
indireto, agora para copiar o acumulador na RAM externa. Como DPTR foi carregado (no passo 4) com
o valor 4567h, o contedo desse endereo na memria externa deve ser, agora, 48h. O PC foi, agora,
para 300Ah.
Execute a stima instruo. O valor copiado no acumulador obtido por endereamento
imediato.
Execute a oitava instruo, que coloca no registrador B o valor 13h e deixa o PC com o valor
300Eh.
O que a nona e a dcima instruo fazem?
Selecionam o banco 2 da memria RAM interna.
Execute a dcima primeira instruo. Ela faz a multiplicao entre A e B. Em A armazenado
93h em B armazenado 09h.
Na instruo 12 e 13 os registradores R5 e R6 pertencem ao banco 2 da memria RAM interna.
A ltima instruo no de movimentao de dados. Ela apenas desvia para o programa
monitor.