Dúvida Display 7 Segmentos Anodo Comum

Circuitos eletrônicos, topologias, diagramas elétricos, etc...

Moderadores: 51, Renie, gpenga

Mensagempor renatokodaira » 23 Ago 2008 07:58

Duas coisas:

1) O 7805 pra funcionar direito precisa de pelo menos 7V na entrada. Sem isso ele nao vai te fornecer os 5V (por isso voce obteve 4,85V na saida) e pode ficar instavel.

2) Como o Xultz disse, se voce ligar os emissores dos BC558 em uma tensao acima dos 5V (nos 6V como voce fez), qualquer tensao que voce jogar na base vinda da porta do PIC NAO VAI DESLIGAR NUNCA o transistor, pois a tensao Vbe sempre vai ficar acima de 0,7V, entao nao vai haver multiplexaçao dos displays (por isso que os mesmos segmentos ficam acesos em todos os displays). Ligue os emissores dos PNP ao 5V.
renatokodaira
Byte
 
Mensagens: 402
Registrado em: 11 Out 2006 15:15

Mensagempor cmte » 23 Ago 2008 13:40

Renato,

Quanto a alimentacao, ja estou usando 7,5v.

Sobre a tensao nos emissores, agora, com seu post, eh que realmente compreendi como o transistor funciona como chave. Infelizmente meu desktop deu crash e nao poderei alterar nada no programa nas proximas horas, mas com certeza a noite poderei testar novamente. Digo isso porque o relogio esta com um programa de teste, que simplesmente deveria mostrar um valor fixo nos displays, alternando o ON / OFF dos BC558. O que esta acontecendo eh que os 4 displays estao acendendo e apagando juntos, conforme o tempo que coloquei no programa. Se eles chegam a apagar, nao eh sinal que os transistores estao desligando?

Como observacao, medi a tensao entre os catodos dos displays e e as bases dos BC558, e deu o seguinte:

Displays ACESOS: 0,98v
Dsplays APAGADOS: 0,00v e por vezes aparecem pequenos valores negativos.

Obrigado novamente,

Yuri.
cmte
Byte
 
Mensagens: 141
Registrado em: 29 Nov 2006 12:53

Mensagempor renatokodaira » 23 Ago 2008 17:06

Sobre a tensao nos emissores, agora, com seu post, eh que realmente compreendi como o transistor funciona como chave. Infelizmente meu desktop deu crash e nao poderei alterar nada no programa nas proximas horas, mas com certeza a noite poderei testar novamente. Digo isso porque o relogio esta com um programa de teste, que simplesmente deveria mostrar um valor fixo nos displays, alternando o ON / OFF dos BC558. O que esta acontecendo eh que os 4 displays estao acendendo e apagando juntos, conforme o tempo que coloquei no programa. Se eles chegam a apagar, nao eh sinal que os transistores estao desligando?

Como observacao, medi a tensao entre os catodos dos displays e e as bases dos BC558, e deu o seguinte:

Displays ACESOS: 0,98v
Dsplays APAGADOS: 0,00v e por vezes aparecem pequenos valores negativos.


Oi Yuri, lembre-se que os segmentos dos displays podem ficar apagados nao somente pelos transistores estarem desligados, mas tambem porque nao vem corrente do ULN (no seu caso jogando nivel 0 nas entradas do ULN). Precisa checar no seu programa se em algum momento nao exista essa hipotese. As tensoes que voce precisa medir sao entre a BASE do BC558 e o emissor do mesmo BC558 (no caso ligado em 7,5V - mas que devem ser ligados no 5V !!!). De novo: se voce liga o emissor do BC558 nos 7,5V, pra desligar, a tensao de base dele precisa ser de pelo menos 6,8V (que voce nunca vai ter na saida do PIC, ja que ele é alimentado por 5V).

Uma outra coisa que pode estar acontecendo é que voce muda o nivel das portas que chaveiam os BC558s sem colocar uma instruçao NOP entre elas. Isso ocorre porque o PIC tem um lance de read-modify-write que faz com que nao seja alterada uma saida da porta se voce alterar outra saida da mesma porta logo em seguida sem colocar uma instruçao no meio das instruçoes de modificaçao de bits (BCF e BSF - mesmo que voce nao esteja programando em assembly, o compilador vai usar essas instruçoes).
renatokodaira
Byte
 
Mensagens: 402
Registrado em: 11 Out 2006 15:15

Mensagempor cmte » 01 Set 2008 17:23

Gente,

Obrigado mais uma vez pelo interesse em me ajudar.
Dei uma parada porque fiz besteira ao tentar fazer um upgrade de CPU. Coloquei um processador no soquete do computador achando que era outro. Depois disso, a placa-mãe não reconhecia mais nem o antigo processador. Aí já viu... Tive que fazer backup de tudo, instalar o ruindows novamente e a pior parte: intalar todos os programas.

Renato, liguei os BC558 em 5,0v e não é que funcionou? :D

Interessante é que eu já havia feito isso, mas não tinha funcionado.

Mas funcionou em parte: Eu consegui alterar os valores do display conforme meu programa (ajustar as horas e minutos), mas depois disso, nada acontecia, pois parece-me que o DS1302 não estava oscilando. Fui então tentar trocá-lo e o que aconteceu? Tudo deixou de funcionar.
Cheguei a uma conclusão: Jogar tudo fora e começar do zero é o melhor.

Acho que o problema está nas pequenas ilhas que fiz no desenho da placa e no uso de soquetes convencionais (não são aqueles torneados), que dificultam a soldagem. Apesar de eu ter revisado tudo com atenção e com lupa, estou achando que tem muita solda-fria na miha placa. Só pode ser isso.

Ah, tem um tempo de 1ms entre o OFF de um BC558 e o ON de outro BC558.

De qualquer maneira, o importante é que os displays e a multiplexação funcionaram. Ficaram com um brilho legal e sem flick. Eu fui ajustando os tempos de ON e OFF dos BC558 até chegar a um resultado legal.

Mas depois disso, me parece que usar displays de catodo comum é menos penoso que anodo comum. Estou pensando em mudar, hehehe.

Vou mudar o diagrama, o desenho da placa e refazer o relógio. Então postarei os resultados.

Novamente, muito obrigado a todos. Sei que ainda tenho muito a aprender, mas aos pouquinhos vamos indo.

Abraços,

Yuri.
cmte
Byte
 
Mensagens: 141
Registrado em: 29 Nov 2006 12:53

Anterior

Voltar para Circuitos Diversos

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

cron

x