Ir ao conteúdo

Falhas ao ligar circuito com pic16f628a


Ir à solução Resolvido por New Nerd,

Posts recomendados

Postado

Boa tarde!

 

Estou tentando fazer funcionar um PIC-16F628A, apenas como experiência, fiz uma montagem bem básica na Protoboard e gravei um código simples somente para fazer piscar um LED e para alimentação utilizei a fonte que tinha em mãos; liguei nos 5V de uma Fonte ATX.

 

O problema é que quando eu ligo o circuito nada acontece, até que eu "aterre" a carcaça da fonte com a mão... :confused:

 

Somente quando coloco a mão sobre a carcaça da fonte o LED começa a piscar, por quê está ocorrendo isso se a saída da fonte apresenta 5V normalmente???

 

Obs: A instalação da minha casa é bem antiga e não possui aterramento, então a fonte fica sem o fio terra, imaginei que isso poderia ser a causa do problema...

 

Alguma maneira de contornar o problema? Alguma sugestão?

 

Obrigado.

 

Postado

@New Nerd ,

 

Confirme se voce colocou o capacitor e o resistor no pino de Reset do seu Pic.

 

Confirme se você colocou o cristal e os dois capacitores do oscilador.

 

E coloque um pequeno capacitor cerâmico de 100 nF entre o pino de +5V e o pino de GND do Pic. De preferência o mais perto possivel fisicamente desses dois terminais.

 

Paulo

  • Curtir 1
Postado

Dei uma conferida aqui, adicionei o capacitor de 100nF e parece que a montagem está OK mas continua só piscando quando coloco a mão ou na carcaça, ou no positivo ou negativo dos 5V :exorcize:

 

Obs: Não estou utilizando cristal, estou utilizando oscilador interno. E mais uma coisa, esta é a segunda fonte que testo.

  • Membro VIP
Postado

-... e o esquema e o programa.

-coloque todos os TRISx em 0

-Tente com outra fonte p.ex. um carregador de celular

-etc (este resolve)

  • Curtir 1
Postado

Depois de eu dar uma mexida na montagem o circuito funcionou um pouco melhor mas continua estranho.

Gravei um vídeo para mostrar a bizarrice que está ocorrendo, agora o led pisca normalmente mas quando aproximo minha mão do circuito ele para:exorcize::

 

E aqui a foto da montagem com mais detalhe:

O.O.png

Postado

@New Nerd ,

 

É que na sua montagem acabaram se formando vários "loops" de terra e de VCC.

 

voce está usando ambas as barras de alimentação, tanto o par à esquerda, como o par à direita, e interligando os dois conjuntos de barras por dois fios marrons compridos que estão em baixo. Esses fios formam indutâncias e resistências que interferem no circuito de GND do Pic, porque voce ligou ele na barra à direita !

 

Faça as seguintes mudanças :

 

1 - não use mais o par de barras à direita. Ligue o pino 5 do PIC ao negativo na barra à esquerda !

 

2 - coloque um pequeno capacitor eletrolítico, algo tipo 47 uF/ 16 volts, ligado diretamente na barra de alimentação à esquerda, de preferência perto de onde saem os fios de alimentação do Pic.

 

Deve resolver, ok ?

 

Paulo

  • Curtir 1
Postado

@aphawk fiz o que você recomendou e realmente parece que ficou mais estável. Obrigado pelas dicas, são uns pequenos detalhes que fazem a diferença...

 

Será que se eu utilizar um cristal ao invés de utilizar o oscilador interno funcionaria melhor?

Postado

@New Nerd ,

 

Não, só iria piorar as coisas.

 

Existem várias técnicas para se montar em protoboard. Evitar fios mais compridos do que o necessário, colocar filtragem em vários locais, filtragem da fonte de alimentação, tudo isso você vai aprendendo no dia a dia.

 

Mas o que importa é que você conseguiu fazer funcionar !

 

Paulo

  • Curtir 1
Postado

