Home

EXPERIÊNCIA 5: IMPLEMENTAÇÃO DE UM CRONÔMETRO COM

image

Contents

1. pd atas p gt i 7 x a Escola Polit cnica aS gt E SA Universidade de S o Paulo gt EX SS EXPERI NCIA 5 IMPLEMENTA O DE UM CRON METRO COM INTERRUP O Autores Prof Dr Marco T lio Carvalho de Andrade Prof Dr Carlos Eduardo Cugnasca Prof Dr Andr Riyuiti Hirakawa Prof Dr Paulo S rgio Cugnasca Colaborador Prof Dr Jorge Kinoshita Vers o 1 3 1 05 2005 1 OBJETIVO Esta experi ncia tem como objetivo a familiariza o com os mecanismos de interrup o suportados pela fam lia de microcontroladores 8051 utilizada na Placa Experimental Pretende se que ao final desta o aluno seja capaz de habilitar interrup es projetar rotinas de tratamento de interrup es associando as aos endere os pertinentes configurar perif ricos para gera o de interrup es e utilizar uma interface de entrada e sa da program vel um m dulo com display de cristal l quido 2 TRANSFER NCIA DE DADOS POR INTERRUP O Sistemas baseados em microprocessadores requerem a interliga o com diversos dispositivos perif ricos tais como portas de entrada sa da paralelas canais de comunica o seriais controladores de teclado e display conversores A D temporizadores etc Muitos desses perif ricos requerem tratamento por parte do microprocessador em instantes de tempo peri dicos enquanto que outros s o utilizados em aplica es que exigem pronto atendimento do m
2. cnica da USP Departamento de Engenharia de Computa o e Sistemas Digitais PCS
3. atenta nas seguintes refer ncias e Cap tulo 2 de 1 e Nota AN420 de 2 e Cap tulo 6 de 8 e Cap tulo 6 de 9 e P ginas 10e 11 de 7 no tocante aos nomes de bits e registradores para configura es em geral A seguir ser o resumidos os principais conceitos envolvidos O 8051 disp e de cinco fontes de interrup o duas interrup es externas INTO e INT1 duas interrup es por timer Timer0 e Timer1 e uma interrup o do port serial Cada fonte de interrup o pode ser habilitada ou desabilitada individualmente atrav s da coloca o de valor l gico um ou zero em um determinado bit do registrador IE Interrupt Enable Este registrador tamb m tem um bit de habilita o global que permite que todas de uma vez sejam habilitadas Este bit deve estar corretamente inicializado para que ent o se possam realizar habilita es individuais para cada tipo de interrup o Al m disto cada fonte pode ter um ou dois n veis de prioridade de acordo com uma inicializa o colocada em um bit do Registrador IP Interrupt Priority 1 As interrup es externas INTO e INTI podem ser programadas como sens veis a n vel ou sens veis a borda dependendo da programa o dos bits ITO e IT1 no registrador TCON Os flags gerados com estas interrup es est o dispon veis nos bits IEO e IE1 no mesmo registrador TCON A tabela com o ende
4. da Aplica es Pr ticas do Microcontrolador 8051 Teoria Geral Editora rica Ltda 1 994 10 ALFACOM M dulos Multi Matrix Manual de Utiliza o Editora rica Ltda 1 994 11 MC8051 Diagrama L gico da Placa Experimental do 8051 5 PARTE EXPERIMENTAL 5 1 Implementa o de um Cron metro Digital Antes de iniciar o planejamento desta experi ncia fundamental a familiariza o com os mecanismos de interrup o e a programa o do timer do microprocessador 8051 1 2 Com os conhecimentos e recursos de utiliza o do teclado vistos nas experi ncias 2 Display de Cristal L quido e 3 Interface com Teclado e Display e os resultados do item 5 1 pede se que seja implementado um cron metro digital que fa a a contagem de 10 segundos com o seguinte comportamento e O in cio da contagem deve ser dado pelo pressionar de uma tecla no Kit quando dever ser mostrada no display a mensagem S de Start na posi o O da primeira linha do display e A cada 1 segundo o display dever ser atualizado sempre na mesma posi o com os valores 1 2 3 4 5 6 7 8e 9 e Ao final dos 10 segundos a mensagem E de End dever ser apresentada Escola Polit cnica da USP Departamento de Engenharia de Computa o e Sistemas Digitais PCS 6 Laborat rio de Processadores l Experi ncia 5 Pede se que se implemente um Cron metro Digital fazendo se uso de interrup o do Timer O TF0 modo 2 pa
5. en o dos endere os das subrotinas de tratamento que varia de um microprocessador para outro Ela costuma ser do tipo fixa vetorada ou n o vetorada e interrup es fixas Requerem um hardware relativamente simples de interface Um flag ativado pela linha de interrup o indicando a requisi o Caso apenas um dispositivo perif rico esteja ligado a essa linha ent o o controle transferido para um posi o fixa de mem ria que apresenta a subrotina de tratamento da interrup o Quando v rios dispositivos s o acoplado a uma mesma linha cada um com sua pr pria subrotina de tratamento o microprocessador tem que identificar o dispositivo perif rico respons vel pela interrup o Para contornar essa dificuldade pode se utilizar m ltiplas linhas uma para cada interrup o tendo se uma posi o fixa de mem ria para a coloca o da subrotina de tratamento de cada uma Entretanto existe a necessidade de tantas linhas quantos forem os dispositivos perif ricos que solicitam interrup o Exemplos interrup es RST5 5 RST6 5 RST7 5 e TRAP do 8085 interrup o NMI do Z80 e interrup es vetoradas Este tipo exige a identifica o do dispositivo perif rico que solicita interrup o Essa identifica o utilizada para a localiza o do endere o da subrotina de tratamento da interrup o em uma tabela localizada em uma regi o determinada da mem ria do microprocessador vetor de interrup e
6. icroprocessador em instantes aleat rios como por exemplo sistemas e equipamentos projetados para operar em tempo real Os mecanismos de atendimento normalmente permitem que se priorize o atendimento dos eventos em situa es de ocorr ncia simult nea de mais de uma solicita o Para se implementar a transfer ncia de dados entre os microprocessadores e os dispositivos perif ricos s o utilizadas diversas t cnicas escolhidas em fun o das particularidades de cada aplica o Algumas das principais t cnicas s o Transfer ncia Incondicional Tranfer ncia Condicional Wait for Flag Transfer ncia Programada Amostragem Interrup o e Transfer ncia Via Acesso Direto Mem ria ADM Estas t cnicas foram descritas na Experi ncia 4 Utiliza o de Timer sendo que a t cnica Interrup o ser o alvo desta experi ncia Para se tornar mais eficiente o tratamento de perif ricos que solicitam opera es do microprocessador assincronamente ou at mesmo periodicamente existe o recurso denominado interrup o Em geral todo microprocessador apresenta sinais de interrup o e eventualmente necess rio algum circuito externo de controle adicional Utilizando os sinais de entrada de interrup o do microprocessador os dispositivos perif ricos podem informar a ocorr ncia de um 2 Laborat rio de Processadores l Experi ncia 5 dado evento externo que ser tratado com maior facilidade e rapidez atrav s das
7. ra gerar a base de tempo Siga as seguintes etapas para o projeto implementa o e teste do programa a Utilize as subrotinas b sicas de interfaceamento com o Display e o Teclado desenvolvidas nas experi ncia 2 e 3 b Usar como fonte de refer ncia de tempo um cent simo de segundo obtido pela contagem das chegadas dos sinais de interrup o proveniente do Timer 0 c Quando do desenvolvimento da subrotina para tratamento de interrup o deve se lembrar de que h um endere o correto onde esta rotina deve estar carregada Descreva a rotina e indique o endere o de carga d A subrotina para tratamento de interrup o deve se limitar a incrementar um registrador que conta eventos e eventualmente incrementa um contador de cent simos de segundos A atualiza o do display deve ser realizada no programa principal a cada 1 segundo 5 2 Observa es O planejamento dever apresentar e Descri o do projeto relacionando suas caracter sticas principais e Especifica o de cada uma das subrotinas atrav s de diagramas estruturados Os c digos dos programas com coment rios podem ser elaborados no laborat rio Sugest o Utilizando o modo 2 do Timer O auto load iniciando seus registradores com 00h as interrup es ocorrer o a uma taxa de 1 3600 segundo Logo a cada 36 interrup es ter se passado 1 cent simo de segundo Fa a o c lculo de forma expl cita no relat rio demonstrando o c lculo Escola Polit
8. re o onde devem estar as rotinas de tratamento das interrup es encontra se em 4 4 BIBLIOGRAFIA 1 PHILIPS 80C51 Based 8 Bit Microcontrollers Data Handbook IC20 Philips Electronics North America Corporation USA 1 997 Escola Polit cnica da USP Departamento de Engenharia de Computa o e Sistemas Digitais PCS 5 Laborat rio de Processadores l Experi ncia 5 2 PHILIPS Application Notes and Development Tools for 80C51 Data Handbook Philips Electronics North America Corporation USA 1 997 3 Gomi Edson Satoshi Apostila da Experi ncia Microprocessadores Disciplina PCS 308 Laborat rio Digital II 1 998 4 Hirakawa Andr Cugnasca Carlos Eduardo Apostila da Experi ncia Familiariza o com a Placa Experimental de Microcontrolador Disciplina PCS 598 Laborat rio de Microprocessadores II 1 999 5 Cugnasca Carlos Eduardo Hirakawa Andr Apostila da Experi ncia Interface com Teclado e Display Disciplina PCS 598 Laborat rio de Microprocessadores II 1 999 6 Andr a M Matsunaga Maur cio 0 Tsugawa Projeto de Formatura Sistema de Pesagem Din mica PCS 588 Laborat rio de Projeto de Formatura 1 997 7 2500AD Software 8044 51 X8051 Cross Assembler User Manual 8 Silva J nior Engenheiro Vidal Pereira da Aplica es Pr ticas do Microcontrolador 8051 Hardware amp Software Editora rica Ltda 1 990 9 Silva J nior Engenheiro Vidal Pereira
9. reconhece a interrup o enviando sinais de controle completa a execu o da instru o corrente salva o conte do dos registradores de interesse contador de programa status etc e atende ao dispositivo perif rico que solicitou a interrup o transferindo o controle para a subrotina de tratamento da interrup o Ao t rmino da execu o desta o microprocessador desativa o flag de indica o de interrup o restaura os registradores que foram salvos e transfere o controle para a instru o seguinte ao ponto de interrup o do programa Algumas interrup es podem ter seu tratamento postergado enquanto que outras necessitam de tratamento imediato por exemplo sinais de emerg ncia Em fun o disso a maioria do microprocessadores apresentam interrup es mascar veis e interrup es n o mascar veis Atrav s de instru es apropriadas o programa pode habilitar ou desabilitar uma interrup o mascar vel enquanto que a n o mascar vel dever ser sempre atendida devendo ser reservada apenas para eventos de alta import ncia Assim aplica es de tempo real que envolvem m dulos de programas cr ticos e que n o podem ser interrompidos durante sua execu o devem utilizar o conceito de mascaramento Escola Polit cnica da USP Departamento de Engenharia de Computa o e Sistemas Digitais PCS 3 Laborat rio de Processadores l Experi ncia 5 Outra caracter stica das interrup es diz respeito forma de obt
10. s Exemplo interrup es da fam lia 68000 e interrup es n o vetoradas Nesse tipo o dispositivo perif rico fornece ao microprocessador diretamente o endere o de subrotina de tratamento da interrup o por exemplo as interrup es do 8086 8088 Em alguns sistemas o dispositivo perif rico fornece apenas metade de endere o estando a outra metade armazenada em um registrador do microprocessador carregado na fase de inicializa o do sistema por exemplo as interrup es do Z80 operando no modo 2 Em outros sistemas o dispositivo perif rico tem que fornecer uma instru o ao microprocessador normalmente a instru o de chamada da subrotina de tratamento da interrup o por exemplo a interrup o INTR do 8085 e INT do Z80 operando no modo 0 Em sistemas com mais de uma interrup o existe a possibilidade de ocorrerem pedidos de interrup o simult neos devendo existir algum crit rio para a escolha de qual ser atendida em primeiro lugar Esse crit rio normalmente por prioridade pode ser implementado de diversas formas daisy chain ou circuitos de prioridade e daisy chain Nesse esquema os dispositivos perif ricos que podem solicitar interrup o s o interligados atrav s de sinais de controle em uma cadeia conhecida como daisy chain sendo o primeiro elemento ligado ao microprocessador Em caso de pedido de interrup o o microprocessador envia um sinal ao primeiro elemento caso seja ele o a
11. subrotinas de tratamento de interrup o sem muito comprometer o tempo de execu o do programa que estava em execu o Ou seja as condi es internas do microprocessador s o preservadas para posterior continua o da execu o do programa interrompido figura 1 Com esse m todo o microprocessador n o necessita consumir tempo de processamento para pesquisar a ocorr ncia de eventos externos e pode garantir um tempo reduzido para iniciar o seu tratamento Exemplos sistemas com muitos dispositivos perif ricos uso de dispositivos cujos eventos envolvidos s o sempre sinalizados assincronamente canais de comunica o serial ou paralelos temporizadores e contadores program veis controladores de perif ricos rel gios de tempo real sinais de emerg ncia sinais de alguns sensores pulsados etc instru es do programa tratamento da interrup o instru es do programa Figura 1 T cnica de Transfer ncia de Dados de Entrada e Sa da via Interrup o 3 MECANISMOS DE INTERRUP O 3 1 Caracter sticas B sicas de Interrup es Como foi apresentado as interrup es possibilitam um tratamento mais eficiente das opera es de entrada e sa da e permitem melhor atender aos requisitos de aplica es em tempo real A requisi o de interrup o pode ocorrer a qualquer momento assincronamente sendo ela indicada pela ativa o de um flag pelo dispositivo perif rico O microprocessador
12. utor do pedido ele responde com o endere o da subrotina de tratamento caso contr rio ele repassa o pedido ao pr ximo dispositivo perif rico que repetir o procedimento descrito Dessa maneira o primeiro elemento da cadeia dever corresponder ao de maior prioridade e assim sucessivamente Esse esquema pode ser implementado por exemplo com o Z80 operando no modo 2 Escola Polit cnica da USP Departamento de Engenharia de Computa o e Sistemas Digitais PCS 4 Laborat rio de Processadores l Experi ncia 5 e circuitos de prioridade z Nesse esquema um codificador de prioridades utilizado por exemplo de 8 para 3 fornecendo em sua sa da o c digo do pedido da interrup o de maior prioridade presente na entrada Esse c digo pode ser inspecionado pelo microprocessador para descobrir qual interrup o atender Muitas vezes s o dispon veis esquemas para o mascaramento individual das interrup es permitindo que uma interrup o alocada em uma linha de maior prioridade n o seja atendida quando outra de menor prioridade ocorrer Esse esquema pode ser implementado por exemplo com 8085 Z80 operando no modo 0 e a fam lia MC68000 3 2 Interrup es na Fam lia 8051 Cada fam lia de microprocessadores apresenta um tipo de implementa o para as suas interrup es sendo encontradas muitas particularidades n o necessariamente encontradas em outras fam lias Recomenda se nesse ponto que seja efetuada uma leitura

Download Pdf Manuals

image

Related Search

Related Contents

Manuel de l`utilisateur      Netgear WG311v3 User's Manual  Wiley QuarkXPress6 Bible  Mod: D6GP-X  ISTRUZIONI PER L`USO  XRP7724 - Exar Corporation  SYBA SY-PEX40045 : Free Download, Borrow, and Streaming : Internet Archive  

Copyright © All rights reserved.
Failed to retrieve file