Autor Tema: ayuda termómetro con lcd  (Leído 1265 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado nitro

  • PIC10
  • *
  • Mensajes: 5
ayuda termómetro con lcd
« en: 30 de Enero de 2014, 00:46:12 »
Hola amigos.
Tengo un problema con este proyecto que muestra la temperatura en un display lcd de 16x2, usando un pic 16f877 y un sensor lm35.
Como podrán apreciar el programa lee el conversor a/d, convierte el valor a temperatura en grados centígrados, y lo envía al display lcd.
He simulado el programa en proteus y funciona perfectamente.
Es por eso que lo implemente físicamente, pero no funciona como esperaba, ya que el valor que de temperatura que muestra el lcd varia constantemente siendo que la tensión que entrega el lm35 es muy estable. Por ejemplo en estos momentos el sensor arroja 277 milivoltios y en el lcd muestra 28,29,30 grados y va cambiando muy rápidamente, por lo que tuve que poner un delay de 500 milisegundos para que se alcance a leer.
He probado el programa con dos pic diferentes, cambie el cristal, y siempre ocurre lo mismo.
El programa es el siguiente:


#include <16f877a.h>
#device adc=10
#fuses xt, nowdt
#use delay (clock=4M)
#include <lcd.c>

void main ()
{
   INT16 q;
   FLOAT p;
   setup_adc_ports(AN0);
   setup_adc(ADC_CLOCK_INTERNAL);
   lcd_init();
   
   FOR (;;)
   {
      set_adc_channel(1);
      delay_us(20);
      q=read_adc();
      p=(5.0*q/1024.0)*100;
     
      lcd_gotoxy(1,1);
      printf(lcd_putc,"Temperatura %01.2fC",p);
     
      delay_ms(500);
     
      if(p>20){output_high(pin_b0);}
      else {output_low(pin_b0);}
   
   
   }
}

Desconectado soymoe

  • PIC18
  • ****
  • Mensajes: 456
    • El blog de Moe
Re: ayuda termómetro con lcd
« Respuesta #1 en: 30 de Enero de 2014, 09:15:52 »
Si bien el sensor LM35 se puede usar conectandolo directamente al pic, no se aconseja, porque la resolucion en mV/ªC es muy baja. Lo que te aconsejo es que amplifiques la señal del sensor con un operacional, para obtener un voltaje de salida del sensor de entre 0 y 5V para temperaturas de por ejemplo 0 a 125ªC. Tambien te aconsejo que pruebes poner un capacitor de por ejemplo 1uF en la salida del sensor.

Desconectado rivale

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1707
Re: ayuda termómetro con lcd
« Respuesta #2 en: 30 de Enero de 2014, 11:16:51 »
ademas de lo que te comenta soymoe veo que en tu código estas configurando coo analogico el an0 y cuando seleccionas el puerto escoges el 1, no son el mismo, tal vez por eso es tu error
"Nada es imposible, no si puedes imaginarlo"

Desconectado camhost1

  • PIC12
  • **
  • Mensajes: 51
Re: ayuda termómetro con lcd
« Respuesta #3 en: 30 de Enero de 2014, 11:42:46 »
Hola amigo, realice algo parecido a lo que tienes
« Última modificación: 31 de Enero de 2014, 15:34:37 por camhost1 »

Desconectado camhost1

  • PIC12
  • **
  • Mensajes: 51
Re: ayuda termómetro con lcd
« Respuesta #4 en: 30 de Enero de 2014, 11:45:48 »
Hola amigo, realice algo parecido aca, lo único diferente es que lo visualizo en display 7 seg. pero en teoría es lo mismo, espero te sirva. Saludos