MIC29004-2014-2: mudanças entre as edições
Ir para navegação
Ir para pesquisar
Sem resumo de edição |
|||
Linha 100: | Linha 100: | ||
*[http://tele.sj.ifsc.edu.br/~roberto.matos/mic/proteus/alu_bip1.pdsprj ALU BIP I] | *[http://tele.sj.ifsc.edu.br/~roberto.matos/mic/proteus/alu_bip1.pdsprj ALU BIP I] | ||
= Aula 22/09: Prova Teórica = | |||
= Aula 25/09: Microcontroladores = | |||
* Microcontrolador vs Microprocessador | |||
* Aplicações | |||
* Limitações | |||
= Aula 29/09: Prova Prática = | |||
= Aula 02/10: Troca com Prof. Francisco (POO) = | |||
= Aula 06/10: 8051 = | |||
* Introdução | |||
* Arquitetura Interna | |||
* Memória | |||
= Aula 09/10: Assembly 8051 = | |||
* Organização de um Código Assembly | |||
* Instrução do montador: ORG, DB, END | |||
* Prática com o [http://mcu8051ide.sourceforge.net/ MCU8051IDE]. | |||
* [http://www.8052.com/set8051 Conjunto de Instruções] e [http://www.keil.com/support/man/docs/is51/is51_opcodes.htm Opcodes] | |||
* Modos de Endereçamento: | |||
** Imediato | |||
*:<code>MOV A, #100</syntaxhighlight> | |||
** Direto | |||
*:<code>MOV A, 20</syntaxhighlight> | |||
** Indireto | |||
*:<code>MOV A, @R0</syntaxhighlight> | |||
** Registro | |||
*:<code>MOV A, R0</syntaxhighlight> | |||
** Registro Específico | |||
*:<code>MOVX A, @DPTR</syntaxhighlight> | |||
** Indexado | |||
*:<code>MOVC A, @A+DPTR</syntaxhighlight> | |||
== Exemplo: == | |||
<code> | |||
;INSTRUÇÕES DO 8051 | |||
ORG 0 | |||
Inicio: | |||
mov 20h,#30h ;Ender. Imediato (valor constante esta' no opcode) | |||
mov 30h,#07ah ;Ender. Imediato (valor constante esta' no opcode) | |||
mov r0,30h ;Ender. Direto (operando especifica ENDERECO de 8 bits da RAM interna) | |||
mov a,r0 ;Ender. via registrador (opcode contem 3 bits indicando qual registrador usar) | |||
mov a,20h ;Ender. Direto (operando especifica ENDERECO de 8 bits da RAM interna) | |||
mov a,#20h ;Ender. Imediato (valor constante esta' no opcode) | |||
mov a,@r0 ;Ender. Indireto (registrador R0, R1, contem endereco do operando) | |||
mov dptr,#tabela ;Ender. Imediato (valor constante esta' no opcode) | |||
tabela: db 10h,20h,30h,0BBh,0AAh | |||
end | |||
</syntaxhighlight> |
Edição das 09h32min de 6 de outubro de 2014
1 Microprocessadores: Diário de Aula 2014-1
- Professor: Roberto de Matos
- Encontros: 2ª feira às 9:40h e 5ª feira às 7:30h
- Grupo no Facebook
- Conceitos
1.1 Material
1.2 Listas de Exercício
2 Aula 03/08: Apresentação
- Apresentação do professor.
- Apresentação dos alunos: Nome, perfil, preferências, etc.
- Apresentação da disciplina: conteúdo, bibliografia e avaliação.
- Aula Introdutória: Projetos práticos com Microcontroladores
3 Aula 07/08: Introdução a Memória
- Projetos práticos com Microcontroladores
- Introdução a Memória
- Latch D e Tristate
- Célula básica de memória
- Circuito genérico de memória
- Barramentos de dados, endereços e controle
- Links:
4 Aula 11/08: Não Houve Aula – Licença Médica
5 Aula 14/08: Proteus e Memória
- Introdução a Memória (cont.):
- Tamanho da memória e Largura da Palavra (N x M)
- Capacidade em bits
- Associação de Memórias
5.1 Proteus
Multiples of bytes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Fonte: http://en.wikipedia.org/wiki/Kilobyte |
- Consolidar o conhecimento sobre memórias e barramentos de endereços, dados e controle através de um experimento no Proteus.
- Roteiro:
- Entrar no Windows.
- Baixe o arquivo de projeto. Coloque em um diretório conhecido.
- Clique sobre o arquivo. O PROTEUS será executado e o projeto aberto.
- Observe que o projeto está parcialmente pronto. Você pode entrar em modo simulação. O sistema está preparado para que se possa inserir ou ler manualmente posições de memória.
- Grave o dado Ah na posição 0 de memória e Bh na posição 8.
- Note o Chip Select está habilitado sempre. Coloque uma chave adicional para colocar o Chip Select e repita a operação de gravação anterior.
- Utilize a nova configuração para gravar o seu número de matrícula a partir da posição 0.
5.2 Exercícios
- Usando a memória do experimento como bloco base, realize a ligação entre elas de modo que se construa um banco de memória de 32 palavras de 8 bits.
- Usando a memória do experimento como bloco base, realize a ligação entre elas de modo que se construa um banco de memória de 64 palavras de 4 bits.
- Quais os tamanhos dos barramentos de endereço e dado para uma Memória de 512x8 bits?
- Determine a capacidade final em bits e o endereço inicial e final em Hexadecimal das memórias com as seguintes características:
- 512x4
- 4Kx8
- 128Kx8
- 2Mx16
6 Aula 17/08: Tipos de Memória
- ROM (PROM, EPROM, EEPROM, FLASH);
- RAM (DRAM, SRAM, DDR)
- Diferença das células
6.1 Exercícios (cont.)
- Usando a memória do experimento como bloco base, realize a ligação entre elas de modo que se construa um bancos de memórias de:
- 16 palavras de 8 bits.
- 32 palavras de 4 bits.
7 Aula 21/08: Exercícios Memória e Apresentação TCCs
8 Aula 25/08: Introdução a Arquitetura e Organização de Computadores
9 Aula 28/08: Arquitetura do BIP I
10 Aula 01/09: Organização do BIP I
11 Aula 04/09: Decoder BIP I
12 Aula 08/09: Arquitetura e Organização do BIP II
13 Aula 22/09: Prova Teórica
14 Aula 25/09: Microcontroladores
- Microcontrolador vs Microprocessador
- Aplicações
- Limitações
15 Aula 29/09: Prova Prática
16 Aula 02/10: Troca com Prof. Francisco (POO)
17 Aula 06/10: 8051
- Introdução
- Arquitetura Interna
- Memória
18 Aula 09/10: Assembly 8051
- Organização de um Código Assembly
- Instrução do montador: ORG, DB, END
- Prática com o MCU8051IDE.
- Conjunto de Instruções e Opcodes
- Modos de Endereçamento:
- Imediato
MOV A, #100</syntaxhighlight>
- Direto
MOV A, 20</syntaxhighlight>
- Indireto
MOV A, @R0</syntaxhighlight>
- Registro
MOV A, R0</syntaxhighlight>
- Registro Específico
MOVX A, @DPTR</syntaxhighlight>
- Indexado
MOVC A, @A+DPTR</syntaxhighlight>
18.1 Exemplo:
- INSTRUÇÕES DO 8051
ORG 0
Inicio:
mov 20h,#30h ;Ender. Imediato (valor constante esta' no opcode)
mov 30h,#07ah ;Ender. Imediato (valor constante esta' no opcode)
mov r0,30h ;Ender. Direto (operando especifica ENDERECO de 8 bits da RAM interna)
mov a,r0 ;Ender. via registrador (opcode contem 3 bits indicando qual registrador usar)
mov a,20h ;Ender. Direto (operando especifica ENDERECO de 8 bits da RAM interna)
mov a,#20h ;Ender. Imediato (valor constante esta' no opcode)
mov a,@r0 ;Ender. Indireto (registrador R0, R1, contem endereco do operando)
mov dptr,#tabela ;Ender. Imediato (valor constante esta' no opcode)
tabela: db 10h,20h,30h,0BBh,0AAh
end
</syntaxhighlight>