Sie sind auf Seite 1von 3

CONTADOR DE PERIODO

Emanuel da Conceio Nunes Neto Faculdade de Engenharia Eltrica, UFPA, R. Augusto Corra, 01 - Guam. CEP 66075-110, Belm, PA emanuelcnn@yahoo.com.br Florindo Antonio de Carvalho Ayres Jnior Faculdade de Engenharia Eltrica, UFPA, R. Augusto Corra, 01 - Guam. CEP 66075-110, Belm, PA florindoayres@yahoo.com Marcilio Silva de Souza Faculdade de Engenharia Eltrica, UFPA, R. Augusto Corra, 01 - Guam. CEP 66075-110, Belm, PA marctec_41@hotmail.com

Resumo: Este projeto tem como principal objetivo o desenvolvimento de um programa em linguagem Assembly que simule a contagem de um perodo decimal programado, a partir do auxlio do Hardware Altera Cyclone II 2C35 FPGA (DE2) mdulo DE-2 da Altera, do software Quartus II verso 9.1sp2 Web Edition e do microprocessador, MCivan, cedido e desenvolvido pelo prof. Dr. Ivan Silva da Faculdade de Engenharia Eltrica da Universidade Federal do Par. Palavras-chave: Perodo, contagem, microprocessador, programa. Introduo Define-se perodo como sendo o intervalo de tempo em que um fenmeno se repete ento o perodo um intervalo de tempo medido necessrio para uma ao ser desenvolvida. Um perodo de tempo pode ser contado em uma base de tempo que seja mais apropriada, por exemplo, o perodo de tempo de uma viagem de Belm a So Paulo de aproximadamente 8 horas, ento a base de tempo de contagem em horas nesse caso o perodo contado em horas. Ressalta-se que tal ente fsico muito importante em microprocessadores visto sua larga aplicao em diversos segmentos, tais como da indstria com um vasto nmero de equipamentos que envolvem controle de processos (balanas digitais, contadores de velocidade, CLP`s...).Para isso utilizamos como ferramentas de estudo o software Quartus II, o Altera Cyclone II 2C35 FPGA (DE2) e o microprocessador MCivan. Atravs do Altera Cyclone II 2C35 FPGA (DE2) ser possvel analisar o perodo de acionamento de uma chave liga-desliga (key2) da plataforma FPGA. No desenvolvimento do programa de contagem do perodo foi usada a linguagem Assembly. assembly, MCivan O microprocessador utilizado tem a seguinte configurao: Memria RAM de 256kbytes, frequencia de 27 MHZ, dois Registradores de Entrada conectados s chaves do mdulo DE2 da Altera, dois Registradores de Sada ligados ao display e aos LEDS, um Registrador de ndice (X), um Contador de Programa (CP), um Registro de Endereos da Memria (REM), um Apontador de Pilha (SP), um Registrador de Instrues (RI), um Controlador, uma Unidade Lgica Aritmtica (ULA), um Registrador Temporrio (TMP) e um Registrador A e um B dispostos da seguinte forma:

1/3

FLUXOGRAMA

O programa de contagem de perodo de 00 a 99. Fez-se necessrio apenas o uso do Registrador de Entrada 2, e do Registrador de Sada 1 , como interface de usurio (onde o usurio ira ver a contagem). O Registrador de Entrada 2 est conectado a chave de presso KEY 03 do FPGA (DE2) da ALTERA. O microcomputador percebe se nessa mesma chave houve uma transio positiva em seu estado (pois ela est inicialmente em estado negativo), para controle de contagem,quando a chave for pressionada duas vezes , a primeira para o microprocessador perceber que haver contagem, apenas um pulso e a segunda ser de fato a contagem do tempo em que a chave (KEY 03) permanecer pressionada, cujo tempo ser mostrado no display. Para cessar a contagem basta apenas parar de pressionar a chave em questo, e assim o display congelar o ltimo valor contado, sendo necessria a ativao de uma chave de reset que se chama KEY 0 para o programa retornar ao seu estado inicial (00) . Durante a contagem se houver um perodo de contagem acima do valor 99 decimal, haver o incio de um estado de erro onde aparecer alternadamente FF e depois 00 em hexadecimal no display de LEDS de sete segmentos, que esto acoplados no registrador de sada 1.Este erro ser desfeito ao pressionar o reset. De posse da listagem de cdigos aceitos pelo microprocessador, pde-se desenvolver um programa em linguagem Assembly que verificava a ocorrncia de uma transio negativa na chave de presso (como citado anteriormente) do mdulo DE-2 da Altera, fazendo com que haja a contagem progressiva de 00 a 99 em decimal.

O cdigo desenvolvido, inicialmente, escreve na memria o valor 00 para incio da contagem, aps essa etapa inicial, o programa ir detectar se est havendo uma transio positiva na entrada da chave de presso, ento o programa mostra nos display de interface do usurio o ltimo valor contado enquanto houver o acionamento da chave, depois h um novo teste para determinar se ainda existe uma transio positiva para o programa continuar efetuando contagem, o programa ir fazer contagens de 00 a 99 e mostrar na sada, ento se a contagem for superior a 99, haver o incio de um ciclo de erro, pois a contagem ter excedido o limite de 99, e ir aparecer no display os valores 00 e FF, e ao final do programa, se no houver uma contagem de perodo superior a 99 no display ir mostrar o ultimo valor contado enquanto a chave foi pressionada. A rotina de atraso necessria, pois ela o espao de tempo entre a ocorrncia de um mesmo fenmeno (no caso a contagem de perodo), a contagem de 00 a 99 feita graas a um conversor de hexadecimal para decimal que foi desenvolvido durante a programao como mostrado no fluxograma acima, pois a mquina (MCivan) foi desenvolvida para contar de 00 at 255, ou FF em hexadecimal e como ns necessitvamos de uma contagem em decimal, foi feito na parte do programa que faz a contagem um conversor para realizar a contagem apenas em decimal. Concluso O programa conta o perodo na base de tempo que o programador implementar no ato da programao, que depende dos valores dos bytes inseridos, x, y e z, no ato da programao. A

2/3

contagem ser feita at um determinado limite e quando a houver extrapolao do limite estabelecido de perodo (99 decimal), a rotina de erro ser executada, no reiniciando a contagem desde o seu valor inicial, a no ser que haja um reset na chave KEY 0,satisfazendo as determinaes iniciais do projeto. Vale ressaltar que o intervalo de contagem mostrado no Display ser maior ou menor conforme os valores de x, y e z inseridos na programao, ou seja, o perodo ter um intervalo de contagem maior ou menor dependendo dos valores dessas variveis inseridos no ato da programao. Foi implementado um estado de preparao na contagem com um pulso na chave de presso KEY03 que controla a contagem do perodo. Essa chave s ir iniciar a contagem enquanto ela estiver pressionada e mostrar no display os valores, quando parado o pressionamento da chave ela mostrar o ltimo valor de perodo contado antes do limite (que abaixo de 99 em decimal), e quando se extrapola o limite de 99 a rotina de erro ficar rodando ciclicamente at haver um reset na chave KEY 0

Resultados Obtivemos com os valores de x, y e z respectivamente 45, 75 e 63 todos em hexadecimal, um clculo de perodo de aproximadamente 1 segundo experimentalmente, funcionou adequadamente durante os testes e com o valor FF mximo inserido nos bytes x, y e z no momento da programao o resultado de atraso mximo alcanado com essa configurao de programa foi superior a 7 segundos.

3/3

Das könnte Ihnen auch gefallen