Fala pessoal, bom dia beleza. Estou tendo algo engraçado no esquema do circuito que montei. Tenho dois multiplexadores CD4051 que ativam motores

Exibições: 360

Responder esta

Respostas a este tópico

Acho q foi cortada o meu problema na hr de mandar. 

Segue versão correta:

Estou tendo algo engraçado no esquema do circuito que montei. Tenho dois multiplexadores CD4051 que ativam bc548 e ativam relês que ligam motores 12v e contém diodos de flyback no relê. 

Porém só são acionados, qdo mando o comando pelo pic16f877a. 

O estranho é, se eu desligar todo o circuito e no dia seguinte ligar o circuito, por incrível que pareça o CD4051 ativa a porta e o motor funciona, porém não foi dado nenhum comando pelo PIC. 

Alguem saberia se devo colocar um diodo de flyback maior ou outra opção?

Oi E, boa tarde,

O CD4051 tem 1 pino de entrada, um pino de Inhibit e 3 pinos de endereçamento.

Na saída selecionada pelo endereçamento terá o valor igual ao da entrada.

O Inh precisa estar em LOW para ter saída.

Para entender sua dificuldade precisaria ver o seu code do PIC16F877.

Pode anexa-lo aqui como arquivo (não cole aqui na área de texto), ou no www.pastebin.com

Rui

Opa Rui bom dia. 

Então, o CD4051 funciona tranquilamente dentro do while do programa, o problema é que qdo eu desligo e ligo de novo, antes de chegar no while(true), ao entrar na função main ele já ativa a porta, parece q ela já começa com high e na inicialização não tenho nada de high para o comum do CD4051. O inhibit está como low, pois tenho 2 CD4051 e como uso uma porta NOT para ativa um multiplexador e depois ativar outro, controlo 16 saidas. 

É como se ficasse alguma tensão armazenada no CD4051, não sei. rsss (chutando)

Logo postarei o circuito. 

Obrigado pela ajuda.

Cuidado com estado inicial dos pinos do microcontrolador, quero dizer, antes que seu firmware configure os pinos do mcu, existe um estado Alto ou Baixo em todos os registradores e consequentemente no pinos, isso é definido pelo fabricante.

Interessante, vou dar uma olhada no datasheet do pic.

Setando o tris deles não resolveria?

Obrigado pela dica.

Oi E,

ao ligar o PIC, os TRIS são por "default" definido como entrada,

então ao iniciar o seu code, primeira coisa que deve fazer é definir as portas 

com os valores que quer para a porta , e em seguida, sim definir no TRIS,

os pinos como saídas.

Rui

E ai pessoal, bom dia. 

Então, consegui resolver o problema seguindo o conselho do nosso amigo Rui Viana. 

O que acontecia era que o comum do CD4051 estava iniciado como alto, e a sequencia estava ativada para 000 no A, B, C ele acabava ligando o motor. 

Seguindo o conselho do Rui, foi deixado primeiramente o comum do CD4051 em low antes da sequência A, B, C, assim garantindo que não fosse ativado o motor. 

Sucesso!.

Obrigado a todos.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço