Epoch

De Garoa Hacker Clube
Revisão de 11h47min de 26 de junho de 2011 por DQ (discussão | contribs) (Criou página com 'O projeto Epoch consiste em utilizar um display de pinball para apresentar um contador de segundos desde a fundação do Garoa (como o que fica na parte inferior esquerda deste w...')
(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)
Ir para navegação Ir para pesquisar

O projeto Epoch consiste em utilizar um display de pinball para apresentar um contador de segundos desde a fundação do Garoa (como o que fica na parte inferior esquerda deste wiki).

Epoch1.jpg

O Display

O display possui na frente dois blocos de 8 dígitos e no outro lado o circuito e um conector:

Epoch2.jpg

O diagrama de blocos do circuito do display é:

Epoch4.jpg

Para cada bloco (A e B) temos quatro sinais (a8, a4, a2 e a1) que codificam em binário o dígito a apresentar. Os 7447 convertem estes sinais binários na ativação dos segmentos correspondentes. A saída do 7447 vai para os 8 dígitos; três sinais (S0, S1 e S2) selecionam um deles. A decodificação destes sinais é feita pelo 74238, o 2803 e os transistores são usados devido à corrente que circulará quando todos os segmentos forem acesos simultaneamente.

A pinagem do conector (no que diz respeito aos pinos que interessam para o projeto):

Epoch5.jpg

Hardware

A ideia básica foi usar um microcontrolador para acionar o display. Uma conexão RS232 com um micro é usada para programar o valor inicial e um relógio com bateria é usado para manter atualizada a data e hora quando o microcontrolador estiver desligado. O microcontrolador escolhido foi o PIC16F882-I/SP. É um modelo relativamente recente com algumas características interessantes para este projeto:

  • Encapsulamento PDIP com 28 pinos, dos quais até 24 podem ser usados como E/S digital
  • Clock interno de 8MHz, calibrado na fábrica
  • USART para comunicação serial

Para o relógio foi usado o DS1302. Além do tradicional relógio/calendário e Ram (no caso 31 bytes), este chip é capaz de fazer carga lenta (trickle-charge) da bateria de backup, uma bateria recarregável de NiCad de 3,6V 60mA/h, destas que se encontra em algumas placa mães de PC.

Para converter o nível dos sinais de Rx e Tx entre TTL e RS232 foi usado o tradicional MAX232.

O circuito é bastante simples. Além dos três CIs (PIC, DS1302 e MAX232) temos o cristal e a bateria para o DS1302, um pullup para o sinal de reset do PIC e os capacitores para o MAX232. Os sinais para programação in-circuit do PIC vão para um conector, para permitir a carga do software sem precisar retirá-lo do circuito:

EpochCircuito.png

Os primeiros testes foram feitos em uma breadboard. A montagem foi feita em uma placa de circuito impresso padrão, destas que possuem trilhas semelhantes às conexões da breadboard.

EpochPlaca.jpg


Relato Detalhado

Um relato mais detalhado pode ser visto nos post abaixo:

Display Hardware Software: interface com o DS1302 Software: programa principal, Display e tratamento da Serial