Hola a todos, estoy tratando de grabar y leer datos de una eeprom 24C02, sin embargo, no se que estoy haciendo mal que no funciona bien.
cuando pongo el siguiente codigo:
for(i=0;i<12;i++){
latitud[i] = '1';
}
i=0;
for(i=0;i<13;i++){
longitud[i] = '2';
}
i=0;
i2c_start();
i2c_write(0b10101110);
//delay_ms(2);
i2c_write(0b00000000);
//delay_ms(2);
i2c_write('A');
i2c_write('B');
i2c_write('C');
i2c_write('D');
i2c_write('E');
i2c_write('F');
i2c_write('G');
i2c_write('H');
i2c_write('I');
i2c_write('J');
i2c_write('K');
i2c_stop();
ini_lcd();
i2c_start();
i2c_write(0b10101111);
i2c_write(0b00000000);
latitud[0]=i2c_read();
latitud[1]=i2c_read();
latitud[2]=i2c_read();
latitud[3]=i2c_read();
latitud[4]=i2c_read();
latitud[5]=i2c_read();
latitud[6]=i2c_read();
latitud[7]=i2c_read();
latitud[8]=i2c_read();
latitud[9]=i2c_read();
latitud[10]=i2c_read();
i2c_stop();
for(i=0;i<12;i++){
escribo(latitud[i]);
}
cuando esta asi, imprime caracteres nulos (todos los cuadritos negros) en el lcd, menos el ultimo que es 1 (ya que ese no lo leo del i2c sino que lo dejo asi.
y cuando pongo el siguiente codigo:
for(i=0;i<12;i++){
latitud[i] = '1';
}
i=0;
for(i=0;i<13;i++){
longitud[i] = '2';
}
i=0;
i2c_start();
i2c_write(0b10101110);
//delay_ms(2);
i2c_write(0b00000000);
//delay_ms(2);
i2c_write('A');
i2c_write('B');
i2c_write('C');
i2c_write('D');
i2c_write('E');
i2c_write('F');
i2c_write('G');
i2c_write('H');
i2c_write('I');
i2c_write('J');
i2c_write('K');
i2c_stop();
ini_lcd();
i2c_start();
i2c_write(0b10101111);
//i2c_write(0b00000000); ELIMINO LA QUE EN TEORIA ES LA DIRECCION DE DONDE QUIERO INICIAR A LEER
latitud[0]=i2c_read();
latitud[1]=i2c_read();
latitud[2]=i2c_read();
latitud[3]=i2c_read();
latitud[4]=i2c_read();
latitud[5]=i2c_read();
latitud[6]=i2c_read();
latitud[7]=i2c_read();
latitud[8]=i2c_read();
latitud[9]=i2c_read();
latitud[10]=i2c_read();
i2c_stop();
for(i=0;i<12;i++){
escribo(latitud[i]);
}
me pinta lo siguiente en el lcd: " GHIJ@@@@@@1 " donde los @ son el caracter nulo.
Alguien ha trabajado con estas eeprom y me puede dar una manito? uso el CCS para compilar el codigo.
Muchas gracias.