FAÇA UM TIMER PROGRAMÁVEL – COM PIC 16F628A E DISPLAY LCD 16X2 (REF188)

Não fique esperando para desligar. Use um timer…

Existem algumas atividades que necessitamos ligar algum equipamento e ficar esperando um determinado tempo para desliga-lo. O timer facilita muito porque podemos programar o tempo desejado que o equipamento fique ligado e ao darmos ‘start’, ele ligará e desligará no tempo programado. Assim, evitamos de esquecermos algo ligado e as possíveis consequências disto. Apesar de ser uma coisa simples de ser feita, em especial com microcontroladores, ainda assim é muito útil. Então resolvi fazer uma montagem com este tema. Veja como ficou o esquema:

A rotina usa a interrupção do timer 0 para obter o tempo de 1 segundo necessário ao funcionamento do relógio. Com o prescaller ajustado para dividir por 64 obtemos uma interrupção a cada 8 ms. Um contador adicional divide por 125 obtendo assim este tempo básico.
Para usa-lo basta programar o tempo desejado entre 1 s e 59 minutos/59 segundos, e em seguida, apertar o botão ‘On/Pause’. Os botões ‘Seg’ e ‘Min’ ajustam respectivamente os segundos e os minutos. Apertando começa a incrementar e soltando para o incremento. Somente podemos ajustar o tempo quando em pausa ou desligado por tempo. Se estiver em ‘pausa’ e ajustamos qualquer um dos valores, o display passa a mostrar ‘Timer Off’ ao invés de ‘Timer Pause’. Quando em modo ligado, ou seja, está acionando a saída e contando tempo para desligar, o LCD apresenta ‘Timer On’. Quando apertamos para pausar, também desliga o rele e a carga na sua saída.
Quando o tempo atinge o valor ’00:00′, além de desligar o rele, também ativa um ‘beep’ produzindo um sinal sonoro do termino do tempo, parecido com os usados em forno de microondas. Foi usado um simples disco piezoelétrico, pois a frequência é gerada por software.
Obs. Esta montagem é de caráter didático, sendo realizado em placa de montagem experimental ( tipo protoboard), sujeita a bugs ainda não observados. Está sendo fornecido os arquivos que poderão ser alterados pelos hobistas conforme a sua necessidade.
Atenção: Antes de fazer placa de circuito impresso para este circuito, monte em placa experimental e teste para certificar que ele atende as suas necessidades.

Segue a pasta com os arquivos para esta montagem, nas duas versões (CCS C Compiler):

TIMER_FILES

Segue a pasta com os arquivos para esta montagem, nas duas versões (XC8 Compiler):

TIMER_XC8_FILES

Adicionalmente, em 16/12/2015 foi feita esta versão para tempos menores (1 ms a 9999 ms), para fins de testes com temporizações pequenas, usadas em efeitos estroboscópicos e fotografias:

FAST_TIMER_FILES

Em 08/08/2016 foi postado esta versão do Timer de 0 a 59 minutos, em CCS C Compiler, que permite zerar a contagem ao apertar os botões de ajuste de ‘segundos’ e ‘minutos’ ao mesmo tempo, em modo ‘stop’ ou ‘pause’:

TIMER_LCD_ZERA_FILES

Manuais:
PIC 16F628A
LCD

Curiosidades:
Alguém tem um lápis?
Obras-primas “pintadas” com pedras
A arca de Noé e a arquitetura naval
Como surgiu a moderna indústria do diamante
Mestres na arte de pescar
O fascínio da pesca no gelo
O modo eficiente de o salmão nadar

Assuntos Bíblicos:
Como ensinar seus filhos a ter autocontrole
Como parar de discutir
A Bíblia é produto da sabedoria humana?
O que é preciso para entender a Bíblia?
Por que Deus permitiu o Holocausto?
Será que Deus, a Bíblia ou a religião podem ajudar você a ter satisfação na vida?
Como posso me proteger do assédio sexual?
O que é a fera de sete cabeças de Apocalipse capítulo 13?

Videos Motivadores:
Vejo a vida com as mãos
‘Eu estava cheio da minha vida’
Um novo começo
Japão — refazendo a vida um ano após o desastre
Uma exposição histórica
Deus tem nome?
Outros videos

Até o próximo artigo!!!

34 comments on “FAÇA UM TIMER PROGRAMÁVEL – COM PIC 16F628A E DISPLAY LCD 16X2 (REF188)

  1. Boa noite Claudio ,teria como colocar uma função apertando se as teclas min e seg ao mesmo tempo e zerar temporizaçao pq ocorre o seguinte as vezes coloca se um tempo errado e ai tem resetar e demora muito para mexer no timer novamente grato

        1. Olá Marcos!
          Tente ver quais são as mensagens de erro do compilador e corrija. Ou baixe a versão 3.2.
          Cláudio

Comments are closed.

Back To Top