Interrupções Externas

Documentos relacionados
Prof. Adilson Gonzaga

Interrupção. Prof. Adilson Gonzaga

Temporização da CPU SEL-433 APLICAÇÕES DE MICROPROCESSADORES I. Ciclos de Máquina. Ciclos de Máquina. Temporização Interrupções Rotinas de Atraso

Temporizadores e Contadores

Temporização Interrupções. Prof: Evandro L. L. Rodrigues. Rotinas de Atraso

SEL-433 Aplicação de Microprocessadores I. Prof: Adilson Gonzaga

Temporizadores e Contadores (Timer/Counter)

Lista de Exercícios 2

Microcontroladores 8051

Acetatos de apoio às aulas teóricas

Lista de Exercícios 1

Lista de Exercícios 1

FACULDADE LEÃO SAMPAIO

SEL 0415 INTROD. À ORGANIZAÇÃO DE COMPUTADORES

Microcontrolador 8051:

Arquitetura do Disciplina de Microcontroladores. Prof. Ronnier Prof. Rubão

SEL-614 MICROPROCESSADORES E APLICAÇÕES. Adilson Gonzaga

17/04/2017. Comunicação Serial. Comunicação Serial. Comunicação de Dados em Microprocessadores. . Comunicação Paralela. Comunicação Serial

Microcontrolador 8051

MICROCONTROLADOR 8051

O microcontrolador Quatro partes importantes

Capítulo 14. Expandindo as portas de comunicação 8031 com a PPI Interface PPI 8255

Aula 10 Microcontrolador Intel 8051 Parte 1

KIT DE DESENVOLVIMENTO 8051 BASEADO NO AT89S8252 MANUAL DO UTILIZADOR. Rui Marcelino (Nov. 2005)

Prof. Adilson Gonzaga

UTFPR Departamento Acadêmico de Eletrônica Curso Técnico em Eletrônica Microcontroladores 1 - Prof. Cion nov/2010 (atualizado em jul 2015)

8051 Estudo de Caso. Prof. Carlos E. Capovilla - CECS/UFABC 1

Interrupções por hardware

Interface Serial. Prof. Adilson Gonzaga

07/06/2015. Outras características importantes em Microprocessadores/Microcontroladores SEL-433 APLICAÇÕES DE MICROPROCESSADORES I


2.4 Temporização da CPU

9/3/2009. Aula 4. Engenharia de Sistemas Embarcados. Cenário: Sistema de Controle de LEDs

Aula 4. Engenharia de Sistemas Embarcados. Prof. Abel Guilhermino Tópico: Arquitetura de um microcontrolador 8051

SEL 337 Aplicação de Microprocessadores II

EXERCÍCIOS 2 Prof. Adilson Gonzaga

4.3 - DMA & Chipset. CEFET-RS Curso de Eletrônica. Profs. Roberta Nobre & Sandro Silva. e

Comunicação Serial. Comunicação Serial

Introdução aos microcontroladores Microcontroladores e microprocessadores Tecnologia em Manutenção Industrial

Aula 8 Microcontrolador 8051

Prof. Adilson Gonzaga

Memória de Dados Interna. Memória de Dados Interna

UCP 8051 (parte 02) Professor Adão de Melo Neto

Lista de Exercícios 1

Disc.: Sistemas Microprocessados Curso Técnico em Eletrônica

EEC2104 Microprocessadores

EEC2104 Microprocessadores

Apontamentos sobre o 8051 Prof. Eng Luiz Antonio Vargas Pinto Versão revista e ampliada em 01/07/2009 Revisada em 28/02/2006 Revisada em 18/11/2007

µcontroladores da Família 51

Arquitetura e organização de computadores

Aula 8 Microcontrolador 8051

INTRODUÇÃO: MICROCONTROLADORES

Sistemas de Entrada e Saída

Prof. Adilson Gonzaga

1.2 Registradores relacionados as Interrupções. 3. TOSE Sentido da transição da borda do sinal aplicado am TMR0

Microprocessadores. Organização de Memória

ESTRUTURA E FUNCIONAMENTO DO COMPUTADOR

Microcontroladores. Interrupções no Prof. Guilherme Peron Prof. Heitor S. Lopes Prof. Ronnier Rohrich Prof. Rubão

Jadsonlee da Silva Sá

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES MEMÓRIA E BARRAMENTOS DE SISTEMA. Prof. Dr. Daniel Caetano

