¿Cómo programar una EEPROM?

por medio de 4 interruptores le doy las 4 entradas a la memoria (en binario) y la memoria da salida a un display de 7 segmentos, donde tiene que aparecer mi nombre. en el maxloader comienzo en la direccion 0000 y a un lado donde estan todas las FF comienzo a escivir en esa misma fila del 0000 pero ahora con hexadecimal, lo guardo en .bin y lo grabo en la memoria. pero nada.
Amigo, entonces revisa si el programador esta quemando correctamente. Ademas el pin CE y OE deben estar a GND. Y el Terminal R/W a nivel alto.-
 
Hola a todos...
Tengo una pregunta respecto a la programación de las memorias EEPROM, en especial las 24LC02, 24LC04, 24LC08, 24LC16.

Lo que pasa es que necesito guardar un conteo de servicios de una maquina, y necesito que esa información NO se borre ni cuando el microcontrolador es desconectado de VCC (5v).

Estoy utilizando el microcontrolador de Freescale MC68HC908GP32 el cuan NO tiene EEPROM,, por lo que me decidí a utilizar una memoria de las anteriormente nombradas (24LC02...)

Mi pregunta es:
¿Cómo puedo guardar el conteo en la 24LCxx desde el MC68HC908GP32?..
¿Cómo sería el diagrama de conexión?


Nota: Estoy programando en Codewarrior en lenguaje C.

Gracias..!!
 
Estoy haciendo un programador de eeprom AT28c64, por medio del puerto paralelo y su software en visual basic, pronto les alcanzaré el proyecto....

Ninguno de los programadores que he encontrado me han servido...son un asco....
 
Amigo, entonces revisa si el programador esta quemando correctamente. Ademas el pin CE y OE deben estar a GND. Y el Terminal R/W a nivel alto.-

Gracias! ya los conecte asi y funciono 100% ya hace bastante tiempo de esto pero hasta ahora me pase a agradecer. Pronto comenzare a experimentar con el ardruino one, con el pic atmega328, posteriormente pondre por aca los resultados. Saludos.
 
Hola yo tengo una consulta y aprovechando para no abrir otro tema, yo ya se programar la eeprom y se crear el archivo .bin para cargarselo, mi problema esta en como organizo la información si existe alguna manera ya estandarizada o simplemente yo asigno para que voy a utilizar cada espacio de memoria, lo digo por lo siguiente, en mi caso yo deseo guardar información en código ascii por supuesto en la memoria quedaría en código en hex del valor ascii, ahora, la información es relacionada a usuarios, digamos FECHA DE NACIMIENTO, SEXO, DIRECCION, E-MAIL, ETC...Como seria la manera mas optima si existe o como dije si yo simplemente le asigno espacios de memoria los cuales tengo que recordar luego de quien es quien en la memoria...La memoria que utilizo son las misma nombradas 24c16...Gracias de antemano
 
Hola Colega, la informacion puedes organizarla a tu antojo, pues tu organizas y declaras tu propio protocolo, no necesariamente debes almacenar secuencialmente la informacion, salvo que a tu sistema debas implementarlo en algun otro sistema previo, pues logicamente deberas ajustarte al medio. Exitos!.
 
Hola Roberto gracias por tu respuesta, hice un pequeño archivo en excel con el cual me ayude a organizar la memoria, de tal manera que no ocurra un fallo a la hora de consultar la información, uno de los problemas que tuve fue que yo utilizo PICBASIC PRO con microcode y debido a eso estuve algo limitado al escribir en la memoria ya que quería enviar todos los datos de una vez, en total eran 32bits de datos y la memoria solo permite almacenar de 16bits a la vez por lo que tuve que hacerlo en 3 partes, a la final si quedo organizado cada espacio de memoria a lo que yo quería, aunque aun faltan parámetros por almacenar ya empece con los primeros 32bit de espacio de memoria...Ahora la idea no es guardar directamente la información en la memoria, la idea es que a trabes de un algoritmo pueda hacer lo mismo, empece al revés para hacer bien los cálculos a la hora de almacenar la información, por ejemplo, yo voy a generar una lista de pacientes que cada paciente va a tener un nombre un apellido, fecha de ingreso fecha de egreso, etc...Cada parámetro tiene una longitud de memoria que yo pre-establezco, para la fecha serian 3bits, 09/01/12, para el nombre como voy a colocarlo en una lcd, lo defino a 16bits del 0 al 15 y igual con el apellido y los demás parámetros.

Ahora la cuestión es como repetir el mismo proceso con 7 pacientes mas que van a tener contemplado la misma cantidad de información a guardar...Logico es incrementar nbits por cada paciente si son 32bits voy sumando de 32 en 32 tomando en cuenta los bits de control de la memoria al pasar de pagina en pagina osea de 255 a 255 ya que no admite variables tipo word ya que los bits de control van juntos con los bit de direccion y el bit de escritura y lectura y controlandolo manualmente tardaría una eternidad en escribir el codigo, para eso es el algoritmo de direccionamiento que nombre que de echo ya conseguí un ejemplo en pbp que me permite hacer bueno hasta aquí todo bien.