Depois de muito fuçar descobri que havia algum problema no código, troquei de compilador e mexi no código aí funcionou perfeitamente e sem bizarrice.

 

Muito obrigado pelas dicas!

  • Curtir 1
  • Membro VIP
Postado

...já é alguma coisa... Tem gente que não retorna e num tá nem aí ... literalmente. Pra tirar um 10 sugiro que descrevas tua exata solução com detalhes pois no futuro algum incauto navegante pode ter teu mesmo problema o que torna tua informação preciosa.

Afinal este é o conceito, princípios e o preço (barato) que cobram os foruns. Mas se não te sentires a vontade com isso, não te preocupes. Apenas reflita... já é alguma coisa...

boa sorte

  • Curtir 2
  • Solução
Postado

O código que havia feito inicialmente acabei apagando e infelizmente não terei como mostrá-lo.

Por fim o que fiz foi passar a utilizar o mikroC, refiz o código do zero e setei adequadamente através do Edit Project do mikroC a opção para oscilador interno, também desabilitei o master clear só pra garantir e setei a opção de frequência pra 4Mhz...

O código (pisca led) que funcionou:

void main() {
    TRISB = 0;
    PORTB = 0;
    
    while(1)
    {
     PORTB = 0x01;
     delay_ms(300);
     PORTB = 0x0;
     delay_ms(300);
    }
}

Depois de compilar testei no Proteus, estava OK então gravei o PIC e fiz o teste com a montagem mais simples possível, liguei o 5V em VDD e VSS, coloquei um capacitor cerâmico de 100nF entre VDD e VSS, liguei um resistor de 220R de RB0 até o LED e o LED no GND, aí funcionou perfeitamente e sem sacanagem.

  • Curtir 1
  • Membro VIP
Postado

Viu só? Nem doeu.

Sabia que  phd em pisca led? Só sei fazer isso e mais naaaadddaaa. Como agradecimento ao teu retorno vou zipar o seu código reduzindo-o à metade mantendo a funcionalidade. Veja isso...

while(1)
    {
     PORTB ^= 0x01;
     delay_ms(300);
    }

É a lesma lerda.

 

Como dica final devo te orientar a nunca, jamais, nem a pau, usar led verde nos projetos. Por favor não me pergunte o porquê.

Sucessos!

  • Curtir 1
Postado
2 horas atrás, Isadora Ferraz disse:

Como dica final devo te orientar a nunca, jamais, nem a pau, usar led verde nos projetos. Por favor não me pergunte o porquê.

 

Atendendo a pedido, não vou perguntar ... mas fiquei curioso e procurei um motivo dentro do ramo de Eletrônica, e não achei.... antes de eu perguntar pros universitários ( posso perguntar pra outros, não é ??? ), pode dar alguma dica se é motivo esotérico, filosófico, ótico ou supersticioso   ???????

 

Paulo

Postado
2 horas atrás, aphawk disse:

 

Atendendo a pedido, não vou perguntar ... mas fiquei curioso e procurei um motivo dentro do ramo de Eletrônica, e não achei.... antes de eu perguntar pros universitários ( posso perguntar pra outros, não é ??? ), pode dar alguma dica se é motivo esotérico, filosófico, ótico ou supersticioso   ???????

 

Paulo

Daltonismo?

  • Membro VIP
Postado
2 horas atrás, aphawk disse:

não vou perguntar ...

e eu não vou te responder mas uma coisa é certa: a maioria dos nossos amigos leitores sabe o motivo (sim é este mesmo caros amigos!). Contente-se em fazer parte da minoria. kk

 

@Bcpetronzionão apague antes do amigo paulão cair em si. Ou deixe como exemplo pra que vejam como não se deve comportar. (eu e o paulão somos casos perdidos a parte. kk)

adicionado 8 minutos depois

é paulão. Pelo menos não está sozinho. A minoria está aumentando... @Nao Sei = +1 kk

  • Curtir 2
Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...