Estrutura Básica de um Computador

Aula 10 Microcontrolador Intel 8051 Parte 2

Tópicos: 1 - Modos de endereçamento do Pilha e instruções de Pilha. 3 - Instruções que usam pilha: - instrução CALL - instrução RET

Sistemas Microcontrolados

Organização de Memórias

Laboratório de Microprocessadores e Microcontroladores

SSC0611 Arquitetura de Computadores

Organização Básica III

MICROPROCESSADORES E MICROCONTROLADORES PROVA 2 - RESPOSTA ESPERADA

Microprocessadores e Microcontroladores. Professor Lucas Araujo do Nascimento

Módulo 3 - Estrutura e configuração de Sistemas Operativos monoposto

O Pino P2.7 não está sendo usado e cada Display mostrará valores de 0 a 9.

Microprocessadores I. Aula 6 Arquitetura do Microprocessador Pinagem e Diagrama de Temporização

14/3/2016. Prof. Evandro L. L. Rodrigues

Interrupções 8051 Porta Serial

Aula 5: Introdução a Arquitetura do Microcontrolador 8051

ELE Microprocessadores I

Painel Luminoso com LEDs

ELE Microprocessadores I. AULA 12 Arquitetura do Microprocessador Interface com as memórias

7. PROGRAMANDO O MICROCONTROLADOR. Microcontroladores - Prof: Demantova

Transcrição:

Interrupções Externas Dois acontecimentos podem gerar o pedido de interrupção: Transição 1 0 Nível 0 A fonte destes acontecimentos é aplicada a um dos pinos INT0 e INT1. Logo que se faça a activação das interrupções por intermédio do registo IE, os pinos INT0 e INT1 deixam de ser E/S, respectivamente.

Interrupções Externas (cont.) Registo SFR envolvido: TCON - - - - IE1 IT1 IE0 IT0 ITx: x={0,1}: determinação se a interrupção é desencadeada em resposta à transição (Itx=1) ou em resposta ao nível (Itx=0). IEx: x={0,1}: bit que determina o pedido de interrupção, sendo levado a 1 quando tal acontece.

Interrupções Externas (cont.) Esquematicamente

Interrupções Sensíveis à transição (1 0) A transição é captada por um falso detector da seguinte maneira: O pino correspondente é amostrado em cada ciclo de instrução. Caso se verifiquem os níveis 1 e 0 em ciclos contíguos, por esta ordem, então IEx passa a valer 1, ficando este valor armazenado. Tem-se então um pedido de interrupção (é necessário que estas condições permaneçam durante pelo menos 12 ciclos de relógio). Se, antes do atendimento, o sinal voltar a 1 e depois a 0, não se tem novo pedido de interrupção. O bit IEx é levado a 0 pelo hardware em resposta ao RETI da rotina de atendimento.

Interrupções Externas (cont.) O pedido de interrupção acontece logo que se observe o nível 0 no pino INTx. O estado do bit IEx segue o estado do pino INTx. Ou seja, pode ter-se INTx=0 e não se ter atendimento. Basta que INTx deixe de ser 0 na altura em que a CPU verifica o estado de IEx. Por outro lado, se após o atendimento se continuar a ter INTx=0, então ter-se-á novo atendimento. Para evitar esta catadupa de atendimentos deve ser o hardware externo a repor INTx a 1. Isto implica que a rotina de atendimento deve comunicar ao hardware externo que o pedido de interrupção foi reconhecido. Este mecanismo é conhecido por handshaking.

Bits de fechadura (lock bits) (AT89C51) O AT89C51 dispõe de 3 fechaduras, configuráveis através de LB1, LB2 e LB3. As fechaduras são: LB1 LB2 LB3 Protecção 1 0 0 Não é possível executar instruções MOVC residentes na memória externa que se refiram a endereços de memória interna. A memória de programa não é programável, só apagável. O micro só executa instruções se o nível no pino EA não mudar, i.e., for o observado durante o reset. 1 1 0 O mesmo que o anterior. Adicionalmente, não se pode verificar a programação da memória. 1 1 1 O mesmo que o anterior. Adicionalmente, não é possível executar instruções na memória externa. 0 0 0 A execução do programa não tem restrições

