Autor Tópico: Problema com meu LCD 16X2  (Lida 6401 vezes)

Description:

0 Membros e 1 Visitante estão vendo este tópico.

Meca2010

  • Visitante
Problema com meu LCD 16X2
« Online: 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á

Offline jorge

  • Fuso
  • **
  • Posts: 218
  • Sexo: Masculino
  • Cidade - UF: são paulo - sp
Re: Problema com meu LCD 16X2
« Resposta #1 Online: 24 de Julho de 2010, 01:40 »
Ivan

Com tão poucas informações fica dificil te ajudar

Meca2010

  • Visitante
Re: Problema com meu LCD 16X2
« Resposta #2 Online: 24 de Julho de 2010, 09:55 »
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



Obrigado desde já

Offline Blackmore

  • CNCMASTER
  • ******
  • Posts: 1568
  • Sexo: Masculino
  • Profissão: Projetista Mecânico/Automação
Re: Problema com meu LCD 16X2
« Resposta #3 Online: 24 de Julho de 2010, 11:04 »
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!

Meca2010

  • Visitante
Re: Problema com meu LCD 16X2
« Resposta #4 Online: 24 de Julho de 2010, 11:48 »
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




Balen

  • Visitante
Re: Problema com meu LCD 16X2
« Resposta #5 Online: 24 de Julho de 2010, 12:03 »
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.

Offline jorge

  • Fuso
  • **
  • Posts: 218
  • Sexo: Masculino
  • Cidade - UF: são paulo - sp
Re: Problema com meu LCD 16X2
« Resposta #6 Online: 24 de Julho de 2010, 13:54 »
Por que este resistor de 100 R no pino um do lcd ?

Offline jorge

  • Fuso
  • **
  • Posts: 218
  • Sexo: Masculino
  • Cidade - UF: são paulo - sp
Re: Problema com meu LCD 16X2
« Resposta #7 Online: 24 de Julho de 2010, 14:04 »
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

Meca2010

  • Visitante
Re: Problema com meu LCD 16X2
« Resposta #8 Online: 24 de Julho de 2010, 15:42 »
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

Offline FB

  • "... Potência não é nada sem controle!"
  • Novato
  • *
  • Posts: 15
  • Sexo: Masculino
Re: Problema com meu LCD 16X2
« Resposta #9 Online: 26 de Julho de 2010, 19:44 »
... 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.
« Última modificação: 26 de Julho de 2010, 21:09 por FB »

Meca2010

  • Visitante
Re: Problema com meu LCD 16X2
« Resposta #10 Online: 22 de Agosto de 2010, 12:29 »
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.

 

/** * */