Autor Tema: Problema en medidor de humedad con una variable.¿coma flotante?  (Leído 2793 veces)

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

Desconectado ferbarriga

  • PIC10
  • *
  • Mensajes: 6
Problema en medidor de humedad con una variable.¿coma flotante?
« en: 18 de Octubre de 2007, 20:10:28 »
Hola gente. El tema es el siguiente. Estoy haciendo un medidor de humedad relativa. con un sensor capacitivo HS1101, que en conjunto con un 555, me entregan una frecuencia que varia desde aprox 6033HZ para un 100% de humedad y 7300 para el 0%. Mi idea era, con la instruccion PULSIN obtener el ancho del pulso alto. Luego multiplicarlo x2 para obtener el periodo de la señal, luego elevarlo a la -1 y asi obtener la frec. Desarrollando el metodo de los minimos cuadrados hice que la recta de Hr en funcion de la frecuencia sea lineal.
El micro que uso es un 16f84.
Pero el programa no funciona y me parece que es por que no puedo trabajar con coma flotante. Me gustaria que le echen una mirada haber que les parece, y Gracias por adelantado!!! :-/ :-/


'MEDIDOR DE HUMEDAD RELATIVA

' SENSOR --------------> HS 1101(CAPACITIVO)
 

 
entrada  VAR PORTB.4   'Defino el port de entrada
ancho     VAR WORD       'Defino la variable que me guarda el tiempo del ancho del pulso
humedad  VAR WORD
frec     VAR WORD
periodo  VAR WORD

TRISB.4 = 1


Pause 200
LCDOut $fe,1,   "   Medidor de   "
LCDOut $fe,$c0, "humedad relativa"

Pause 1000

      
medicion:

   PulsIn entrada,1,ancho      'Mide el ancho del pulso alto y lo guarda en  ancho

         IF (ancho <> 0) Then
            periodo= ancho * 2
            frec= 1/periodo
            Pause 10
            humedad = 56509/100 - ((767/10000)* frec)   'Recta de Hr en funcion de la frecuencia
            ancho=0
            goto mostrar
            
         EndIF     

mostrar:
            pause 200
            LCDOut $fe,1,  humedad,"%"
            pause 1000
            goto medicion
   
End
End
End
End

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Problema en medidor de humedad con una variable.¿coma flotante?
« Respuesta #1 en: 18 de Octubre de 2007, 21:09:59 »
En PBP asi directamente no se puede trabajar con Punto decimal, Te recomiendo lo intetes con Proton para no complicar mucho.

Tambien tienes la altenativa de usar las rutinas de FP que hizo microchip pero eso si son muy pesadas o bien hacer uso del DIV32 para sacar decimales.  Hay un tema dedicado al punto decimal en PBP que hizo Mario checalo por si te sirve.
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado ferbarriga

  • PIC10
  • *
  • Mensajes: 6
Re: Problema en medidor de humedad con una variable.¿coma flotante?
« Respuesta #2 en: 18 de Octubre de 2007, 21:37:57 »
gracias por contestar navaismo. Estube viendo lo de las librerias fp. intente poniendo
include " fp0c.bas" o include "fp0c32.bas"
pero cuando compilo me tira un error

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Problema en medidor de humedad con una variable.¿coma flotante?
« Respuesta #3 en: 18 de Octubre de 2007, 21:39:47 »
Si creo que solo soportan PIC como el 16f628 y el 877 ademas de que debes tener las librerias en el mismo lugar de tu proyecto. Y hacer las variables adecuadas a las rutinas de conversion.

Saludos.
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."