Contador watchdog (AT89S8252) O watchdog é um registo cuja contagem procede ao ritmo de um oscilador independente do oscilador que alimenta a CPU. Quanto o contador chega ao fim da contagem a CPU é reiniciada (reset). Deste modo evita-se que o PC (program counter) possa conter endereços aos quais não corresponde programa. Para evitar o reset há que reiniciar a contagem com a frequência necessária. Isto passa por escrever um bit numa dada posição de memória (espaço SFR).

Contador watchdog (cont.) O tempo que passa desde que a contagem é iniciada até que o reset aconteça é ajustável, por patamares. Este ajuste é feito escolhendo o valor da pré-escala. A tabela seguinte apresenta os valores da temporização para o caso do AT89S8252. Note-se que os valores não são precisos (i.e., os reais são diferentes dos nominais), devido à imprecisão da fonte de sincronismo do contador. O controlo da contagem e o seu reinício é feito por intermédio de bits de registos do espaço SFR.

Contador/temporizador 2 (AT89S8252) Este contador funciona num modo diferente dos vistos para os C/T0 e C/T1, denominado captura. O diagrama seguinte ilustra o seu funcionamento. O bit EXEN2 tem de ser 1 para se ter este modo. Quando se tiver uma transição 1 0 no pino T2EX, os valores de contagem nos registos TH2 e TL2 são transferidos para os registos RCAP2H e RCAP2L, respectivamente, e o bit EXF2 transita para 1, que determina um pedido de interrupção. Deste modo mediu-se o tempo que passou até que no pino T2EX se tivesse uma transição.

Gerador de relógio programável Esta facilidade permite que no pino P1.0 (do AT89S8252) se gere uma onda quadrada com frequência de 61Hz a 4MHz (com a CPU alimentada a 16MHz), com 50% de duty cycle. A frequência da onda gerada é determinada a partir da seguinte fórmula, em que RCAP2H e RCAP2L representam o conteúdos dos registos do contador/temporizador 2.

SPI Resumo Comunicação full-duplex Interface 3 fios Comunicação síncrona Operação como mestre ou escravo Frequência máxima de 1.5MHz Transferência LSB primeiro ou MSB primeiro 4 taxas de comunicação possíveis Geração de interrupção após a transferência Protecção contra colisões Ligações

Transferências SPI (cont.)

Registo de configuração SPI (cont.)

SPI (cont.) Interrupções e colisões Registo de dados

Memória de dados interna - AT89S8252 Existem 256B de RAM e 2KB de EEPROM. Os 128B altos da RAM ocupam um espaço paralelo ao SFR. Instruções com endereçamento directo referem-se aos SFR. Ex: MOV 0A0H,#data refere-se a P2. Instruções com endereçamento indirecto refere-se aos 128B de RAM. A memória de stack pode ocupar este espaço. Ex: MOV @R0,#data refere-se à RAM. A memória EEPROM é seleccionada escrevendo 1 no bit EEMEM do registo WMCON (96H). De seguida, qualquer instrução MOVX acede a este espaço, em que os endereços vão de 0000H a 07FFH. Para aceder à memória de dados externa, faz-se EEMEM=0. Para se escrever na memória EEPROM, há que fazer EEMWE=1 (registo WMCON). Por segurança, deve ter-se EEMWE=0 sempre que não se pretenda escrever na EEPROM. Os ciclos de escrita demoram aproximadamente 2.5ms. O progresso da escrita pode ser feito controlando o estado do bit RDY/BSY (registo WMCON). Se RDY/BSY=0, então a escrita ainda não terminou.

Programação do microcontrolador - interfaces série Memórias de programa e dados (EEPROM) internas podem ser programadas através do porto SPI (enquanto RST=1). < fosc/40

Formas de onda: Programação (cont.)

Instruções para programação: Programação (cont.)

Programação (cont.) Receita da programação: 1. Alimentar o microcontrolador; 2. RST=1; 3. esperar não menos que 10ms; 4. PC envia comando programming enable (ver tabela anterior); 5. PC envia comando write code memory por cada byte, até que todas as instruções tenham sido programadas, e esperando não mais que 2.5ms/B (não há necessidade de apagar antes de escrever o próprio microcontrolador desempenha essa acção automaticamente); 6. de seguida, podem enviar-se comandos de leitura ( read code memory ) para confirmar o sucesso da programação. 7. RST=0 para executar o programa; 8. cortar alimentação, caso se pretenda remover o microcontrolador. É possível apagar todo a memória de programa, bem como programar os lock bits. A receita para programação prévia da memória de dados é totalmente idêntica.