Cenário: Sistema de Controle de LEDs Sistema Embarcado Aula 4 Sistema Engenharia de Sistemas Embarcados Prof. Abel Guilhermino Tópico: Arquitetura de um microcontrolador 851 Engenharia de Sistemas Embarcados 2 Implementação do Sistema Embarcado Constatações Memória Externa Microcontrolador Alimentação Placa simples Poucos circuitos integrados Elementos principais Memória Circuitos de alimentação Circuitos analógicos Microcontrolador Circuitos Auxiliares Engenharia de Sistemas Embarcados 3 Engenharia de Sistemas Embarcados 4 O que os Microcontroladores Tem? Diagrama de Blocos do 851 Microcontroladores CPU + E/S + Timer(s) [+ ROM] [+ RAM] Desempenho de baixo a moderado Espaço de RAM, ROM e pinos de E/S limitado Disponibilidade de versões com EPROM Poucos chips para implementar um sistema simples Baixo custo para grandes quantidades Ferramentas de desenvolvimento disponíveis a custo razoável CPU Controle Barramento Portas de E/S Porta Serial Controle Registradores Interrupção RAM ROM TIMERS Barramento Oscilador Engenharia de Sistemas Embarcados 5 Engenharia de Sistemas Embarcados 6 1
Função dual dado/ Função dual dado/ Engenharia de Sistemas Embarcados 7 Engenharia de Sistemas Embarcados 8 Função dual dado/ Função dual dado/ Engenharia de Sistemas Embarcados 9 Engenharia de Sistemas Embarcados 1 Função dual dado/ Função dual dado/ Engenharia de Sistemas Embarcados 11 Engenharia de Sistemas Embarcados 12 2
Circuitos de Porta de E/S Função dual dado/ Engenharia de Sistemas Embarcados 13 Engenharia de Sistemas Embarcados 14 Circuitos das Portas de E/S Funções Alternativas dos Pinos Endereçavel a bit Quando usado como I/O Deve-se colocar pull-up. Para controle de memória externa é desnecessário Gerenciamento de de memória externa P1. e P1.1 poder ser comprometidos com o timer 2 Engenharia de Sistemas Embarcados 15 Engenharia de Sistemas Embarcados 16 Circuito Externo para a Porta Serial Circuito Externo para a Porta Serial Engenharia de Sistemas Embarcados 17 Engenharia de Sistemas Embarcados 18 3
Pinagem no 851 Acessando Memória Externa de Código XTAL2 e XTAL1 Auxílio para geração do clock RST : Pino de reset PSEN: Quando o µc vai buscar uma instrução na memória externa coloca PSEN para. ALE: saída habilitadora do latch de EA: Entrada de seleção de memória de programa. Qdo= usa apenas externa. RXD/TXD : Receptor/transmissor de serial INT/INT1: Interrupção externa T/T1: Entrada externa para o timer WR: Strobe(sinalizador) de escrita na memória de dados externa. RD: Strobe de leitura na memória de dados externa. Vcc e GND : É por onde se alimenta o chip Latch de Endereço Habilita Leitura Memória Uso Memória Externa Habilita Latch Endereço Engenharia de Sistemas Embarcados 19 Engenharia de Sistemas Embarcados 2 Multiplexação de Endereço para Memória Externa Organização ROM em função do pino EA (Memória de programa) 65535 65535 8192 496 8191 495 ROM interna ROM externa PSEN ou ROM Externa PSEN Mutiplexação Endereço/Dado EA=1 EA= Engenharia de Sistemas Embarcados 21 Se EA=1: O chip irá ler sua ROM/EPROM interna, e após acabar todo o espaço de memória interna, e ra trabalhar automaticamente com a memória ROM/EPROM externa, se ela existir. Se o pino EA=: O microcontrolador só enxerga memórias ROM/EPROM externas. Memória de Dados Memória de Dados (256 bytes) 255 = FFH 128 = 8H 127 = 7FH DADOS REGISTROS DE FUNÇÕES ESPECIAIS Tem um espaço de 256 bytes no 851 para dados na. Dividido em: Posições da RAM com apelidos para seus s: dividido em 4 bancos (R,R1,...,). Posições da RAM sem apelido, ou seja, acessíveis apenas pelo absoluto Registradores de Funções especiais. (256 bytes) 255 = FFH 128 = 8H 127 = 7FH DADOS REGISTROS DE FUNÇÕES ESPECIAIS A parte baixa da memória está dividida em porções distintas, que incluem: 4 bancos de registradores de 8 bytes cada Uma porção de 16 bytes cujos bits são individualmente endereçáveis pela CPU E o restante da memória que somente pode ser endereçado byte a byte. 7F 3 2 1F 18 17 1 F 8 7 Apenas bytes endereçáveis BIT e BYTE endereçáveis Banco 3 R Banco 2 R Banco 1 R Banco R 4
Memória de Dados Diferenciar s 255 = FFH (256 bytes) 128 = 8H 127 = 7FH DADOS REGISTROS DE FUNÇÕES ESPECIAIS Interior do Mc ROM/EPROM EXTERNA \PSEN libera esta memória RAM EXTERNA RD e RW liberam esta memória para leitura e escrita Max 64kbytes Max 64kbytes FF ROM interna só 851 Memória de Código Memória de Dados Instruções de acesso à RAM INTERNA: MOV Instruções de acesso à ROM/EPRO M EXTERNA: MOVC Instruções de acesso à RAMEXTERNA: MOVX O Clock no 851 O Clock no 851 O clock É o relógio interno do microprocessador, para execução sequêncial de qualquer atividade interna ou externa à máquina. Opções de Ligação Cristal Oscilador externo Temos 2 possibilidades de excitar o sistema: Clock externo Basta aterrar o pino 19 (XTAL1) e injetar o sinal externo no pino 18 (XTAL2), desta forma irá para o sistema de controle e temporização do chip. Clock interno Deve-se intercalar aos pinos XTAL1 e XTAL2 um cristal na frequência desejada e dois capacitores de realimentação 851 33pF 18 XTAL2 Fonte de clock XTAL2 851 externo (TTL) 33pF XTAL1 19 XTAL1 Ciclos de Máquina Ciclos de Máquina O relógio é o elemento que gera e controla os ciclos de trabalho da máquina. Cada ciclos de oscilação chamaremos de P, de pulso. A cada 2 pulsos P caracteriza-se um estado S. Uma sequência de 6 estados (S1 a S6) corresponde a um ciclo de máquina. Todas as atividades internas e externas do microprocessador são comandadas por esses pulsos e seus seis estados. P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 S1 1 Ciclos de Máquina S1 S2 S3 S4 S5 S6 2 pulsos Exemplo: Se tiver um cristal de 12Mhz, teremos: 1 Ciclo de Máquina = 12 x (Período do Clock) = 12 x (1/(12.1 6 ))=1µs 5
Reset 1µ 8k2 Vcc 851 9 Reset RST O reset no 851 é ativo quando o pino 9 (RST) permanecer em nível alto por 2 ou mais ciclos de máquina. O PC, o acumulador, o registro B, os flags, o DPTR e todos os registros dos temporizadores/contadores são ZERADOS No Stack Pointer, é colocado o valor 7 As portas P a P3 terão valor FFH O SBUF (Buffer serial) estará com conteúdo indeterminado e o registro de controle da porta serial (SCON) será zerado O registro PCON terá apenas seu bit mais significativo zerado E finalmente os registros de controle de interrupção (EI e IP) terão ambos o valor binário XXX A não é afetada pelo RESET forçado. Observação Durante o reset, o nível lógico dos pinos é indeterminado, indo a nível lógico 1 após a execução da rotina interna de reset, de tal forma que devemos prever esta situação no projeto do hardware, para evitar acionamento indesejável de qualquer periférico. 1µ 8k2 Vcc 851 9 RST Power-On RESET com Debounce Diagrama de uma aplicação de alarme Engenharia de Sistemas Embarcados 33 Engenharia de Sistemas Embarcados 34 Controlador de Máquina de Lavar Atividades Lista 1 Entrega dia 17/3/29 Documento Impresso (Assinado) Individual Engenharia de Sistemas Embarcados 35 Engenharia de Sistemas Embarcados 36 6