Lo otro que pretendo hacer es comparar la información de dos memorias eeprom, no utilizo la interna del pic porque es muy pequeña, y la comparación es para llevar un registro de entrada y salida de una memoria aparte, tipo tarjeta con chip, que al yo ingresarla el pic guarde la información de esa memoria y de cuando se uso indicándome el ingreso y la salida con datos como fecha y hora, en una memoria auxiliar externa y así poder consultarla luego sin necesidad de leer otra vez la tarjeta.

No se si me explique bien pero cualquier cosa me avisas a lo mejor es algo engorroso pero es una idea que ya estoy desarrollando cuando la tenga ya lista la coloco completa, cualquier sugerencia bienvenida sea ya que apenas empiezo con esto de las memorias.

PD:para la memoria auxiliar del pic voy a usar una 24C16 y para las tarjeta tipo tarjeta chip voy a usar 24C08...saludosss
 
he compa no tiene mucho problema la programada, solo necesitas hacer la tabla con los valores que quieres guardar, pero deben estar en hexadecimal!!. osea, si tienes el 58 que en binario seria 0111010, para convertirlo a hexadecimal los agrupas de 4 en 4, de izq a der: 011 1010, entonces haces de cuenta que solo existen cuatro bits y sacas el valor como si fuera binario normal: 011 --> 3, 1010 --> 10. aqui entra un pequeño problema, por que los primeros 10 numeros (0 a 9), se toman como tal, pero al llegar a 10 se sustituyen por letras (A,B,C...) hasta llegar al numero 15, o lo que es lo mismo: F; por lo tanto queda el numero en hexadecimal:

011 --> 3 1010 --> A

0111010b --> 3Ah

nota: la b y la h despues de los numeros, solo significan que basen son (decimal, binario,...)


te adjunto como se veria la tabla del programador, por lo general tienen la misma estructura y donde tienes que meter los valores hexadecimales es, logicamente, en la parte donde hay puras FF que corresponden a las direcciones de la memoria


Gracias entiendo la info, y lod e la conversion pero lo que no me ubico muy bien o si alguien podria ayudarme con esto de la EEPROM. Por que en lo del llenado de la tabla y los lugares me confundo en como hacerr el acomode.

Como dato trabajo con una AT28C256 para ponerle una tabla de valores de temperatura. Son 8bits y el rango de temperatura es de 0 a 100.

Por ejemplo si la salida en binario me da un
00000111 = 7
Y mi valor real sera ese numero decimal por 2.56 que seria:

Algo asi mi tabla
Valor Binario | Decimal | Temperatura °C |
00000111 || 7 || 17.92 °C ||
00001011 | 11 | 28.16 °C |
Para ir pasando todos los valores en la tabla...

Tengo el IC Prog...
 
Última edición:
necesito programar una memoria AT28C64B 15pc pero el aparato que tengo no trae el archivo, ?existe alguna pagina web donde pueda bajar dicho archivo?
 
Hola...
Lo que te indicaron esta correcto y si quieres ante la duda y/o conversiones de formato usa la calculadora de Windows en formato programador.
Saludos.

Ric.
calcu.JPG
 
Bueno, pues tengo que hacer un archivo hex con el formato Intel Hex para programar una memoria EEPROM, pero, ¿cómo tengo que poner los datos? Es para implementar un circuito secuencial, y tengo mi tabla de verdad con las entradas y las salidas, y sus ecuaciones simplificadas. ¿De qué forma paso esto a hexadecimal para crear el archivo .hex? Creo que solo me falta saber cómo pasar los bytes de datos, los que indican longitud, posición y tipo de campo ya sé más o menos hacerlo.

Y tras eso, ¿cómo sé en el chip (memoria EEPROM tipo SST39SF040 de SST) cuáles son las entradas y cuáles son las salidas?

No sé si se entiendo lo que quiero decir, si no preguntadme y a ver si puedo explicarlo mejor.
 
Última edición:
1.- Leer la hoja de datos para comprender todo acerca del dispositivo.
2.- Conseguir el hardware y el software para programar ese tipo de memoria, existen varios.
3.- Editar con ese mismo software las locaciones con los bytes que requieras.
4.- Grabar la memoria.

Si desconoces lo más básico, ¿cómo piensas realizar lo demás?
 
Bueno yo cuando grababa memorias Eeprom no usaba Intel hex por que debes hacer el checksum y la verdad no lo sé hacer y eso para cada registro.
La Wikipedia lo explica pero está un poco enredado.

Lo que hacía era grabar directo el binario.
Ejemplo:
Digamos que bajamos de internet una ROM de Atari 2600 que cabe perfectamente en una Eeprom.
Así tal cual la metía al grabador sin modificar nada .

Ahora lo mismo con un BIOS o un juego de NES bueno el juego de NES lo había que partir una vez partido así tal cual el binario se envía al grabador.

Los archivos binarios se pueden convertir en formato Hex y Motorola S el más comun es el Intel hex
Un programa que convierte en hex es uno llamado WinHex es muy bueno para convertir varios formatos y editar archivos
 
Atrás
Arriba