Autor Tema: Guardar caracteres en la eeprom  (Leído 1404 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado marcoscab1166

  • PIC12
  • **
  • Mensajes: 57
Guardar caracteres en la eeprom
« en: 14 de Julio de 2016, 19:54:29 »
Hola, una pregunta, se puede guardar caracteres en la eeprom? Si pueden ponerme un ejemplo mejor, ademas de como leerlos. Gracias.

Desconectado planeta9999

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3520
    • Pinballsp
Re:Guardar caracteres en la eeprom
« Respuesta #1 en: 14 de Julio de 2016, 20:21:01 »
//*****************************************
//********** Programa principal ***************
//*****************************************
main
{
  char from_eeprom1 = ' ';
  char save_me = ' ';

   save_me = 'A';
   ee_write_byte(0x00, &save_me); // Escritura
   ee_read_byte(0x00, &from_eeprom1); // Lectura
}
//***********************************************
//***** Funcion  escritura en eeprom  *****************
//***********************************************
void ee_write_byte(unsigned char address, unsigned char *_data)
{
    EEDATA = *_data;
    EEADR = address;
    // start write sequence as described in datasheet, page 91
    EECON1bits.EEPGD = 0;
    EECON1bits.CFGS = 0;
    EECON1bits.WREN = 1; // enable writes to data EEPROM
    INTCONbits.GIE = 0;  // disable interrupts
    EECON2 = 0x55;
    EECON2 = 0x0AA;
    EECON1bits.WR = 1;   // start writing
    while(EECON1bits.WR){ _asm nop _endasm; }
   // if(EECON1bits.WRERR){printf("ERROR: writing to EEPROM failed!n");}
    EECON1bits.WREN = 0;
    INTCONbits.GIE = 1;  // enable interrupts
}
//***********************************************
//***** Funcion  lectura en eeprom  *******************
//***********************************************
void ee_read_byte(unsigned char address, unsigned char *_data)
{
    EEADR = address;
    EECON1bits.CFGS = 0;
    EECON1bits.EEPGD = 0;
    EECON1bits.RD = 1;
    *_data = EEDATA;
}
//***********************************************
« Última modificación: 14 de Julio de 2016, 20:25:36 por planeta9999 »

Desconectado marcoscab1166

  • PIC12
  • **
  • Mensajes: 57
Re:Guardar caracteres en la eeprom
« Respuesta #2 en: 14 de Julio de 2016, 22:31:56 »
//*****************************************
//********** Programa principal ***************
//*****************************************
main
{
  char from_eeprom1 = ' ';
  char save_me = ' ';

   save_me = 'A';
   ee_write_byte(0x00, &save_me); // Escritura
   ee_read_byte(0x00, &from_eeprom1); // Lectura
}
//***********************************************
//***** Funcion  escritura en eeprom  *****************
//***********************************************
void ee_write_byte(unsigned char address, unsigned char *_data)
{
    EEDATA = *_data;
    EEADR = address;
    // start write sequence as described in datasheet, page 91
    EECON1bits.EEPGD = 0;
    EECON1bits.CFGS = 0;
    EECON1bits.WREN = 1; // enable writes to data EEPROM
    INTCONbits.GIE = 0;  // disable interrupts
    EECON2 = 0x55;
    EECON2 = 0x0AA;
    EECON1bits.WR = 1;   // start writing
    while(EECON1bits.WR){ _asm nop _endasm; }
   // if(EECON1bits.WRERR){printf("ERROR: writing to EEPROM failed!n");}
    EECON1bits.WREN = 0;
    INTCONbits.GIE = 1;  // enable interrupts
}
//***********************************************
//***** Funcion  lectura en eeprom  *******************
//***********************************************
void ee_read_byte(unsigned char address, unsigned char *_data)
{
    EEADR = address;
    EECON1bits.CFGS = 0;
    EECON1bits.EEPGD = 0;
    EECON1bits.RD = 1;
    *_data = EEDATA;
}
//***********************************************

Gracias, y los valores de el caracter address los puedo expresar como siempre no? o sea 0,1,2,3, etc


 

anything