Experimentos com Microprocessador
Laboratório 01
2013
1. Introdução
Um microprocessador age de acordo com as instruções salvas em sua memória não volátil, desta forma os exercícios propostos no Laboratório I foram executados da seguinte maneira: arquivos com programas a serem carregados na memória do micropocessador foram criados na linguagem Assembly com os nove comandos disponiveis no material, cada instrução foi passada para o equivalente em binário e depois convertida para decimal; Formas de onda dos programas foram geradas para se ter uma prévia do funcionamento e finalmente os programas eram carregados no dispositivo, um a um, para os testes práticos.
2. Experimentos
Os quatro programas feitos com os 9 comandos disponiveis foram:
1. Efetuar a leitura das chaves (valor binário de 0 a 255) da porta 02, somar 2 e escrever o resultado no display de 7 segmentos (porta 01) ;
Porta 01 (display de 7 segmentos), mostra o valor 5 em decimal, soma de
3 + 2.
Chaves em valores binários. Inserimos o valor 0000000011
(3 em decimal).
2. Efetuar a contagem crescente de 0 a 15;
3. Efetuar a leitura de 3 valores consecutivos lidos das chaves e em seguida mostra-los sequencialmente no display de 7 segmentos;
4. Acender os LEDs (porta 0) sequencialmente, começando do bit menos significativo para o mais significativo até que todos estejam acionados.
Led’s acendem na sequência
2.1 Programas
Comandos utilizados:
Somar com 2
Assembly
Clk
Binário
ROM
Instrução
IN R0, 2
7
0100 0000 00000010
16386 #Leitura do teclado
MOV R1, #2
5
1000 0001 00000010
33026 #Armazenar constante 2
ADD, R3,R1,R0
7
0010 0011 00000001
8961 #Somar
OUT 1, R3
7
0101 0011 00000001
21249 #Apresentar no display
RET
5
0111 0000 00000000
28672 #Retorno
Para um clock de 3Hz, o tempo de execução é 31 x 0,33s = 10,23s
Total: 31
No fluxograma ao lado, cada estado representa uma linha de comando que está sendo efetuado e as transições se dão a cada