TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: migsantiago en 08 de Febrero de 2007, 20:22:53
-
Hola :)
Estoy almacenando un valor flotante en la memoria interna del pic con la librería internal_eeprom.c. Me están surgiendo dudas de si se guardan mis valores o no... por ejemplo, si tengo en la eeprom el valor 0xffffffff (4 localidades vacías ó 4 bytes que tienen puras f's) y hago lo siguiente...
yosoyflotante=read_float_eeprom(direccion);
yosoyflotante tendrá un valor hexadecimal de 0xffffffff... pero... ¿a qué equivale en flotante?
Busqué en el foro la forma en que se almacenaban los flotantes pero no doy con las palabras clave de la búsqueda. :( Recuerdo que un byte almacenaba el punto decimal y otro el exponente... pero no me acuerdo del todo :oops:
Gracias
-
Hola :)
Estoy almacenando un valor flotante en la memoria interna del pic con la librería internal_eeprom.c. Me están surgiendo dudas de si se guardan mis valores o no... por ejemplo, si tengo en la eeprom el valor 0xffffffff (4 localidades vacías ó 4 bytes que tienen puras f's) y hago lo siguiente...
yosoyflotante=read_float_eeprom(direccion);
yosoyflotante tendrá un valor hexadecimal de 0xffffffff... pero... ¿a qué equivale en flotante?
Busqué en el foro la forma en que se almacenaban los flotantes pero no doy con las palabras clave de la búsqueda. :( Recuerdo que un byte almacenaba el punto decimal y otro el exponente... pero no me acuerdo del todo :oops:
Gracias
Eso lo debiera comentar la gente de CCS en su manual. Cada compilador puede adoptar el estándar que le parezca para decidir como acomodar los aportes.
En el caso de Microchip en su C18 usa su propio formato el cual es comentado en sus datasheets.
Saludos
-
Buenas!!! En el manual del compilador (http://www.ccsinfo.com/downloads/ccs_c_manual.pdf), si le damos a marcadores en la sección COMMON QUESTIONS AND ANSWERS, la pregunta What is the format of floating point numbers? Está explicado el formato que adopta CCS para los números en coma decimal.
Suerte!!! ;)
-
En el mplab en la ventana del watch se puede agregar la variable de punto flotante, se puede agregar dos veces, una se visualiza en flotante y la otra se configura para que se vea en hexadecimal, adjunto una imagen de captura de la ventana watch con un float.
espero haber sido claro.
saludos
-
Leyendo el manual de CCS me doy cuenta de que hay un convertidor numérico en el compilador...
Gracias Vszener y a los demás por la ayuda.
(http://img145.imageshack.us/img145/8550/borrapi5.jpg)