Ir ao conteúdo

Projeto voltímetro digital com PIC 16f877 e LCD


vitormetallica

Posts recomendados

Postado
Isso mesmo.

Ligue todos os terras juntos.

É o ponto em comum. Talvez esse pode ser o erro.

Veja o circuito que postei lá na 1ª página:

smd5A.png

Apenas 1 terra em comum. Inclusive da alimentação.

Só falta ali o cristal e tal.. Pois o circuito é capado. só serve para simular.

O resto necessário você tem no circuito que você postou.

Falou

Já testei e funcionou legal!!! :lol::lol:

Os terras são mesmo juntos.

Agora vou dizer o porque desse esquema. Vou fazer uns carregadores de baterias estacionárias para uma empresa aqui que trabalha com Internet. vai ser para microtiks. Já fiz alguns para eles, mas esses vão alongar a vida das baterias. Faço uma fonte de 13,8 Volts para a bateria, e ligo esse Pic na bateria com um optoacoplador e depois dele um transistor e um relê. Assim que a tensão chegar aos 13,8 o pic aciona o opto que aciona o relê e desliga o carregamento, os microtiks vão puxar a carga da bateria até 11V, assim o PIC detecta de novo a carga da bateira em 11V e torna acionar o relê. A bateria durará mais tempo se a carga dela estiver sendo consumida. E os microtiks funcionam de 10V até 28V então não tem risco.:lol:

A sim, tb fiz um circuito para: Se a energia faltar e a bateria cair até 10,3V outro relê é acionado e a alimentação dos microtiks é cancelada, e de 3 em 3 minutos um 555 fica checando se chegou energia da rede novamente, se SIM, o relê fica desarmado, se NÃO, torna arma e conta mais 3 minutos. Agora você pergunta pra quê essa gambiarra. É que essas torres de microtiks ficam em lugares ermos. E se a tensão da bateria cair menos de 10V os microtiks travam, e mesmo se a energia volta tem que alguém ir lá para destrava-los. Isso tb impede que a bateria escoe toda a sua carga. E o sistema do PIC e esse que eu fiz vão consumir menos de 300mA. numa bateria de 120A fica várias semanas funcionando de boa....

Obrigado pela ajuda, precisando, estamos ai...

Postado

Beleza MateusLPS! Mas eu fiz um programa para esse mesmo voltímetro de 5Vcc para o Microc! Ainda vou testá-lo, mas o que não entendo é que meu programa funciona perfeitamente no Proteus então também teria que funcionar na protoboard!

Aqui está o código no Microc que fiz, se alguém que use esse compilador puder me ajudar dizendo se esse código para um voltímetro de 5Vcc está correto ou não, eu agradeço! valeu

sbit LCD_RS at RB4_bit;

sbit LCD_EN at RB5_bit;

sbit LCD_D4 at RB0_bit;

sbit LCD_D5 at RB1_bit;

sbit LCD_D6 at RB2_bit;

sbit LCD_D7 at RB3_bit;

sbit LCD_RS_Direction at TRISB4_bit;

sbit LCD_EN_Direction at TRISB5_bit;

sbit LCD_D4_Direction at TRISB0_bit;

sbit LCD_D5_Direction at TRISB1_bit;

sbit LCD_D6_Direction at TRISB2_bit;

sbit LCD_D7_Direction at TRISB3_bit;

char T[6];

float tensão;

void main() {

ADCON1 = 0x82; //vdd comparacao na entrada analogica

TRISA = 0xFF; //entrada porta A

TRISB=0b00000000; PORTB=0;

TRISD=0b00000000; PORTD=0;

Lcd_Init(); // Initialize LCD

Lcd_Cmd(_LCD_CLEAR); // Clear display

Lcd_Cmd(_LCD_CURSOR_OFF); // Cursor off

Lcd_Out(1,1,"Programa tensão");

delay_ms(500);

Lcd_Cmd(_LCD_CURSOR_OFF);

Lcd_Cmd(_LCD_CLEAR); // Clear display

PORTD.F0=1;

delay_ms(500);

LCD_Out(1,1,"Voltimetro");

LCD_Out(2,1,"T= mV");

PORTD.F0=0;

while (1)

{

Delay_ms(250);

tensão=adc_read(0);

tensão=(tensão*(0.004888)*1000);// transformar para mV

WordToStr(tensão,T);

LCD_Out(2,3,T);

delay_ms(250);

}

}

Postado

Use uma pulseira anti-estática, ou então fique descalço com o pé no chão.... se puder.

Tome cuidado para não inverter a alimentação do PIC.

Acho q só isso mesmo. Nunca queimei PIC por estática... só por burrice mesmo...uhauhauhahu

Falou

Postado

Pessoal esse programa para o carregador de baterias,ficou muito bom,estou reescrevendo esse programa,incluindo um cooler,para refrigerar a ponte de diodos,se me permitem.,uma boa ideia é mudar para ligar com 12.0 volts e desligar com 14.0 volts o pino que controla a carga ok,visto que uma bateria esta em bom estado de carga a partir dos 12 volts, quando esta em 11volts a bateria ja se encontra com nivel baixo de carga,por isso deve se ligar aos 12.0volts o pino de controle ok,assim que terminar o codigo posto aqui se me permitem ok....

Postado

Matheus,foi você que escreveu esse programa? Muito bom, ja escrevi o novo programa e ja simulei no proteus,inclui um cooler usei o portb de rbo a rb5 para os controles,o programa ficou com refrigeração enquanto carrega,comunicação com dois leds um de carrregando e outro carregado,comunicação no lcd, informando a operação atual,como carregando e ou carregada,um led no painel para a mensagem error, um buzzer para alarme de sobre carga,tudo com mensagem também no display lcd, vou fazer o pcb e montar na pratica,inclui um lcd 20x4 assim temos uma linha inicial para mensagem personalizada.

