TINY CLOCK – RELÓGIO DIGITAL EXPERIMENTAL – C/ PIC12F675 (REF265)

Faça um relógio didático com poucos componentes …

Existem muitos esquemas de relógio feitos com PIC e outros microcontroladores na internet. Esta versão é feita com um PIC 12F675, um LCD 16X2 e apenas um único botão (interruptor) para o ajuste das horas, minutos e segundos. Veja como ficou o esquema abaixo:

Tiny_Clock

Para obter uma precisão melhor, foi usado um cristal de 4 Mhz nos pinos 2 e 3 do PIC, ao invés de usar o oscilador interno. A tolerância de frequência deste cristal determinará a precisão do relógio. Para testes usei um cristal comum de 4mhz, sem importar muito com a precisão, em vista da natureza didática desta montagem.Para enviar os dados e comandos para o LCD foi usado o método Lplex, com apenas 3 pinos do microcontrolador, fazendo uso de resistores e capacitores.
Como fazemos o ajuste de horas, se o esquema apresenta apenas um único interruptor?
De forma sequencial. Deverá proceder desta forma:
Aperte o botão de ajuste (ADJ) até que comece a piscar o dígito de dezena de horas. Solte o botão logo que comece a piscar. Aperte e solte o botão para incrementar este primeiro dígito. Apertar e soltar rapidamente não resultará em incrementos. Faça de forma mais lenta, para que a rotina possa operar corretamente.
Quando atingir o valor desejado, aperte o botão e mantenha pressionado até que comece a piscar o próximo dígito. Repita o ajuste deste dígito. Faça isto com todos os dígitos. Caso não deseje alterar um dígito, poderá manter o botão pressionado até que passe para o próximo dígito. Caso necessite ajustar apenas alguns dígitos iniciais como ex. horas, poderá ajustar e sair do ajuste simplesmente aguardando sem apertar o botão. Depois de 5 segundos irá sair do modo de ajuste automaticamente, parando de piscar e começando a incrementar os dígitos de segundos no modo normal de trabalho.
Dica para precisão deste relógio: Use cristal de 4mhz com valor menor que 20ppm, e baixo índice térmico. Se for o caso, poderá usar TCXO (oscilador com compensação térmica, 4 pinos) de 4 Mhz. Se tiver apenas cristais comuns de 4 Mhz, faça testes com vários, até que consiga uma precisão razoável para sua necessidade. Cristais gravados com vários zeros após a vírgula tendem a serem mais precisos. Ex. Temos 2 cristais, sendo um marcado 4mhz e outro 4.000000 Mhz(este último deverá ser mais preciso).
Obs. Esta montagem é experimental, sendo de caráter didático, montada apenas em placa experimental (do tipo “Breadboard”), sujeita a “bugs” ainda não detectados. Está sendo fornecido os arquivos para que cada hobista possa alterar o programa segundo suas necessidades.

Segue pasta zipada com os arquivos da montagem:

TINY_CLOCK

Curiosidades:
Diabetes — como se prevenir
O pouso das abelhas
Como lidar com a morte do pai ou da mãe
Uma visita à Espanha
A história da Palavra de Deus na Espanha medieval
A expulsão dos mouriscos
Como vencer a estafa

Outros assuntos:
Jesus morreu numa cruz?
É pecado tomar bebidas alcoólicas? O que a Bíblia diz?
O que faz alguém ser um bom pai ou uma boa mãe?
Como ser feliz no casamento?
Existem contradições na Bíblia?

Vídeos:
Como a vida começou?
Celular e você: quem manda em quem?
Como enfrentar o bullying sem partir para a briga
Quem é o Autor da Bíblia?
Será que é amor ou paixão?
vídeos para crianças
Deixei as armas para trás
Eu me cansei das religiões

Até o próximo artigo!

9 comments on “TINY CLOCK – RELÓGIO DIGITAL EXPERIMENTAL – C/ PIC12F675 (REF265)

  1. Bom dia Claudio, no artigo controlando cargas em corrente continua ( ref165) teria como mudar a frequência do pwm? eu usei ele para o tda8199, coloquei o filtro na saída como em post posteriores, e como nos outros aparecem o ruido de 1khz do pwm no fundo, pensei em usar uma frequência mais alta em torno de 25khz seria possível? Imagino que nessa frequência não apareceria no som.
    Sérgio

    1. Olá Sergio Luiz!
      Poderá experimentar reduzir o delay de 2 ms segundos no loop principal para valores menores como ex. delay de 40 useg e também reduzir o valor do capacitor de forma que consiga ser carregado dentro deste tempo. Sei que existe cálculo para isto, mas não tenho eles disponível no momento. Faça também experimentos até obter a frequência desejada ou uma que atenda a sua necessidade.
      Outra forma é usar um filtro rc na saída. Talvez um valor, por ex. resistor de 10k e um capacitor de 22 uf ao gnd. O ruído pode ser captado não somente desta saída, mas também por proximidade e pelo vcc. Verifique isto também.
      Cláudio

  2. Perfeito Claudio, agradeço sua prestatividade de sempre, e quando sobrar um tempo, é uma sugestão para um projeto futuro, seria de muita serventia para nós radioamadores.
    Forte abraço ao amigo.
    Meneghel

    1. Olá Meneghel!
      Poderia explicar como você, como radioamador, usa o relógio ‘utc’ na prática? Também, em um futuro projeto, como deveria ser a visualização? Seria em horas/minutos/segundos do país, e acionando um botão apareceria as horas ‘utc’? Ou deveria apresentar somente as horas ‘utc’?
      Vocês usam algum tipo de programa calculadora em que se entra a longitude e apresenta a hora da região? Ou vocês usam mapas para obter a longitude? Ou tabelas com valor para cada país?
      Obrigado
      Claudio

      1. Oi Claudio, boa tarde.
        Nós necessitamos somente da hora, minuto e segundo LOCAL e hora, minuto e segundo UTC, porque no cartão de QSL vamos anotar a hora do contato com a outra estação a hora UTC, a referencia nossa e do colega radioamador em qualquer local da terra será a hora UTC, ok. Se possível aparecer no display a local e a UTC ao mesmo tempo, por exemplo uma ao lado da outra seria o ideal. Acho que é uma dificuldade a mais quando muda para o horário de verão aqui no Brasil que a diferença de 03 horas local para utc vira 02 horas mas acho que é só ter opção para ajustar, ou fazer automático não sei qual mais facil para você.
        Fiquei muito contente com o interesse do amigo para o projeto.
        Forte Abraço e a seu dispor no que puder ajudar
        Meneghel

        1. Olá Meneghel!
          Muito obrigado pela explicação! Vou pensar um pouco sobre o assunto em como adaptar para algo funcional. Parece que terei que reservar um ‘define’ para o usuário escolher a diferença de fuso horário conforme a sua região no planeta. Também não sei se o ‘Horário de verão’ muda sempre na mesma data ou altera conforme se passam os anos. Mas em outras partes do mundo não tem este arranjo. Talvez usar um jumper que poderia ser colocado ou tirado conforme a necessidade.
          Obrigado
          Cláudio

  3. Olá Claudio bom dia, tem possibilidade de alteração no programa para exibir no LCD hora local e utc?
    Ótimo ano novo ao amigo e toda família, saúde e felicidades sempre.

    Forte abraço
    Meneghel

    1. Olá Meneghel!
      Esta montagem foi feita como uma simplificação de outros relógios, com o mínimo necessário. O uso de apenas um interruptor e o tamanho da flash (1K) dificulta tremendamente a implementação de mais funções como as que você sugeriu.
      Cláudio

Comments are closed.

Back To Top