Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

22/11/2012 #1


escribir memoria externa AMD29F040
Buenas!!

tengo un sistema que se compone de un pic 16F876 y quiero escribir datos en una memoria externa AMD29F040 para luego leerlos y mandarlos por el puerto serie.

mi problema es para escribir la memoria. La datasheet explica como hacerlo (de forma confusa) pero no puedo hacerlo.

Alguien trabajo con alguna memoria parecida?

Gracias por la ayuda!!!
Saludos
23/11/2012 #2


Hola, tal vez si mostraras el codigo o en su defecto el algoritmo que estas siguiendo para escribir en dicha memoria se te pueda ayudar.
23/11/2012 #3


lo subo en un rato porque no lo tengo conmigo...

mi problema está en escribir ya que puedo leer bien creo... y no uso i2c sino que lo hago directo con todas las patas de direcciones y datos

gracias!!
Saludos
23/11/2012 #4

Avatar de Scooter

Creo que mejor sería que usases una memoria serie.
23/11/2012 #5


por memoria serie te referis a las que trabajan con i2c?

como funcionan? tiene su protocolo y las memorias ya lo hablan de fábrica?

que velocidades de escritura manejan? tienes idea?

gracias!!!
23/11/2012 #6

Avatar de Gudino Roberto duberlin

Hola Amigo ferre, bueno la memoria que comentas, es de tipo flash, por lo tanto se escribe por bloques, gralmente. 256bytes por bloque.
Si deseas alterar algun dato, debera leerse previamente todo el bloque, y luego reescribirse.
23/11/2012 #7


O sea que leo todo el bloque y recién ahí puedo escribir dentro de dicho bloque?

eso lo hago una vez sola, o cada vez que quiero escribir?
26/11/2012 #8


el tema de las memorias serie con I2C es que la velocidad de transferencia de datos es baja y no me sirve...

voy a probar lo de leer primero todo el bloque y luego escribir..

luego les comento!!!!

gracias!!
Saludos
26/11/2012 #9

Avatar de Scooter

Busca memorias SPI, es bus es mas rápido, o escribe directamente en una SD; si es de clase 10 son 10MB/s osea que creo que tienes bastante.
Lo digo porque para conectar una memoria paralelo a un sistemas "sin bus" como un pic es complejo; vas a gastar una enormidad de pines y programa. Otra cosa sería algún microcontrolador que permita un "modo microprocesador" osea el uso de memoria externa paralela como un 8052 o semejante, ahí gastas los mismos pines pero el uso de la memoria es "transparente" ya que todas las señales de control etc las genera el microcontrolador sin que tengas que hacer nada.
26/11/2012 #10

Avatar de Gudino Roberto duberlin

ferre dijo: Ver Mensaje
O sea que leo todo el bloque y recién ahí puedo escribir dentro de dicho bloque?

eso lo hago una vez sola, o cada vez que quiero escribir?
Amigo, cada vez que deseas escribir un dato en un bloque determinado, siempre deberas leer previamente todo el bloque, ya que si no lo haces, perderas todo el resto de datos de dicho bloque.
En el datasheet podras observar un grafico que explica los ciclos de lectura/escritura.
26/11/2012 #11


Gudino,

la verdad que en la datasheet no veo lo de tener que leer el bloque para escribir..

lo que si explica son los pasos a seguir con CE, OE, Data, WE y Address para escribir (hay que poner 555 en Address y algunas otras cosas que no entiendo), pero nunca involucra el "leer"

igual lo pruebo y sino voy a empezar a leer de las SD

Gracias!!

Saludos
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.