Pages: [1]   Go Down
Author Topic: convertir dos enteros (24 y 60) en un float (24.60)(SOLUCIONADO++)  (Read 951 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 78
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hola.
tengo almacenado en la eeprom dos numeros para la temperatura uno es el entero 24 y el otro el decimal 60.
al recuperarlo quiero que sea un float 24.60.
habia pensado hacerlo asi:
  pasar los dos numeros a cadena -> concatenarlos -> pasar la cadena a entero -> dividir el entero (2460) entre 100=26.60

pero  no encuentro como convertir un entero en cadena, es decir que 26 sea "26".
gracias
« Last Edit: January 05, 2013, 09:29:08 am by karagos » Logged

Oviedo
Offline Offline
Newbie
*
Karma: 0
Posts: 9
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Y si divides el segundo por 100 y lo sumas la primero, almacenado el resultado de salida en un float ?¿?
Logged

0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 78
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

  smiley-eek smiley-eek smiley-eek
 cueli muuuuuchas gracias
Logged

0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 78
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

bueno pues ya esta echo con esto podemos guardar en la memoria temperaturas y recuperarlas

//150 es la posicion de memoria y 24 es el valor y 151 su valor es 60
// leemos dos numeros de la memoria los juntamos y creamos la temperatura
int numero =EEPROM.read(150);
int numero2 =EEPROM.read(151);
//////// pasar 24 y 60 a 24.60////////
float numero3= numero+((float)numero2 / 100);//con (float) obligamos a que numero2 sea float pues si no es float no da resultado
Serial.println(numero3);//numero3= 24.60
//////////////////////////////////////////////////
////////////// pasar una cadena a float /////////////////////
//la cadena de la web la pasamos a float, es decir a temperatura para trabajar con ella
char *numeros="24.60";
float numero5= atof(numeros);//el resultado es 24.60 como float
Serial.println(numero5);
float numero6= atof("12.89");// el resultado es 12.89 como float
Serial.println(numero6);
///////////////////////////////////////////////////////
//////////// pasar una cadena a numero y separalo/////////////////
// la temperatura de la web  la pasamos a dos numeros enteros para guardarlos en la memoria
int numero7= atoi("23.51");// da como resultado el numero 23 entero
Serial.println(numero7);
float numero8= atof("23.51");// da como resultado 23.51
int numero9= (numero8-numero7)*100;// da como resultado el decimal 51
Serial.println(numero9);
//////////////////////////////////////////////////////////////
por si a alguien le puede valer smiley-wink
Logged

Pages: [1]   Go Up
Jump to: