Ir ao conteúdo
  • Cadastre-se
Bruno Régis Cardozo

PIC Queda de tensão na leitura AD no PIC 12F683

Posts recomendados

Boa tarde a todos, estou com esse código de programação abaixo, porém a dúvida, estou usando pilhas, se deixo a leitura só em um sensor no caso AN0 ele não consome quase nada de pilha, agora se coloco o AN1 cai praticamento um volt por minuto, já fiz o teste trocando as portas continua sempre a mesma coisa, alguém pode me ajudar ou ter alguma ideia do que seja???

 

leitura do AD do PIC:  if (analogico-5 > pilha/2 || analogico+5 < pilha/2)

 

 

{inicio:

    
{
setup_adc_ports(sAN0|sAN1);
setup_adc(ADC_CLOCK_INTERNAL);
{

while(TRUE)

 

{
     set_adc_channel(0); 
     delay_us(15); 
     analogico = read_adc();
     delay_ms(100); 

 

     set_adc_channel(1); 
     delay_us(15); 
     pilha = read_adc();
     delay_ms(100);

}

 

if (analogico-5 > pilha/2 || analogico+5 < pilha/2)
goto alarme1;

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
Em 08/11/2019 às 08:42, Isadora Ferraz disse:

Publique esquema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

segue abaixo:

Sem título.png

adicionado 1 minuto depois

o que esta diferente ai, é que esta na an2 e na programação esta na an1, mudei para fazer teste...

adicionado 7 minutos depois

o que esta diferente ai, é que esta na an2 e na programação esta na an1, mudei para fazer teste...

 

explicar melhor, tenho duas leituras no an1 e an0, quando a lógica esta ok não acontece nada, porém se ha alguma variação de tensão, vai para uma outra parte da programação que é um alarme...

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não ligue led direto na saída do mc. Use um resistor 1K em série por favor.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem gente que confunde 360 com 36 ou 3.6. Algo me diz que não seu caso mas...Melhor você publicar fotos e/ou o esquema completo e real.

 

Também não há relação direta entre sw (programado corretamente) e consumo excessivo. A não ser bug do compilador. Algo como ele (talvez você) pode estar "esquecendo" de setar a porta como entrada. Ou até mesmo sua misteriosa função pode estar fazendo retornar a saída.

Sua pilha pode estar fraca, etc...

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aleluia descobri, o problema é que a porta estava configurada como input low, ai eu colocava ela em nível lógico 0, e no mesmo momento ela recebia 2,5 volts...gastando pilha...

 

{
output_low(pin_a5); OUTPUT
output_low(pin_a4); OUTPUT
output_low(pin_a1); OUTPUT

//output_low(pin_a2);  INPUT          esta porta esta como entrada analogica e 
//                                            colocando ela como saída low consome muita pilha......

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

... e o mais legal, descobriu sozinho...

18 horas atrás, Isadora Ferraz disse:

ele (talvez você) pode estar "esquecendo" de setar a porta como entrada

...Parabéns

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

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