Preciso de Ajuda com Marcador de Pontos Digital

Estou querendo fazer um marcador de pontos digital utilizando 2 display de 7 segmentos para o pebolim do meu filho contento 2 botões para marcar os pontos um botao para cada display e 2 botoes reset para resetar um para cada display que seria jodador 1 e jogador 2 algo bem simples!

achei um sketch na net e um codigo apenas de um display alguem poderia me ajudar a adicionar mais um, não manjo de programar arduino.

#define CONTAR 8    // pino onde será conectado a tecla de contagem 
#define MODO 9     // pino onde será conectado a tecla de modo 

byte
 tabela_7_seg [16] = {   
B01111110,  // = Digito 0   
B00001100,  // = Digito 1   
B10110110,  // = Digito 2   
B10011110,  // = Digito 3   
B11001100,  // = Digito 4   
B11011010,  // = Digito 5   
B11111010,  // = Digito 6   
B00001110,  // = Digito 7   
B11111110,  // = Digito 8   
B11001110,  // = Digito 9   
B11101110,  // = Digito A   
B11111000,  // = Digito B   
B01110010,  // = Digito C   
B10111100,  // = Digito D   
B11110010,  // = Digito E   
B11100010   // = Digito F 

}; 

int
 contagem = 9, inc_dec =1; 

void setup() 
{   

//Configura os pinos digitais de 1 até 7 como saída digital
   
DDRD = B11111110;   

//Configura os pinos onde os botões estão conectados
   
pinMode
(CONTAR, INPUT);   
pinMode
(MODO, INPUT); 



void
 loop()
{     

// Lê o botão de Contagem
     
if (digitalRead(CONTAR)== LOW)    
{     
contagem += inc_dec;          

//Reseta a contagem em caso de estouro
     
if
 (contagem < 0)     
{       
contagem = 15;     
}     
if
 (contagem > 15)
{       
contagem = 0;     
}          

//Aguarda a tecla de contagem ser solta
     
while(digitalRead(CONTAR)== LOW)
{     

}     

}      

// Lê o botão que seleciona MODO
   
if
(digitalRead(MODO)== LOW)   
{     

//Inverte o modo de operação do contador
     
inc_dec = inc_dec * (-1);     
//Aguarda a tecla de MODO ser solta     
while
(digitalRead(MODO)== LOW){     

}     

}      

//Busca o valor da contagem na matriz que decodifica os 7 segmentos e envia para o display
   

PORTD = tabela_7_seg[contagem];   

delay
(50); 

}

Exibições: 1305

Responder esta

Respostas a este tópico

Oi A, bom dia.

Segue o code modificado.

http://pastebin.com/K1qJ1XwZ

Rui

Rui vi as mudanças feitas acho que agora vai dar certo, porem vi que vc colocou o define apaga no pino 14, uso arduino uno e nao tenho essa saida, posso mudar para qual pino, pode ser no Tx1 ou Rx0! Desde de ja agradeço pela ajuda

Rui caso quando um dos jogadores chegasse no 9º ponto  e marcasse mais um ponto pressionaria o botão mais uma vez zerando os dois display, para uma nova partida isso dispensaria o botao "apagar", mas teria que acontecer quando qualquer dos jogadores alcançasse o decimo ponto primeiro, que seria 9 + 1 pressionadas no botão.

Rui o video ja esta acessivel se der para dar uma olhada no que esta ocorrendo.

http://youtu.be/bf0rvMao0uk

 

Rui acabei de testar o código é o seguinte o Contar1 Pino 11 agora nao esta funcionando o Contar2 que não estava funcionando antes agora ta blz e o Botão apaga também esta blz tudo funcionando certinho somente o contar1 que não sai do zero, já teste individual no pino 12 funciona os dois display conferi ligação tudo OK conferi seu código mas não consegui achar erro, já troquei o pino do 11 para outros e mesmo assim não funciona o que sera agora! 

Bom dia Rui, Tud Bem!

Olha o que acabei de achar 

http://handsome.is/creating-an-arduino-powered-foosball-scoreboard/

as vezes a biblioteca usada pode servir!

Ele esta usando arduino mega e display de 7 seg. duplo, daria para modificar usar arduino uno e display de 7 seg. 1x para cada lado, não é?

Esse parece ser mais fácil tenho um tablet parado aqui mesmo

http://handsome.is/smart-foosball-is-keeping-score/

Oi A, bom dia.

Conforme prometi:

http://pastebin.com/4Rz0TJmt

Sem biblioteca

Rui

Bom dia Rui baixando para testar hj, muito obrigado, vc viu coloquei alguns links hj interessante o modo que o cara fez!

Simulei no site 123D circutis funcionou perfeito, Rui ao inves de colocar resistores em cada segmento poderia colocar um de 1K só no comum de cada display?

Oi A,

pode sim. pode ser até uns 330 Ohms.

5V/330Ohms = +- 15mA.

Rui

 

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço