MIC29004-2014-2: mudanças entre as edições

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Roberto.matos (discussão | contribs)
Sem resumo de edição
Roberto.matos (discussão | contribs)
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

  • 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


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
Decimal
Value Metric
1000 kB kilobyte
10002 MB megabyte
10003 GB gigabyte
10004 TB terabyte
10005 PB petabyte
10006 EB exabyte
10007 ZB zettabyte
10008 YB yottabyte
Binary
Value JEDEC IEC
1024 KB kilobyte KiB kibibyte
10242 MB megabyte MiB mebibyte
10243 GB gigabyte GiB gibibyte
10244 - - TiB tebibyte
10245 - - PiB pebibyte
10246 - - EiB exbibyte
10247 - - ZiB zebibyte
10248 - - YiB yobibyte
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:
  1. Entrar no Windows.
  2. Baixe o arquivo de projeto. Coloque em um diretório conhecido.
  3. Clique sobre o arquivo. O PROTEUS será executado e o projeto aberto.
  4. 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.
  5. Grave o dado Ah na posição 0 de memória e Bh na posição 8.
  6. 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.
  7. 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

    • 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>