Escolar Documentos
Profissional Documentos
Cultura Documentos
Aula 3 - Memória, Entradas e Saídas de Microcontroladores
Aula 3 - Memória, Entradas e Saídas de Microcontroladores
No caso da memória de
dados, com capacidade de
12 bits (4096 endereços), Banco Dessa forma, ao invés de formar
pode ser dividida em 16 endereços de 12 bits, um Registrador
partes com 256 endereços de Seleção de Banco escolhe um
cada deles e o endereço dentro do banco
pode ser determinado utilizando
A memória é dividida em somente 8 bits
16 bancos contíguos, cada Banco
um com 256 bytes de
dados armazenados.
Banco
Memória do Microcontrolador
• Memória Principal
Programada através de uma operação de Erasable Programmable ROM. Pode ter seu conteúdo alterado
mascaramento realizada durante a utilizando programadores EPROM. O chipe EPROM deve ser
confecção do chipe. Os bits são colocados removido do sistema antes da alteração. A memória é apagada
diretamente no circuito e não podem mais através de exposição a raios ultravioletas por cerca de 10 a 20
ser alterados. minutos.
Memória do Microcontrolador
• Memória Principal
Electrally Alterable ROM (EAROM) ou Electrally Erasable Pode ser reprogramada sem a necessidade de retirada do
PROM (EEROM ou E2PROM) podem realizar alterações sem chipe. Vários bytes podem ser alterados de uma única
a necessidade de retirada do chipe do sistema. Essa Memória vez. No PIC, ela é usada para armazenar a memória de
também é chamada de RMM (Read-Mostly Memory) já que a programa.
escrita nessa memória é bem mais lenta que a leitura.
Memória do Microcontrolador
• Memória Principal
Se caracteriza pelo uso de flip-flops para Utiliza capacitores para armazenar informação,
guardar informação. Uma vez que o bit é fazendo com que essa informação possa ser
armazenado, esta informação só será perdida quando houver descarregamento. Para
perdida através das instruções de controle isso, é necessário um circuito que fique
ou ao desligar o sistema realimentando a informação para a Memória
Processo de Escrita e Leitura
Clock Para buscar uma instrução, assim que
o CLOCK assume nível alto, a CPU
coloca o conteúdo do CP no
barramento de endereço através dos
Endereço pinos A0-A15.
[CP]
A0-A15
Nesse mesmo instante, a CPU eleva o
sinal READ (leitura), uma vez que é
necessário obter os dados do CP.
Leitura
Assim que o CLOCK assume nível
baixo, o conteúdo dos pinos A0-A15
Dado
[RI] é transferido para o barramento de
D0-D7
dados, sendo esta informação
Execução de prontamente guardada no RI, para
Busca de Instrução depois haver a execução das
Instrução
instruções.
Ciclo de Instrução
Processo de Escrita e Leitura
O processo de leitura:
Clock
1. A CPU realiza o ciclo de instrução,
guardando o código de operação (OP-
Endereço code) no RI;
A0-A15 [CP] [REM] 2. A CPU interpreta o OP-code como uma
instrução do tipo READ;
3. Quando o clock atinge nível ALTO,
então a CPU passa o conteúdo do REM
para os pinos A0-A15;
Leitura 4. Simultaneamente, a CPU passa o pino de
Leitura para o nível ALTO;
5. A CPU procura o conteúdo da memória
Dado ROM ou RAM indicado no REM para o
OP-code Dado barramento de dados;
D0-D7
Execução de 6. Finalmente, a CPU acessa os dados
Instrução através dos pinos D0-D7 do chipe, e os
Busca de
Instrução
armazena em seus registradores internos.
Busca de
Dado
Processo de Escrita e Leitura
Clock O processo de escrita:
Barramento
de Endereço
Barramento
de Dados
Barramento
de Controle
Organização da Memória Principal Essa unidade é usada
junto com muitas outras
10 linhas de endereço, iguais e são conectadas de
ou seja, 210 = 1024 modo que a CPU as possa
endereços disponíveis. selecionar corretamente
através de determinada
decodificação.
𝐶𝑆1 𝐶𝑆2 ഥ
𝑅 Τ𝑊 Função
3 entradas de controle. O
𝑅 Τ𝑊ഥ indica a operação de 0 1 0 Escrita
escrita e 𝐶𝑆1 e 𝐶𝑆2 0 1 1 Leitura
funcionam como
habilitadores da unidade. 1 x x O chipe não é selcionado
O chipe não é selcionado
x 0 x
Decodificação
Linear
Um decodificador é adicionado à
estrutura. Para o decodificador
funcionar, 𝐸1 = 1 e 𝐸ത2 = 𝐸ത3 = 0 .
Caso contrário, nenhum SRAM é
acionado.
Decodificação
Completa
5 − 1,7
𝑅= = 330 Ω
Conectado a um bit 10 𝑚𝐴 Conectado a um bit
de uma Porta E/S de uma Porta E/S
Dispositivos E/S
• Outro exemplo bastante comum em circuito é o display de 7
segmentos;
• Cada segmento possui um LED;
• No geral, um LED com resistor pull down, se o microcontrolador envia
um bit igual a 1, o LED será aceso, caso contrário, o LED fica apagado.
E/S Programado
• O microcontrolador se comunica com dispositivos externos através de
registradores chamados de Portas E/S, usando E/S Programados. Cada Porta
possui um bit com os dados que serão transmitidos;
• Outro registrador indica de os dados nas Portas E/S são entradas ou saídas. Esses
registradores são chamados de Registradores de Direção de Dados (RDD);
• No PIC18F, um bit igual a ‘1’ no RDD indica que a Porta correspondente é uma
entrada, se o bit for ‘0’, então a Porta será uma saída.
Posição do bit
Bits no RDD
Portas E/S
E/S Programado
Posição do bit
Bits no RDD
Portas E/S
BEGIN
O comando RETFIE leva ao endereço do
MOVWF 0x30 ; leva o conteúdo de W para 0x30
CP com a instrução BEGIN, o qual é
-
criado assim que ocorre a interrupção.
-
E/S de Interrupção
• As interrupções internas são sempre mascaráveis;
• Elas são disparadas por periféricos internos ao microcontrolador:
• Conversor A/D;
• Temporizador;
• E/S Serial.
• O funcionamento das interrupções internas funcionam de maneira idêntica às
externas, bastando o usuário programar as condições necessárias para a
interrupção.