Autor Tema: codigo muy largo al utilizar float  (Leído 2233 veces)

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

Desconectado xootraoox

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 248
codigo muy largo al utilizar float
« en: 23 de Enero de 2006, 00:02:00 »
hola a todos... mi pregunta es la siguiente.......¿ hay forma de reducir el codigo al utilizar varibles float...?

bueno resulta que en mi codigo necesito mostrar un dato pero con tan solo 1 decimal, pero resulta que el tamaño del codigo aumenta considerablemente al hacerlo con float....

lo que tengo que hacer es mostrar un menu de configuracion el cual me permite modificar unos tiempos en pasos de 500ms pero en el display necesito poner los tiempos en segundos y para eso tengo un registro el cual lo cargo con el numero de 500ms a configurar, osea si en el registro cargo un 4 son dos segundos por que 4*500ms=2seg, por lo que ese registro mensionado es un float el cual solo lo divido por 2 y muestro en el display el registro ya mensionado.... por lo que si son 1500ms el registro sera igual a 3 lo que dividido en 2 da 1,5 y ese es el dato que en definitiva he de mostrar 1,5seg

el problema es que son 10 tiempos a modificar por lo que tengo que hacer 20 operaciones matematicas con ese registro float y llevando ya solo 4 tiempos procesados, osea 8 operaciones matematicas estoy usando un 55% de 4k de memoria loco por lo que obviamente no me alcanzara la memoria para hacer todo lo demas

en realidad estoy usando un 16f874 el que tiene 4k de memoria, en el cual ya he hecho todo el programa de funcionamiento para un equipo, el cual he usado el 98% de los 4k por lo que obviamente tendre que pasarme al 16f877 que tiene 8k para poder hacer la etapa de configuracion del mismo pero asi como estoy viendo no me alcanzara la memoria si no hay modo de representar un dato con un decimal sin comer tanta memoria.

desde ya agradesco cualquier comentario
despide
-==XooTRAooX==-


Desconectado pocher

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 2569
RE: codigo muy largo al utilizar float
« Respuesta #1 en: 23 de Enero de 2006, 00:43:00 »
Si tienes que usar muchas variables float y te comen mucha memoria, podrías intentar a pasar los 1500ms a un array de caracteres y luego representar en la LCD el 15 con un punto enmedio.

Es una idea sobre la marcha, ahora me voy al curro.

Desconectado xootraoox

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 248
RE: codigo muy largo al utilizar float
« Respuesta #2 en: 23 de Enero de 2006, 01:10:00 »
no es mala idea, lo probare y comento como me ha ido....

muchas gracias pocher...Giño

Desconectado antoniof

  • Moderadores
  • PIC24F
  • *****
  • Mensajes: 729
RE: codigo muy largo al utilizar float
« Respuesta #3 en: 23 de Enero de 2006, 04:28:00 »
Hola xotraoox.

Por lo que describes, no necesitas trabajar con float. Trabaja con un registro entero, que aumente de 5 en 5 y le pones una coma antes de la última cifra para mostrarlo en el LDC. Asi, si quieres mostrar el valor "1,5", tu registro tendrá el valor 15.

Desconectado xootraoox

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 248
RE: codigo muy largo al utilizar float
« Respuesta #4 en: 23 de Enero de 2006, 05:05:00 »
ufffffffffff............ y yo que me complicaba tanto con el maldito float..... y uds me abofetean con tantas sencillas solucionesMuchas risasMuchas risasMuchas risas


muchas gracias por moverme un poco las neuronas tanto escribir ya casi no me trabajanlocoloco

ya voy en la linea 2.872 segun el Mplablocoloco pobre teclado este.....