Pic + Eeprom

hola,
primero que nada felicitar a este excelente pagina que ayuda a mucho novatos como yo a resolver sus dudas con toda la valiosa informacion que contiene este foro gracias a todos sus usuarios.

Planteo el problema:

actual mente se descarga sobre un microcontrolador un firmware especifico ( son aproximadamente 5 firmwares distintos de 64kb cada uno) atraves de un programador
teridian de marca maxim esto lo hacemos mediante la computadora.

la computadora es quien almacena los firmwares que asu ves esta conectada a el teridian
el usuario conecta las salidas del teridian al microcontrolador y mediante una interfaz de usuario
selecciona el firmware y se descarga.

la idea es eliminar la computadora y remplazarla por un pic con memorias externas, que los firmwares se almacenen sobre una memoria y a traves de botones se seleccione y descargue el fimware deseado.

no tengo experiencia sobre manejo de memorias eeprom sin embargo estoy investigando y empiezo a entender.

segun la informacion recolectada lo mas sencillo es utilizar el sistema de coneccion i2c me gustaria de su a asesoria y si me pudieran dar consejos se los agradeceria.
 
hola,
primero que nada felicitar a este excelente pagina que ayuda a mucho novatos como yo a resolver sus dudas con toda la valiosa informacion que contiene este foro gracias a todos sus usuarios.

Planteo el problema:

actual mente se descarga sobre un microcontrolador un firmware especifico ( son aproximadamente 5 firmwares distintos de 64kb cada uno) atraves de un programador
teridian de marca maxim esto lo hacemos mediante la computadora.

la computadora es quien almacena los firmwares que asu ves esta conectada a el teridian
el usuario conecta las salidas del teridian al microcontrolador y mediante una interfaz de usuario
selecciona el firmware y se descarga.

la idea es eliminar la computadora y remplazarla por un pic con memorias externas, que los firmwares se almacenen sobre una memoria y a traves de botones se seleccione y descargue el fimware deseado.

no tengo experiencia sobre manejo de memorias eeprom sin embargo estoy investigando y empiezo a entender.

segun la informacion recolectada lo mas sencillo es utilizar el sistema de coneccion i2c me gustaria de su a asesoria y si me pudieran dar consejos se los agradeceria.

Hola...de 64K de 8 bit podes usar la 24LC512 ( http://ww1.microchip.com/downloads/en/devicedoc/21754e.pdf ) que soporta direccionamiento externo para que convivan barios dispositivos sobre el bus I2C. A mi me preocuparía el tema de la conectiviada entre la PC a reemplazar y el "programador teridian" mas que la colectividad/uso de las memorias I2C los cuales esta plagado de información en este y otros foros.

Saludos.

Ric.
 
Buen dia companero, que serial lo que tendria que preocuparme sobre la pc ??
ya me preocupe !!



El proyecto a grandes rasgos se resume:
leer y escribir eeprom con con pic
Descargar firmware de 64kb en eeprom (5 firmwares, 1 eeprom por firmware ( que opinan))
interfaz de usuario para selección de firmware (obviamente conectada al pic)
convertidor a rs232 ( para descargar los firmwares sobre eeprom)
convertidos a rs232 (para conectar el teridian al pic).

No se si quede muy claro esa coneccion entre el pic y el teridian.

el teridian se controla atraves de un puerto serial con la computadora con una hiperterminal (se le da una serie de caracteres y el teridian trabaja solo ).
 
Última edición:
Buen dia companero, que serial lo que tendria que preocuparme sobre la pc ??
ya me preocupe !!



El proyecto a grandes rasgos se resume:
leer y escribir eeprom con con pic
Descargar firmware de 64kb en eeprom (5 firmwares, 1 eeprom por firmware ( que opinan))
interfaz de usuario para selección de firmware (obviamente conectada al pic)
convertidor a rs232 ( para descargar los firmwares sobre eeprom)
convertidos a rs232 (para conectar el teridian al pic).

No se si quede muy claro esa coneccion entre el pic y el teridian.

el teridian se controla atraves de un puerto serial con la computadora con una hiperterminal (se le da una serie de caracteres y el teridian trabaja solo ).

Lo que me faltaba era la comunicación con el teridian...como no lo conozco no sabia que la comunicación era standar RS232 y a través de unos comandos.
Se me ocurre que si no son de cambios frecuentes dichos Fw podrías grabarlo con un programador común tipo JDM las cinco eeprom y la placa con el pic solo tendrias que selecciona la eeprom a transmitir al teridian vía rs232. No comentaste si los 64kb son de 8, 16,etc bit la word dado que la eprom que te pase son de 64kb pero de 8bit la word.

Ric.
 
Es de 64kb a 8 bits.
me parece muy simplificado asi como me lo planteas, te agradesco.

Tengo una pregunta es posible conectar la epprom por bus I2c a la pc y al micro.
necsitaria algo asi como un convertidor de I2C a rs232
 
Es de 64kb a 8 bits.
me parece muy simplificado asi como me lo planteas, te agradesco.

Tengo una pregunta es posible conectar la epprom por bus I2c a la pc y al micro.
necsitaria algo asi como un convertidor de I2C a rs232

Entonces con la eeprom que te indique te funcionaria. Lo que yo te plateaba era la independencia del dispositivo de una PC permanente.
Seria PC graba por rs232 mediante JDM cinco EEPROM cada una con distintos FW en su interior.
Por otro lado esas cinco eeprom las conectas a una placa con un PIC mediante I2C que por un sistema de selección elige que eeprom se trasferirá vía RS232 al teridian.
Como veras la PC solo interviene en el proceso de grabado de las eeprom.
Eso seria útil para un sistema de cargas de FW repetitivos y horarias la PC hasta las nuevas renovaciones de FW por eso te pregunte el tema de si cambiaban frecuentemente los FW.

Como no se los requerimientos totales del proyecto solo me baso en lo que tú comentaste y yo interprete.

Ric.
 
claro, muchas gracias por la ayuda amigo.

Veras me exigen que desde la placa la pc descargue los fw a las memorias, por la informacion que tengo veo que la transferencia de fw debera ser: FW(PC)=>Micro=>eeprom.

El proyecto me lo han planteado de la siguiente manera.

un menu de seleccion atraves de un LCD Display y un teclado (up, down, enter...): Esto para la seleccion del firmware ( estoy evaluando el LM016L)

Almacenamiento de Fw de 64Kb en memorias EEprom ( Estoy evaluando 24xx102x)

Conexion a PC por Seria ( planeo conectar un pic a la pc por rs232 (max) (estoy evaluando el pic 16f877D) este puerto seria utilizado solo para descargar los Fw a las eeproms

Conexion pic-Teridian Serial ( Planeo utilizar el mismo puerto que utilizaria para conectar la pc )
este puerto seria utilizado para descargar los fw al teridian.

Creo que en general este seria el proyecto.

agradeceria si me pudieras aconcejar, al igual si pudieras pasarme algo de informacion sobre maneras de conectar la eeprom a la pc, la posibilidad de hacer un arreglo de conexion pc eeprom y al mismo tiempo pic eeprom.
 
claro, muchas gracias por la ayuda amigo.

Veras me exigen que desde la placa la pc descargue los fw a las memorias, por la informacion que tengo veo que la transferencia de fw debera ser: FW(PC)=>Micro=>eeprom.

El proyecto me lo han planteado de la siguiente manera.

un menu de seleccion atraves de un LCD Display y un teclado (up, down, enter...): Esto para la seleccion del firmware ( estoy evaluando el LM016L)

Almacenamiento de Fw de 64Kb en memorias EEprom ( Estoy evaluando 24xx102x)

Conexion a PC por Seria ( planeo conectar un pic a la pc por rs232 (max) (estoy evaluando el pic 16f877D) este puerto seria utilizado solo para descargar los Fw a las eeproms

Conexion pic-Teridian Serial ( Planeo utilizar el mismo puerto que utilizaria para conectar la pc )
este puerto seria utilizado para descargar los fw al teridian.

Creo que en general este seria el proyecto.

agradeceria si me pudieras aconcejar, al igual si pudieras pasarme algo de informacion sobre maneras de conectar la eeprom a la pc, la posibilidad de hacer un arreglo de conexion pc eeprom y al mismo tiempo pic eeprom.

Entonces como primera medida deberás realizar una aplicación(software) en la PC que se encargue de comunicarse con el PIC para descargar los FW vía RS232. De la conexión PIC a EEProm I2C hay mucha información disponible yo por acá encontré algo en este curso que te adjunto en este enlace(no pude subirlo al foro por que excede el limite de capacidad) http://www.mediafire.com/?3qxp9xx6rxaj6h2 pero no se en que entorno programaras el PIC para hacer dichas tareas(asembler, C, Basic, etc) debido a que en las ayudas de los compiladores hay información al respecto.
Hoy por hoy seria mas lógico conectar la PC via USB(no mas sencillo) pero eso te correría el proyecto a un 18F4550 0 2550.

Ric.
 
Pretendo programar en asembler y para descargar el firmware de la pc al pic planeo utilizar una hypertermina de windows.

En cuanto a lo de la usb se que es mucho mas nice que por serial, sin embargo seria darle mas dificultad a lo que ya parece complicado XD, por el momento opto por utilisar el puerto serie ademas como te digo el puerto serie que lleve el micro lo pretendo utilizar tanto para el programador teridian como para cumunicarme con la pc.

te agradesco tu ayuda, espero que durante la realizacion del proyecto pueda contar con tigo
 
Pretendo programar en asembler y para descargar el firmware de la pc al pic planeo utilizar una hypertermina de windows.

En cuanto a lo de la usb se que es mucho mas nice que por serial, sin embargo seria darle mas dificultad a lo que ya parece complicado XD, por el momento opto por utilisar el puerto serie ademas como te digo el puerto serie que lleve el micro lo pretendo utilizar tanto para el programador teridian como para cumunicarme con la pc.

te agradesco tu ayuda, espero que durante la realizacion del proyecto pueda contar con tigo

Entendido...bueno buena suerte y acá estaremos si algo puedo aportar aunque tengo nociones vagas de asembler ya que yo utilizo Basic por arrastre de la década de los '70 que fue donde empece de forma autodidacta y amateur con las insipientes primeras computadoras.

Ric.
 
Hola companero

al parecer voy bien en este proyecto sin embargo ya me retrace un poco,
me gustaria saber si tienes algo de informacion de como configurar el MSSP
en modo i2c del pic16f877a con una memoria externa eeprom 24aa1025

te agradeceria mucho tu ayuda
 
hola que tal, afortunadamente ya solucione mi problema, ya puedo escribir y leer un byte,
mi pregunta es como puedo escribir mas de un byte y leer mas de un byte.
 
Atrás
Arriba