12 miniprojetos - 1 conceito por projeto - desprezado 2 conceitos para fins de avaliação
recuperação - 1 avaliação escrita geral sobre a disciplina
3 PLANEJAMENTO 2014-1
Aula
Data
Horas
Conteúdo
Recursos
1
12/2
2
Introdução a disciplina. Avaliação.
Laboratório
2
13/2
2
Conceitos associados a memórias. Barramento de dados, endereços e controle.
Laboratório
3
19/2
2
Apresentação do Proteus. Apresentação do Mini-projeto 1 – acesso manual a uma memória de RAM de 2K
Laboratório
4
20/2
2
Desenvolvimento do Mini-projeto 1
Laboratório
5
26/2
2
Avaliação do Mini-projeto 1
Laboratório
6
27/2
2
Defesa de TCC2
Laboratório
7
6/3
2
Apresentação do Mini-Projeto 2 – Expansão de memória RAM de 2K para 8K
Laboratório
8
12/3
2
Desenvolvimento do Mini-projeto 2
Laboratório
9
13/3
2
Avaliação do Mini-projeto 2
Laboratório
10
20/3
2
Apresentação do Mini-projeto 3 – Movimentação manual de dados entre memórias e registradores
Laboratório
11
26/3
2
Desenvolvimento do Mini-projeto 3
Laboratório
12
27/3
2
Avaliação do Mini-projeto 3
Laboratório
13
2/4
2
Apresentação do Mini-projeto 4 – Operação manual de soma entre dados armazenados na memória
Laboratório
14
3/4
2
Desenvolvimento do Mini-projeto 4
Laboratório
15
9/4
2
Avaliação do Mini-projeto 4
Laboratório
16
10/4
2
Apresentação do Mini-projeto 5 – Introdução ao microcontrolador: movimentando dados da memória externa com o microcontrolador.
Laboratório
17
16/4
2
Desenvolvimento do Mini-projeto 5
Laboratório
18
17/4
2
Avaliação do Mini-projeto 5
Laboratório
19
23/4
2
Apresentação do Mini-projeto 6 – Movimentação da memória interna (modos de endereçamento)
Laboratório
20
24/4
2
Desenvolvimento do Mini-projeto 6
Laboratório
21
30/4
2
Avaliação do Mini-projeto 6
Laboratório
22
7/5
2
Apresentação do Mini-Projeto 7 – Subrotinnas e Stack
Laboratório
23
8/5
2
Desenvolvimento do mini-projeto 7
Laboratório
24
14/5
2
Avaliação do Mini-Projeto 7 -
Laboratório
25
15/5
2
Apresentação do Mini-Projeto 8 – Operação com aritméticas e lógicas
Laboratório
26
21/5
2
Desenvolvimento do mini-projeto 8
Laboratório
27
22/5
2
Avaliação do Mini-Projeto 8
Laboratório
28
28/5
2
Apresentação do Mini-Projeto 9 – Operação com bits
Laboratório
29
29/5
2
Desenvolvimento do mini-projeto 9
Laboratório
30
4/6
2
Avaliação do Mini-Projeto 9
Laboratório
31
5/6
2
Apresentação do Mini-Projeto 10 – Acesso a portas I
Laboratório
32
11/6
2
Avaliação do Mini-Projeto 10
Laboratório
33
12/6
2
Desenvolvimento do mini-projeto 10
Laboratório
34
18/6
2
Apresentação do Mini-Projeto 11 – Temprizadores e contadores
Laboratório
35
25/6
2
Desenvolvimento do mini-projeto 11
Laboratório
36
26/6
2
Avaliação do Mini-Projeto 11
Laboratório
37
2/7
2
Apresentação do Mini-Projeto 12 – Interrupções
Laboratório
38
3/7
2
Desenvolvimento do mini-projeto 12
Laboratório
39
9/7
2
Avaliação do Mini-Projeto 12
Laboratório
40
10/7
2
Recuperação Final
Laboratório
TOTAL
80
4 Aula 1- Dia 12/2/2014
4.1 Objetivos
Apresentação Ementa
Revisão de alguns conceitos em digital
Introdução a memórias
trabalhar memórias na forma de diagrama em blocos
apresentar barramentos de endereço/dados/controle
diferenciar conteúdo de endereço de memória;
apresentar o procedimento de acesso para escrita e para a leitura;
apresentar um diagrama de tempo simplificado de acesso a memória;
apresentar a CPU/microcontrolador como a "entidade" que acessa a memória
4.2 Diagrama em blocos da memória e barramentos
No diagrama abaixo está representado um bloco de memória primária de 16x8 (dezesseis endereços por 8 bits).
Note que uma posição de memória pode ser vista como uma caixa que possue um endereço e um conteúdo.
O conteúdo associado a posição de memória é uma palavra binária e, neste caso, possui 8 bits.
ou
Para que us dispositivo externo possa "acessar" a memória para leitura ou escrita, ele deve se utilizar de um conjunto de fios que chamamos de barramentos.
4.2.1 Barramento de Endereços
Este barramento permite determinar o endereço de uma posição a ser acessada na memória.
Um barramento de 4 linhas de endereço é designado por A3,A2,A1 e A0.
Supondo uma memória com endereços designados da forma hexadecimal de 0h a Fh. Supondo que A3
seja associado ao bit mais significativo e A0 ao bit menos significativo. Então, para acessar
a posição Bh de memória, deve-se injetar A3=1, A2=0, A1=1 e A0=1. Note que
O termo "injetar" significa aqui que um dispositivo externo deve forçar tensão nas linhas do barramento.
Esta tensão depende da tecnologia utilizada. Poderia ser, por exemplo, 5V para o nível lógico 1 e 0V par ao nível lógico 0.,
4.3 Diagrama de Tempo - Acesso para escrita
5 Aula 2- Dia 13/2/2014
continuação da aula anterior.
6 Aula 3- Dia 19/2/2014
Objetivos
Consolidar o conhecimento sobre memórias e barramentos de endereços, dados e controle através de um experimento no Proteus
6.1 Experimento 1 - Acesso a memória RAM de 2K x 8 bits
Roteiro:
1.Entrar no Windows.
2.Baixar o arquivo de projeto Experimento 1 MIC. 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.
Tente colocar o dado AFh na posição 0 de memória e 8Eh na posição 15.
5.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.
Exercícios adicionais (Projeto 1)
1.Colocar uma chave de controle do Chip Select (CE).
2.Colocar o seu nome ("Maria da Silva") na memória implmentada no projeto, a partir da posição 0 (endereço). Olhar tabela ASCII.
3.Reimplementar o item dois para gravar nos últimos endereços de memória dos 2K disponíveis.
7 Aula 4- Dia 26/2/2014
7.1 Objetivos
AValiação do Projeto 1:
ALUNOS OK TAREFA 1: Evander, Vinicius, Renato, Alfredo, Antonio
ALUNOS devendo: fernanda
8 Aula 5 - Dia 6/3/2014
Objetivos
Apresentar o Mini-Projeto 2 - Expansão de memória
Fundamentação teórica
Encaminhamentos
8.1 Mini-Projeto 2 - Expansão de Memória
Usando como referência o projeto anterior expandir o sistema de memória de 2Kx8bits para 8Kx8bits. Use o
decodificador 74LS139. Para controle das chaves a chave lógica
Desenvolvimento do projeto de expansão de memória.
11 AULA 7 - Dia 20/3/2014
Apresentação do projeto de expansão de memória
Apresentação do Terceiro Projeto
12 AULA 8 - Dia 26/3/2014
13 Terceiro Mini-Projeto
Implementar um circuito com 1 memória de 2Kx8 (6116) e um latch 373. Este deverá servir como acumulador em operações para movimentação de memória. Ao final do projeto será solicitado que o aluno entre com dados mnualamente na memória e deloque dados de uma posição para outra na memória. Criar comando WRA (write no acumulador) e RDA (read no acumulador) específicos par o LATCH, de forma a evitar o endereçamento do registrador.
ALUNOS QUE DEFENDERAM: GIOVANA, FERNANDA, ALFREDO, EVANDER, VINICISU, RENATO, ANTONIO
18 AULA 10 - Dia 2/4/2014
DApresentação do Mini-projeto 2 para os alunos que ainda não tinham defendido: Reanto, Fernanda e Evander
19 AULA 11 - Dia 3/4/2014
Apresentação do Mini-Projeto 4: Implemenatação de uma (parte) de uma Unidade Lógica e Aritmética
19.1 As partes de um sistema computacional
Até o presente momento tivemos uma ideia dos seguintes elementos de um sistema computacional:
Unidade de Entrada (e Saída)
memória primária
CPU
barramentos: dados, endereço e controle
A CPU é dividida em registradores (implementamos o registrador A), a unidade de controle (que tem sido você) e a unidade lógica e aritmética. Neste mini-projeto vamos passar uma ideia do que é esta unidade, implementando um somador de bytes.
19.2 Mini-projeto 4
Acrescentar ao mini-projeto 3 um circuito somador de bytes com entrada de C e saída de carry. Armazenar o Carry em um flip flop tipo D (registrador de 1 bit). O somandor será implementado com o 74LS283. Usar uma subsheet para implementar o somador bufferizado com buffer tris-tate 74LS241.
19.3 Parte 1 - Demonstração de como o 74LS283 funciona usando o Proteus
Este projeto tem por objetivo trabalhar a operação com bits utilizando instruções de jump condicional e
o acesso a memória de bits. A definição de pinos com EQU será apresentada.
Desenvolver um alarme com 4 entradas digitais (sensores). O sensor está desligado com o estado 0. Se pelo menos um sensor for desligado um alarme deve ser disparado. O alarme é uma saída digital que alterna o estado quando ativada. Se desativada permanece em 0. O alarme deve ter um uma saída indicando se está em operação ou não. Uma entrada adicional habilita o funcionamento do alarme (pode ser usada para desligar o alarme). Para maior flexibilidade, cada sensor pode ser desabilitado individualmente através de uma entrada digital associada a ele. Quando um sensor for violado uma saída digital deve indicar seu estado através do estado 1. Tão logo todos os sensores estejam desabilitados o alarme deixa de disparar.
Começar Mini-Projeto 8: explorar a memória RAM interna, endereçamentos direto, indireto, imediato e por registrador.
36.2 Mini-Projeto 6
O diagrama em blocos para o mini-projeto 6 é apresentado a seguir:
O objetivo do projeto é construir um programa que permite entrar e visualizar
dados da RAM interna desde 00F até FFH. As seguintes funcionalidades
devem ser previstas:
Escrever dados em uma posição da RAM: O usuário entra com o endereço e com os dados, aciona o sinal de escrita (leva a 0) e habilita a operação (RET);
Ler dados: O usuário entra com o endereço a ser lido, aciona o sinal de leitura e habilita o sistema.
Escrever dados crescente: O usuário coloca um dado, habilita dados crescente e habilita o sistema (RET). O dado é escrito na posição 0 da Ram Interna e a partir deste endereço o programa escreve sequencialmente na memória (até FF) o dado incrementado de 1. Exemplo: Suponha que o dado foi 10. Na posição da memória 0 será escrito 10, na posição 1 será escrito 11 etc. Quando estourar em 255 o sistema começa em 0.
Escrever dados decrescente: similar ao anterior mas decrescente.
Observações:
(1) Colocar displays hexadecimais para visualizar os dados/endereços de entrada e saída.
(2) No caso de duas ou mais funcionalidades serem ativadas simultaneamente o sistema deve apresentar um "E" piscando no display de saída de dados.
37 AULA - Dia 18/06/2014
37.1 Objetivo
Avaliar miniprojeto 6
Continuar desenvolvimento mini-projeto 7
38 AULA - Dia 25/06/2014
38.1 Objetivo
Avaliar o miniprojeto 9
Apresentar o Miniprojeto 8 envolvendo operações aritméticas e lógicas
38.2 Descrição do Miniprojeto 8
Acrescentar ao miniprojeto 7 três funconalidades adicionais:
Operação de soma com dois operandos na memória RAM interna. Os dois endereços são fornecidos pelos barramentos de entrada e ao selecionar a opção de soma é mostrado na saída a soma dos operandos.
Operação de and lógico byte a byte com dois operandos da memória RAM interna;
Implementar um dispositivo capaz de interagir com um usuário no sentido de receber dados na sua memória RAM interna entre 60H e 7FH e apresentar a soma aritmética, a operação AND, OR e XORL de todos os bytes da RAM entre dois endereços fornecidos pelo usuário. A soma aritmética deve ser um número de 13 bits, portanto, a saida deve usar 8 bits de uma porta mais 5 bits de outra porta.