Go Down

Topic: Eeprom 24LC08 (Read 1 time) previous topic - next topic

flico

Tengo una

Estoy usando este codigo para grabar los 8 bytes en cada direccion de memoria. Esta eeprom puede almacenar 256 mensajes de 8 bits cada uno.

Code: [Select]


void setup()
{

Wire.begin();
Serial.begin(9600);

//Guardar el mensaje "12345678" ocupando 8 bytes en la posicion
//de memoria 0x000

Wire.beginTransmission(0x50);
Wire.send(0x000);
Wire.send("12345678");
Wire.endTransmission();

 delay(10);

//Guardar el mensaje "12345678" ocupando 8 bytes en la posicion
//de memoria 0x008

Wire.beginTransmission(0x50);
Wire.send(0x008);
Wire.send("12345678");
Wire.endTransmission();
}



Lo que no entiendo es como hacer para saber por ejemplo la direccion que corresponde a la posicion 60.

0x0000  FF FF FF FF FF FF FF FF  <--- Posicion 1
0x0008  FF FF FF FF FF FF FF FF  <--- Posicion 2
0x0010  FF FF FF FF FF FF FF FF  <--- Posicion 3
0x0018  FF FF FF FF FF FF FF FF  <--- Posicion 4
....
....

Salu2
Trabajando en ...

    * Control Domotico (En montaje ...)
    http://casitadomotica.blogspot.com/
 

[url=https://bitbucket.org/fmalpartida

Engeeknyer

#1
Jan 22, 2011, 09:07 am Last Edit: Jan 22, 2011, 09:13 am by piniflopa Reason: 1
Bastante sencillo:

- Llama P al número de posicion de 8 bytes
- Considera primero todos los numeros en decimal.
- Siendo así:

       dirección (decimal)= P x 8

- Ahora solo tienes que convertir la direcion decimal obtenida en Hexadecimal

Para el caso de la posición 60.

            direccion(decimal) = 60 x 8 = 480 ------> dirección (Hexadecimal) = 1E0  --> 0x01E0

No tiene más misterio.



flico

Gracias piniflopa, no habia caido en convertirlo a hexadecimal.
Trabajando en ...

    * Control Domotico (En montaje ...)
    http://casitadomotica.blogspot.com/
 

[url=https://bitbucket.org/fmalpartida

Go Up