Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
MOR

Meu Projeto de Temporizador / Cronômetro

Recommended Posts

Segue o vídeo do meu Temporizador/Cronômetro ... Finalmente funcionando.

 

A frequência do mostrador no vídeo sofreu "batimento", ou modulação com a taxa de quadros da filmadora. Ao vivo o mostrador não apresenta este batimento. Está perfeitamente normal.
Não sei porque o vídeo alterou a taxa do quadro da filmadora de 9:5 para 4:3. 

Pode-se programar um tempo de até 99h 59min 59seg como temporizador. Como Cronômetro pode-se medir tempo de até 99h 59min 59seg.

Posso disponibilizar o diagrama esquemático e o firmware. Meu layout é de face simples (claro que com alguns jumpers) e teve duas placas, para caber na caixa.

 


Meus mostradores são do tipo anodo comum e como tive que aplicar uma boa corrente, devido à multiplexação no tempo dos dígitos, fui obrigado a incluir 6 BCs (PNP) para selecionar o dígito e mais 7 BCs (NPN) para selecionar o segmento. Não quis forçar nem o PIC e nem o 4511. Como são todos XingLing, o custo dos 13 BCs devem estar na faixa de R$ 1,65 ( para um lote com 100).

Meus dois layouts sofreram redução com cerca de 10% em seu tamanho, então alguns componentes entraram forçados. Depois fiz algumas pequenas alterações, como incluir os pontos acesos entre as horas, minutos e segundos. Também retirei o buzzer da placa e coloquei na face frontal da caixa, com isso o bip ficou bem mais alto. Antes quase não dava para ouvir.

Então é isso aí!
Recebi sugestões de colegas de um outro fórum. Foram válidas e sempre bem-vindas.
MOR_AL

Editado por MOR
  • Curtir 7

Compartilhar este post


Link para o post
Compartilhar em outros sites

Legal Moris. Não sei que linguagem usou. Se tiver sido assembly, deve estar exausto kk. Mas se em c, uma dica que dou é : uma tecnicazinha simples lhe permite avaliar se a tecla ficou pressionada por mais de 5 contagens , durante estas, com intervalo de p.ex. 0.2 segundos. Se > 5, este intervalo passa a ser p.ex. 0.04 segs. O resultado previsível é uma maior rapidez no ajuste. OK, dica meia bobinha mas é o que tenho pro momento.

 

p.s. ... sua voz me lembra um bom velho amigo também carioca que não está mais entre nós. Quase me deu um nó na garganta:tw_cold_sweat:

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • Autor do tópico
  • @Isadora Ferraz

    Olá Isadora!

    Sim. A linguagem foi assembler, mas nós (eu e ela) nos damos muito bem. Foram apenas 771 instruções e nem cheguei à metade da capacidade do PIC.

    O que deu mais trabalho não dependeu da linguagem de programação, não. O que deu mais trabalho foi controlar os danados dos cerca de 11 bits de controle e alguns bytes de controle. 

    Na verdade dois bytes me deram muito trabalho. Eles tinham que inicializar com 200 e 2. Devo ter repassado umas dez vezes todo o programa, tanto em fluxograma como conferindo o assembler. Devo ter investido umas 40 horas ou mais para descobrir este pequeno detalhe. Foi um problema de lógica e não da linguagem usada.

    Quanto à identificação da tecla.

    Eu fiz uma rotina que lê a tecla, mas não a considera imediatamente. Eu considero três estágios. O inicial, que pode conter bouncing, o segundo que é o estável e o terceiro, que também pode conter bouncing. Somente após estes três estágios é que a tecla é identificada. Mas a dificuldade não parou aí. Há um loop de 2,5ms criados pelo TIMER0. Para poder monitorar o teclado, controlar o mostrador (multiplexar os dígitos no tempo) e saber se já ocorreu um segundo, tive que "quebrar" a identificação/rotina da tecla em várias partes, uma a cada interrupção. A identificação da tecla não era composta por uma rotina, era um micro programa externo à interrupção, mas que era chamado a cada interrupção, por meio de um bit alterado dentro da interrupção. Cada saída deste micro programa alterava diversos bits, o que determinava o endereço de continuação dentro deste micro programa. Acho que uma linguagem de mais alto nível também teria que ser tratada com uma de baixo nível. 

    Segue o fluxograma do micro programa que identifica a tecla. Pr2 é o goto Pr2, que faz o retorno para o programa principal. Mas antes desta instrução, o bit ContTecla,x identifica o endereço de continuação deste micro programa. 

    Temporizador_IdentificaTecla.pdf

    Para encurtar a história, o fluxograma contém cerca de 12 páginas. 

     

    É um excelente lubrificador de neurônios, hehehe.

     

    Em tempo: Qual seria o colega? Ele participava de algum fórum?

     

    MOR_AL

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Legal Mor. Em asm realmente é uma boa ginástica. Em c, uma técnica que uso desde os promórdios é usar a varredura dos displays pra identificar qual tecla pressionada. Neste caso, com apenas uma entrada do mc consigo p.ex. ler 8 teclas aproveitando a obrigatória varredura. Algo como cada tecla em cada saída anodo comum com um lado em comum com p.ex. RA0 com pulldown.Assim sendo, dentro da interrupt...

     

    ...

    PORTB=i;

    if (RA0) tec|=i; // se pressionada,registra tecla

    i<<=1;

    ...

     

    Claro é só a essência mas me lembro vagamente de ter publicado em foruns da vida o fonte completo inclusive com filtro anti ruído.... criação 100% original

    Falando nisso...

     

    [off topic]

    Não... era colega de 'carne e osso' mesmo. ndv com eletronica. Falando nisso...

    Alguém daqui ou qualquer ambiente virtual que temos alguma afinidade, pode partir sem que saibamos. Nunca vimos, nem cumprimentamos,,, Alguém de repente pode até ter partido. As vezes penso nisso... perturbador. Falando nisso...

    O pessoal do asm51... tão todos vivos? Vá saber... qualquer dia passo por lá

     

    abç

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Cara, ficou legal o projeto, em especial a apresentação do produto. Muitas vezes pensamos em fazer algum utilitário, mas quando terminamos podemos até ter algo que funciona,. mas que na maioria das vezes é feio que dói. Nos fale da caixa, do recorte do tampo para inserção do visor e da impressão dos dizeres.

    • Curtir 2

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Eu também achei mais legal a caixinha do que o projeto eletrônico em si. Mas deu a impressão de que o @MOR aproveitou de outra coisa. 

    O programa ficou legal, ainda mais em assembler, coisa que pra mim é grego. Eu só dou umas "arranhadas" na linguagem C :lol:

    Como eu já disse antes eu fiz um timer desses, a diferença é que não tem o cronômetro e os bips, mas tem acionamento por controle remoto. 

    Só não publico aqui porque não fui eu quem criou os códigos. 

     

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Show de bola @MOR,
    Poderia disponibilizar o esquema do Projeto?
    Se preferir meu e-mail: ricaelias@yahoo.com.br

    Parabéns pela iniciativa,
    Grande abraço!

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • @Isadora Ferraz

    É por aí mesmo. Uso o comparador e a referência do PIC. Cada tecla possui uma tensão analógica. Faço a varredura e identifico a tecla. 

    Em 24/11/2017 às 20:31, Sérgio Lembo disse:

    Cara, ficou legal o projeto, em especial a apresentação do produto. Muitas vezes pensamos em fazer algum utilitário, mas quando terminamos podemos até ter algo que funciona,. mas que na maioria das vezes é feio que dói. Nos fale da caixa, do recorte do tampo para inserção do visor e da impressão dos dizeres.

    @Mestre88

    Bom.

    1 - Comprei uma caixa 4x4, fechada pelas 4 travas nos vértices. Tentei colocar tudo dentro, mas não dava em apenas um "andar". Tive que incluir uma segunda PCI sobre a primeira.

    2 - Fora da caixa, o bip era alto, mas quando fechei, quase não se ouvia. Então decidi colocar na face da tampa. Colei com superbonder.

    Para tudo não ficar cheio de fios da PCI para a tampa, medi a altura de todos os componentes e coloquei alguns em pé e outros deitados. A referência de altura foram os mostradores 7 segmentos. Fiz com que eles coincidissem com a face interna da tampa. Abri um retângulo na tampa para os mostradores. Como observei em um vídeo do YouTube, o mostrador de 7 segmentos não fica totalmente limpo. Os elementos apagados não ficam invisíveis. Tinha um pedaço de acrílico vermelho e com isso resolvi dois problemas. Apenas os elementos acesos passaram a ficar visíveis e a placa vermelha também escondeu alguma imperfeição do corte da tampa.

    3 - As teclas ficaram baixas em relação ao mostrador. Tentei deixar com os lides maiores para coincidir com o mostrador, mas as teclas não ficavam firmes e logo, logo dariam problema. Pensei em colocar algo na parte superior das teclas e assim acessá-las pela face superior. Tentei diversos materiais, mas teria que ser algum material que não fosse rígido para acabar descolando ou quebrando o contato e nem fosse mole demais para não transmitir a pressão para as teclas. No final tive que fazer as "elevações" com borracha dura. Usei aqueles furadores de cinto. Com aquele diâmetro as peças ficaram com a rigidez ótima. Usei o layout da PCI superior para marcar os furos. Claro que nunca coincidem integralmente, mas isso ocorreu com apenas uma tecla, que foi prontamente resolvido. 

    O passo seguinte foi cortar as elevações para apenas sobressair o suficiente para não haver muita pressão, quando usar força demais. Colar as "elevações" de borracha nas teclas também foi um parto. Tinha que colar apenas na tecla e não deixar a cola encostar na tampa da caixa. Coloquei um pequeno pingo em um plástico e apenas toquei com a face inferior das "elevações". Assim garanti que não haveria excesso de cola e não colaria na tampa.

    4 - Como as quinas da caixa estavam ocupadas pelas travas da caixa e a tomada fêmea para a carga não era pequena, tive que fazer um malabarismo. A segunda PCI é menor que a que fica junto da tampa. Ela permitiu incluir uma fonte de 5V/1A, para alimentar o circuito, que consome no máximo 100mA. Essa fonte eu comprei no Ebay e medi toda ela com a minha Carga Eletrônica. Acabou dando tudo dentro da caixa.

    5 - Quanto às letras. Imprimi a laser uma lista das palavras que iriam na face frontal da caixa. Imprimi com diversos tamanhos de letras e testei até que desse tudo certo. Cortei as palavras e apliquei cola branca tanto entre as letras e a tampa como sobre as letras. Claro que só coloquei cola branca sobre as letras depois que elas ficaram coladas na tampa. É como uma plastificação.

    Realmente dá muito trabalho entre o circuito na PCI pronto e ele na caixa. 

    @Ricardo Elias

    Vou anexar o link do diagrama e o arquivo .hex. 

    https://drive.google.com/open?id=1H8-CeSxtYd09Q-i46zpvgL662XAl6oab

    https://drive.google.com/open?id=1Wit-pguUHDEUtpC3qGCetrja1UL-dhDh

    MOR_AL

     

    Editado por MOR
    • Curtir 2

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    13 horas atrás, MOR disse:

    2 - Fora da caixa, o bip era alto, mas quando fechei, quase não se ouvia. Então decidi colocar na face da tampa. Colei com superbonder.

    Entendendo o que disse e como funciona: com o buzzer colado na tampa a pressão do som faz a tampa vibrar e dessa forma o som vai para fora.

    14 horas atrás, MOR disse:

    a placa vermelha também escondeu alguma imperfeição do corte da tampa

    O acrílico vermelho esconde quase tudo, exceto o que é vermelho e a luz. Parabéns, foi uma solução inteligente de acabamento, simplifica os cuidados estéticos com o que está abaixo do acrílico vermelho.

    14 horas atrás, MOR disse:

    Quanto às letras. Imprimi a laser uma lista das palavras

    Excelente solução para a produção de uma só peça. Para uma produção seriada, não necessariamente de grande escala (coisa de micro empresa), a solução do silk screen com tinta vinílica apresenta custo interessante tanto na produção in home como na tercerizada.

    14 horas atrás, MOR disse:

    3 - As teclas ficaram baixas em relação ao mostrador... (e segue o parto que foi acertar isso)

    A indústria oferece diversas opções de altura, mas a quantidade tem que ser de algumas centenas, não é necessário produção por encomenda . Totalmente viável para pequenas empresas.

     

    Muitas vezes alguém tem uma boa ideia mas acha que apenas os grandões tem a possibilidade de produzir. Esse produto do @MOR bem acondicionado e apresentável mostra bem que nem sempre é assim. Vale pelo exemplo.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • 6 horas atrás, Sérgio Lembo disse:

    Entendendo o que disse e como funciona: com o buzzer colado na tampa a pressão do som faz a tampa vibrar e dessa forma o som vai para fora.

    Simplesmente fiz um furo com o diâmetro um pouco maior que o furo do buzzer e colei a entretela no perímetro. Vide logo abaixo da palavra Temporizador.

    6 horas atrás, Sérgio Lembo disse:

    O acrílico vermelho esconde quase tudo, exceto o que é vermelho e a luz. Parabéns, foi uma solução inteligente de acabamento, simplifica os cuidados estéticos com o que está abaixo do acrílico vermelho.

    Excelente solução para a produção de uma só peça. Para uma produção seriada, não necessariamente de grande escala (coisa de micro empresa), a solução do silk screen com tinta vinílica apresenta custo interessante tanto na produção in home como na tercerizada.

    A indústria oferece diversas opções de altura, mas a quantidade tem que ser de algumas centenas, não é necessário produção por encomenda . Totalmente viável para pequenas empresas.

     

    Muitas vezes alguém tem uma boa ideia mas acha que apenas os grandões tem a possibilidade de produzir. Esse produto do @MOR bem acondicionado e apresentável mostra bem que nem sempre é assim. Vale pelo exemplo.

    Valeu!

    MOR_AL

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Crie uma conta ou entre para comentar

    Você precisar ser um membro para fazer um comentário






    Sobre o Clube do Hardware

    No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

    Direitos autorais

    Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

    ×