Autor Tema: Como escribir una constante char en una EEPROM  (Leído 2361 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado WSalas

  • PIC10
  • *
  • Mensajes: 36
Como escribir una constante char en una EEPROM
« en: 22 de Junio de 2009, 12:00:26 »
Hola, quisiera escbrir una constante char en la eeprom interna del Pic, como puedo hacer?, por que la forma que lo estoy haciendo no funciona

Citar
int i = 0;

char name[] = "Flux-564330";

void main() {
     for (i = 0; i < 12; i++){
          write_eeprom(i, name);
          }
        }
« Última modificación: 22 de Junio de 2009, 12:30:56 por WSalas »

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: Como escribir una constante char en una EEPROM
« Respuesta #1 en: 22 de Junio de 2009, 12:02:44 »
Hola.

Código: C#
  1. for(i=0;i<12;i++)
  2.   eeprom_write(i,name[i]);

deberia funcionar.

Saludos
El papel lo aguanta todo

Desconectado WSalas

  • PIC10
  • *
  • Mensajes: 36
Re: Como escribir una constante char en una EEPROM
« Respuesta #2 en: 22 de Junio de 2009, 12:37:10 »
Hola Mlo_, ya lo he intentado de esa forma,  no tengo problemas al compilar, pero en la memoria eeprom interna del pic solamente se escribe puros ceros!!!!

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
Re: Como escribir una constante char en una EEPROM
« Respuesta #3 en: 22 de Junio de 2009, 12:43:25 »
Hola Mlo_, ya lo he intentado de esa forma,  no tengo problemas al compilar, pero en la memoria eeprom interna del pic solamente se escribe puros ceros!!!!

Hola, ¿cómo verificas que se escriben puros ceros?

La forma más fácil de verificar que la eeprom esté bien grabada es leer el pic con tu programador y checar la sección de la eeprom.

¿Qué pic estás usando? Algunos pic no tienen memoria eeprom interna.

Desconectado WSalas

  • PIC10
  • *
  • Mensajes: 36
Re: Como escribir una constante char en una EEPROM
« Respuesta #4 en: 22 de Junio de 2009, 13:31:54 »
Hola migsantiago, estoy usando el hyperterminal para verificar la escritura de la memoria eemprom, aqui esta mi codigo

Citar
#include <16f877a.h>                         
#fuses XT,NOWDT,NOPROTECT,NOLVP,PUT,BROWNOUT
#use delay(clock=20M)                     
#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7)

int i = 0;

char name[] = "Flux-564330";


void main() {

     for (i = 0; i < 12; i++){
          write_eeprom(i, name);
          }
       
     delay_ms(200);
     for (i = 0; i < 12; i++){
          printf ("%c",read_eeprom(i));
          }
       
}

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Como escribir una constante char en una EEPROM
« Respuesta #5 en: 22 de Junio de 2009, 14:00:31 »
hasta en el proteus sale error... ya me pico la curiosidad. verificare que encuentro pues al parecer esta correcto.
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Como escribir una constante char en una EEPROM
« Respuesta #6 en: 22 de Junio de 2009, 14:02:52 »
#include <16f877a.h>                          
#fuses HS,NOWDT,NOPROTECT,NOLVP,PUT,BROWNOUT
#use delay(clock=20000000)                      
#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7)

int i = 0;

char name[] = "Flux-564330";


void main() {

     for (i = 0; i < 12; i++){
          write_eeprom(i, name );
          }
        
     delay_ms(200);
     for (i = 0; i < 12; i++){
          printf ("%c",read_eeprom(i));
          }
          
   while(1);          
        
}

le agregue lo que comento MLO y funciono en la simulacion.
incluso le puse su virtualterminal y salia la cadena de mensaje
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado WSalas

  • PIC10
  • *
  • Mensajes: 36
Re: Como escribir una constante char en una EEPROM
« Respuesta #7 en: 22 de Junio de 2009, 14:32:40 »
hola microcadaver, si tines razon, si funciona, parece que me habia equivaocado en una sentencia gracias