Guia CNC Brasil - Tudo sobre CNC, Router, Laser, Torno e 3D Print
ELETRÔNICA / ELÉTRICA => Eletrônica Básica => Microcontroladores => Tópico iniciado por: Meca2010 em 23 de Julho de 2010, 23:43
-
Boa noite a todos!
estou fazendo um projeto e preciso escrever no meu LCD 16X2 mas eu fiz a programação através do MikroC e nao escreve, o LCD somente pisca o Backlight bem fraco e depois apaga não faz mais nada...Alguem saberia me dizer se o mais provavel seria um erro de programação ou de ligação elétrica?
Se alguem tbm souber Linguagem C pelo MikroC e puder me dizer se tem algum erro na minha programação, por favor memande o email
Obrigado agradeço desde já
-
Ivan
Com tão poucas informações fica dificil te ajudar
-
Bom, mostrar o programa aki e explica-lo
int t;
void main ()
{
trisa=0b11111111;
trisb=0b00000000;
trisc=0b11100001;
adcon1=0b00001110;
lcd_config(&portb,4,5,6,3,2,1,0); //configuração do LCD
lcd_cmd (lcd_clear);
lcd_cmd (lcd_cursor_off);
portc.f1=0; portc.f2=0; portc.f3=0; portc.f4=0;
while(1)
{
if(porta.f1==0) //entrada 01 - sensor 1
{
lcd_out(1,2,"Presenca na area de S1");
portc.f1=1; //aciona saida 01
while(porta.f1==0)
{
t++;
delay_ms(1000); //delay
if(t==10) //contador de delay = 10 (10seg)
{
portc.f2=1; //aciona saida 02
delay_ms(10000); //delay
portc.f2=0; //desaciona saida 02
}}
}
else{
t=0; //zera t
portc.f1=0;} //desacina saida 01
if(porta.f2==0) //entrada 02 - sensor 02
{
lcd_out(2,2,"Presenca na area de S2");
portc.f3=1; //aciona saida 03
}
else{
portc.f3=0;} //desaciona saida 03
}
}
Este seria meu projeto, o projeto de um alarme e quando as entradas ali sao acionadas mostram as duas mensagens..É uma programação em C através do MiKroC e meu Lcd nao quer escrever com estas configurações atuais, segue abaixo a imagem de onde esta localizado o display no meu Pic
é o 16F876A
(http://s3.postimage.org/1Gdgr.jpg) (http://www.postimage.org/image.php?v=Pq1Gdgr)
Obrigado desde já
-
Meca
como lhe falei no msn, as informações são confusas, mostre-nos aquele esquema para ligar o lcd na placa com o conector de 10 vias, a marca do seu LCD e acredito que seja possível ajudar ...
só mais uma coisa ... compile o programa q vc fez e deixe o .hex para nós ... vou tentar simular no proteus e ver se o programa funciona, se funcionar então é certeza que o teu hardware que está com problemas de montagem.
abrax!
-
Obrigado por tentar ajudar tbm Hidden vou postar aki oq vc me pediu para qm puder tentar me ajudar.
Segue abaixo a imagem da ligação elétrica do LCD e o arquivo .Hex
(http://s1.postimage.org/Nqdyi.jpg) (http://www.postimage.org/image.php?v=gxNqdyi)
-
O problema pode ser o ajuste do contraste, o correto seria ligar o pino 3 do LCD em um trimpot configurado como divisor de tensão.
O contraste mal ajustado faz com que o display pareça estar apagado.
-
Por que este resistor de 100 R no pino um do lcd ?
-
Não entendi o primeiro esqueminha
pinagem do lcd 16 x 2
1 = gnd
2 = vcc
3 = contraste
4 = r/s
5 = r/w
6 = enable
7 = d0
8 = d1
9 = d2
10 = d3
11 = d4
12 = d5
13 = d6
14 = d7
15 = anodo
16 = catodo
-
Hehe, entao eu comprei o Lcd e a placa e veio este esquema com o lcd , diz que é a configuração do cabo flat do LCD, ams ateh o momento não consegui fazer funcionar
-
... Se alguem tbm souber Linguagem C pelo MikroC e puder me dizer se tem algum erro na minha programação, por favor memande o email
Obrigado agradeço desde já
Boa noite amigos.
Ivan, qual a versão do compilador que utilizou para escrever o código?
A parte de inicialização do LCD, você copiou de algum lugar ou configurou na mão?
Precisamos saber em quais pinos do pic aquele conector chamado ""LCD"" está ligado.
O resistor de 100R limita a corrente do backlight pelo que vi. Isso atenua bastante o brilho.
Como o Balen disse, o correto seria um potenciometro de 10K à 20Kohm como divisor de tensão no pino do contraste. Para um contraste bom, a tensão neste pino é 1v aproximadamente.
Ivan, respondendo corretamente às perguntas acima, conseguiremos a solução para o problema.
Tente traçar no proteus como tudo está ligado e nos envie.
Abraço.
-
hehe, depois de muitas tentativas com ajuda dos amigos aki do forum acabei comprando outro LCD e dando certo no final...
Msmo sendo problema no LCD agradeço a todos que tentaram ajudar de alguma forma, em especial agradeço ao Hidden, Fabio e ao Balen e claro todos que tentaram ajudar
Obrigado contiuem sempre assim.