Não sei ainda como postar o codigo nem as imagens,mas termino tudo e devidamente testado te envio por e-mail compactado ai é só você montar e pronto, mas antes te péço permissão para ajudar na melhoria do codigo do carregador,sou iniciante em programação também mas com a ajuda do pessoal aqui eu to conseguindo obrigado todos os companheiro do forum valeu mesmo.

Matheus me envia teu e-mail beleza ai te envio os arquivos semana q vem até o final eu imagino esta pronto e tbem te envio as fotos do aparelho ok.

estou terminando também um computador de bordo , mini computador não é completo mas trabalha muito no carro ,monitora portas ,carga da bateria, tensão,farol etc, se você quiser postar sem poblemas se você quiser me ajudar nesse computador eu agradeço,ja esta bom , mas você sabe mais que eu em linguagem de programação,creio que poderá talvez até acrescentar mais função no computador.

Abraços a todos nos escrevemos adiante.

Postado

Pessoal quanto ao capacitor de 10uF que devo colocar na alimentação do PIC, eu coloquei um entre o pino 11(Vcc) e o pino 12(Vss), é isso mesmo? Ou eu também preciso colocar outro entre os pinos 31 e 32?valeu

Postado

você fez certo.... entre o VDD e o VSS.

Querendo ou não os pinos 31 e 32 fazem parte do mesmo ciruito pois você alimenta eles da mema fonte.. então o capacitor já está em todos.

Falou

  • 3 semanas depois...
Postado

Pessoal estou medindo a tensão nas portas de saída do PIC 16F877A usado no circuito do voltimetro e está dando 5.2V porém no pino 34 que é o que eu uso pra acionar um LED está dando praticamente 0. Como faço pra acabar com essas quedas de tensão ou então de que forma eu aumento a tensão de forma que a mesma seja suficiente pra acender o led? Desde já obrigado.

Postado

Explique melhor.

você está lendo a tensão e aparece 5.2V no LCD?

você ligou o LED no RB1 (pino 34) e quando você colcoa o output_high dá quase 0V nesse pino?

Já colocou um capacitor de uns 10~50uF bem perto da alimantação do PIC?

Falou

Postado

Não a tensão de 5.2V é mostrada no voltímetro porque o LCD só até acendendo o backlight mas não tá mostrando a leitura de tensão. Quanto ao LED ele está no pino 34 ligado a um resistor e quando eu uso o voltímetro pra medir a tensão que chega nele tá dando praticamente 0V, uma tensão da ordem de mV.

Já coloquei um capacitor de 10uF próximo da alimentação do PIC, já não sei mais o que fazer porque já segui todas as informações desse fórum em relação a detalhes e mesmo assim nada de funcionar. A não ser que falte eu fazer algo. Desde já obrigado.

Postado

Aí segue a imagem do circuito que estou usando para o voltimetro!valeu

MateusLPS meu projeto funcionou hoje a tarde, finalmente, porém usei um outro código que fiz no Microc, pois o código no PICC só tá funcionando no Proteus mas não na protoboard. Mas agora tenho que fazer com que este mesmo circuito mostre no LCD valores de corrente de 4 a 20mA. Você tem alguma ideia de como posso fazer isso?

À princípio pensei em usar um resistor de 250 Ohms, pois multiplicando 4 e 20mA por 250 eu tenho respectivamente 1 e 5Vcc, mas como colocar isso em linguagem de código? Desde já obrigado.

post-852231-13884959831871_thumb.jpg

Postado
Desculpe a demora.

Mas seu circuito está equivocado.

Retire aquele resistor de 5K e deixe apenas o potenciômetro.

Falou

OK, mas é estranho porque está funcionando com o resistor de 5k.

Mas agora tenho que fazer com que este mesmo circuito mostre no LCD valores de corrente de 4 a 20mA. Você tem alguma ideia de como posso fazer isso?

À princípio pensei em usar um resistor de 250 Ohms, pois multiplicando 4 e 20mA por 250 eu tenho respectivamente 1 e 5Vcc, mas como colocar isso em linguagem de código? Me ajuda aí se puder valeu

Postado

Pessoal alguém sabe me dizer se é possível eu fazer o ajuste no contraste do LCD através do código em linguagem C, sem precisar colocar um potenciômetro no pino 3 do LCD?

Caso seja possível como posso fazer isso? Desde já obrigado.

Postado

Beleza MateusLPS, mas eu coloquei o potenciômetro e não apareceu nada, tipo o LCD acendeu o backlight mas não mostrou nada! Eu liguei o fio do meio que é o sinal no pino 3 do LCD e os outro dois fios do Potenciômetro liguei um no terra e um no +5Vcc, segui o esquema do circuito, certo?

Mas quando eu tirei o potenciômetro e coloquei novamente o fio do pino 3 do LCD no terra aí deu certo, o LCD carregou o programa e mostrou a variação de tensão! Não entendi porque com o potenciômetro não funcionou!

Uma coisa que percebi é que fica dando uma queda de tensão, ou seja, o valor de tensão que é mostrado no LCD às vezes fica estável outra hora fica oscilando sem que eu faça a variação pelo potenciômetro, isso é normal ou tem como eliminar? Obrigado

Postado

Quando você colocou o potenciômetro, você chegou a girá-lo para os lados para ver se o LCD mostrava as letras?

Sobre a vartiação na medição, sua fonte de 5V é bem estável?

Por via das dúvidas, coloque um capacitor em paralelo com o potenciômetro para estabilizar a medição.

Falou

Arquivado

Este tópico foi arquivado e está fechado para 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...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!