C/Visual C - pasar un dato de unsigned int a float

 
Vista:

pasar un dato de unsigned int a float

Publicado por pisku (2 intervenciones) el 24/02/2011 12:02:22
Buenos dias;
Soy bastante nuevo progarmando en C y tengo el sigiente problema:

Unsigned int Xbadc; // es un valor que me da un ADC que ba de 0a 1023
foat Xb; // es el valor real ke me da el ADC
Xb =(10/1023*Xbadc);

No consigo Xbadc pase a ser float, para asi obtener el valor real. Necesito alguna funcion de libreria? solo utilizo <sadio.h>.
gracias de antemano a todos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

pasar un dato de unsigned int a float

Publicado por Oagimenez (15 intervenciones) el 09/03/2011 21:31:43
Fijate si con esto te ayuda. Coloca en la linea Xb=(10.00/1023.00*Xbadc). Esto va a hacer que el resultado de dividir un numero flotante con un entero de como resultado un valor flotante. sino al diez lo toma como un valor entero y al dividir por otro entero el resultado es cero. Proba y decime. A mi me dio resultado. Pero depende del compilador. Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:pasar un dato de unsigned int a float

Publicado por Tom (619 intervenciones) el 24/02/2011 12:17:11
¿ Cómo sabes que en Xb no hay un valor en punto flotante ?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:pasar un dato de unsigned int a float

Publicado por pisku (2 intervenciones) el 24/02/2011 12:40:24
Lo compruebo mas tarde en mi programa y me da todo el rato 0.
gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:pasar un dato de unsigned int a float

Publicado por Tom (619 intervenciones) el 24/02/2011 12:43:36
A eso voy. ¿Cómo lo compruebas ?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:pasar un dato de unsigned int a float

Publicado por Fenhasan (2 intervenciones) el 12/04/2011 14:39:35
¿Qué compilador estás usando? En cualquier caso, debe tener alguna ventana de "Watch variables" o algo así, donde puedes ver qué valor va tomando la variable de interés luego de cada instrucción.

Además, intenta usar type casting al calcular Xb:

unsigned int Xbadc;
float Xb;
Xb = (float)(10/1023*Xbadc);

Espero que te sirva...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar