TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: jorgec1996 en 02 de Julio de 2015, 13:30:39
-
Buenas, soy novato en esto de los microcontroladores, aprendi varias cosas en el foro e hize un proyecto con mucha ayuda de este foro en otro tema, ya funciona pero tengo una duda, para mejorarlo en el futuro, es sobre la memoria flash que tiene el pic 16f877a, entiendo que tiene memoria flash interna, y la memoria flash tiene un numero ilimitado de escrituras y borrados, al contrario de la eeprom.
Al estar usando constantemente el
write_eeproom();
Se agotan las 1000 escrituras que tiene la eeprom.
He leido por ahi en el foro que el comando
write_program_eeprom();
es para grabar en la memoria flash, pero primero quiero resolver la duda que tengo, si es posible usar la memoria flash del Micro para escribir y borrar datos ilimitadamente
Muchas gracias de antemano:)
-
la memoria flash tiene un numero ilimitado de escrituras y borrados, al contrario de la eeprom.
Se agotan las 1000 escrituras que tiene la eeprom.
Ahi esta el error
Segun el datasheet:
100,000 erase/write cycle Enhanced Flash program memory typical
1,000,000 erase/write cycle Data EEPROM memory typical
Ademas uno en la flash puede leer datos libremente, pero si es necesario escribirlos requiere de un borrado y luego una escritura, y normalmente el borrado de es varios bytes, es decir de varias posiciones de memoria, asi que para realizar eso deberias leer todo, borrar, escribir nuevamente todo y cambiado.
Y aca viene lo demas.. Esto, tanto la flash como la EEPROM no esta realizados para datos que cambien continuamente,la flash son mas para datos "constantes" que no van a cambiar su valor, la EEPROM con su numero mayor de escrituras permite un poco mas de cambio, pero tenes que tener en cuenta ese maximo, es como para algo que no se cambie casi nunca, pero aun asi necesitas guardarlo. Sino se utiliza la RAM
-
A okei, ya entiendo :) ... y existen microcontroladores que pueden tener alguna memoria que no se borre al apagado y sea ilimitada, o tiene que ser con alguna memoria externa?
Gracias:)
-
ilimitado solo RAM, y vi solo externas con bateria.
Sino se intenta usar la RAM el PIC y agregar por ejemplo una deteccion de cuando se corta la corriente + un capacitor para que le de tiempo al micro de grabar las cosas en la EEPROM, solo en esos casos.