Pages: [1]   Go Down
Author Topic: Conversion de tipos de datos  (Read 786 times)
0 Members and 1 Guest are viewing this topic.
Lleida - SPAIN
Offline Offline
Jr. Member
**
Karma: 0
Posts: 59
Adicto al Arduino
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Con el siguiente codigo, grabo los datos a las direcciones 0, 1, 2 y 3 de la EEPROM.

#include <EEPROM.h>


void setup()
{
}

void loop()
{
 EEPROM.write(0,int('H'));
 delay(10);
 EEPROM.write(1,int('O'));
 delay(10);
 EEPROM.write(2,int('L'));
 delay(10);
 EEPROM.write(3,int('A'));
 delay(10);
}


Para leerlo uso:


#include <EEPROM.h>

int address;
byte value;

void setup()
{
  Serial.begin(9600);
}

void loop()
{
  for (address=0;address<=3;address++)
  {
  value = EEPROM.read(address);
  delay(10);
  }
 }

Una vez leido,
en direccion 0 tengo 72
en direccion 1 tengo 79
en direccion 2 tengo 76
en direccion 3 tengo 65

que es el codigo ASCII de cada letra.
H = 72
O = 79
L = 76
A = 65

Como puedo hacer para convertir el numero a una variable char, para asi hacer:

if (contenido_de_direccion_0_en_LETRA = "H")
{
}

Gracias.
Logged

Offline Offline
Edison Member
*
Karma: 23
Posts: 1375
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ya lo tienes en char

Prueba a hacer:

Code:
#include <EEPROM.h>

byte value;

void setup()
{
   Serial.begin(9600);

   EEPROM.write(0,int('H'));
   delay(10);
   EEPROM.write(1,int('O'));
   delay(10);
   EEPROM.write(2,int('L'));
   delay(10);
   EEPROM.write(3,int('A'));
   delay(10);
   value = EEPROM.read(0)
   if (value='H'){
       Serial.print("La posicion 0 contiene la H")
   }
}

void loop(){}
Logged

Mercadillo electrónico. Kit iniciación a Arduino, shield LCD a color y más cosas!

Lleida - SPAIN
Offline Offline
Jr. Member
**
Karma: 0
Posts: 59
Adicto al Arduino
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Gracias, ya me funciona.
Logged

Pages: [1]   Go Up
Jump to: