TODOPIC
Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: todopic en 12 de Marzo de 2004, 22:31:00
-
Hola Amig@s, tengo un problema al leer la EEPROM del 628... al cargar la direccion de lectura, EEADR siempre me queda en CERO, y lee justamente ese valor...., estoy empleando la misma rutina del data sheet... tiene alguna configuracion aparte?...
Gracias!
Norberto
-
Mira que casualidad Norberto. Acabo de recibir una notas de microchip para los 627A/628A/648A hace una hora y por lo que he visto lo referente a la eeprom es uno de los errores:
http://www.microchip.com/download/lit/suppdoc/errata/80151G.pdf
Y este otro (pero por lo que se vé es inválido. Errata en los correos de erratas
):
http://www.microchip.com/download/lit/suppdoc/errata/80151H.pdf
Mira en la web donde aparecen los datas del micro y demás:
http://www.microchip.com/1010/pline/picmicro/category/embctrl/8kbytes/devices/c16f628a/index.htm
Y visto lo visto, de la 80151H ná de ná.
Suerte!!
-
Hola Cuca y amig@s, gracias por la info...., yo estoy empleando el 628 comun,no el A...., de cualquier manera si este tiene error, el otro mmmmm
Ya el problema lo tengo al simularlo paso a paso en el MPLAB... cuando lo mando a la subrutina de lectura, el EEADR queda inmutable en CERO, y no toma la direccion....
realice otros programitas simples, un secuenciador , lo grabe y probe en una placa, y funciona, es decir, estan bien configurados los puertos como digitales....
el programa estaba funcionando bien en un 16f84a....
cambie las direcciones de los registros a 20h.... para adaptarlos al 628... pero náa e ná 
Si alguien paso por esto, que me tire alguna info 
Norberto
-
Norberto:
Tengo que buscar porque algo similar me pasó y lo resolví mirando las rutinas que genera el picsimulator.-
Cuando tenga algo lo subo.-
Jorge
-
Hola Gracias a todos por la ayuda, el amigazo del Uruguay, Camilo Monetta, me aviso.... ojo que el eeadr esta en otro banco....
asi que,tanto que es igual, que es igual.... me confie... 
no es igual al F84.... es parecido je je....
ya lee bien, hay que pasarle la direccion a leer estando en el banco cero, luego, pasar al bank 1 y ejecutar la instruccion de lectura...
ahora, de 3 data sheet que dispongo, en ninguno indica la direccion donde se encuentra la eeprom (que es igual al f84)
bueno... sigo probando ahora a grabar!!! 
Norberto
-
Hola Norberto,
Con el PBP lo haces directo con READ y WRITE, eso si, te ocupara unas cuanta palabras mas que si lo haces a pedal.
Saludos
Ricky
Madrid-Espa~a
-
Ja ja ja.... pero yo ya tengo todo el programa a pedales je je..., ocupe un k completito... seria imposible en pbp, y ahora quiero implementarle algunas cositas mas... asi que empleare 1k+

Si, por cierto, que el pbp ni piensas en que banco estas.... je je
algunas cositas estoy haciendo en pbp.... voy turnando.... el otro dia estaba corrigiendo un programita en Visual basic, y al colocar un rem... ERROR.... le colocaba punto y coma... ERROR... se me emzclaban jua jua...
Norberto
-
Eres un amante del ensamblador y eso marca la vida de una persona. Ya no podemos recuperarte para este lado del mundo, has quedado atrapado en las redes binarias del ensamblador.
Ja, ja, ja un saludo.
Ricky
-
Norberto:
Realmente el problema lo tuve con la eeprom del 873, les copio el código para leerla y grabarla.
lee_eeprom:
clrf adress
bsf status,RP1
bcf status,RP0
movlw adress
movwf eeadr
bsf status,RP0
bcf eecon1,EEPGD
bsf eecon1,RD
bcf status,RP0
movf eedata,w
movwf aux2
bcf status,RP1
graba_eeprom:
clrf adress
bcf STATUS,RP0
bsf STATUS,RP1
movlw adress
movwf EEADR
bcf STATUS,RP0
bcf STATUS,RP1
movf aux2,w
bcf STATUS,RP0
bsf STATUS,RP1
movwf EEDATA
bsf STATUS,RP0
bsf STATUS,RP1
bcf EECON1,EEPGD
bsf EECON1,WREN
bcf INTCON,GIE
movlw 0x55
movwf EECON2
movlw 0xaa
movwf EECON2
bsf EECON1,WR
wee1:
btfsc EECON1,WR
goto wee1
bcf INTCON,EEIF
bcf EECON1,WREN
bcf STATUS,RP0
bcf STATUS,RP1
bsf INTCON,GIE ;
return
Los registros AUX son lo que utiliza cada uno en el programa para pasar los datos
Saludos
Jorge
-
Hola:
He trabajado bastante con las lecturas/escrituras de la eeprom ,traidas originalmente de un F84 ,tanto en Plus como en Pro y jamas he tenido un solo problema,claro esta nunca lo he hecho "a pedal" como por alli lo llaman los amigos.
Todo esto lo hago en un F628 y F627 que trabaja como controlador por I2C de sintonizador de satelite y constantemente el programa graba o lee las memorias que quiero recordar sin ningun inconveniente,es mas sospecho que el 628 puede llegar a tener algo mas de 128 de eeprom,solo una vez por error le adjudique mas de 128 bits (9 posiciones word(16bits c/u) )y funciono memorizando 9 posiciones de memoria de 16 bits c/u,luego lo corregi cuando me di cuenta del error y nunca mas se lo volvi a provocar a drede a ver que pasaba pero siempre me quedo la duda tal vez lo vuelva a provocar,
Suerte y considera volver por estos lados PLUS o PRO tendras mas tiempo libre y menos dolor de cabeza... como decian por alli las maquinas estan para aliviarnos problemas ,entonces que ellas lo resuelvan ya que deben estar a nuestro servicio
Saludos
khasistos
-
Hola a todos, yo tambien grabe en la eeprom por primera vez con el pbp, y nunca algo me costo tan poco
.
No lo que queria decir es que READ posicion,var ocupa 8 word si mal no recuerdo, al igual que write, ¿cuanto ocupa hacer eso en asm?
-
Hola, es correcto, al trabajar en lenguajes de alto nivel, ellos solos se posicionan en el banco en que se encuentra el registro.... en asembler, se hace a pedal je je..., pero se ahorra mucha memoria..
vamos a un ejemplo, si colocan un input, el pbp setea dicho pin como entrada.... con lo cual, cada vez que pasa por el imput, la esta reasignando.... si colocamos varios input, ocurrira lo mismo
en asm, yo se cuando lo asigno, y con una sola vez es suficiente...
por ejemplo, para realizar una lectura rs232 e imprimir en un lcd... me trago el k del f84.... en asm se ocupa menos de la mitad....
pero tambien es una cuestion de tiempo, en pbp creas el programa muy rapidamente y facil....
pero si ya tienes creadas tus principales rutinas en asm... ocurre lo mismo, es una cuestion de costumbre....
yo estoy con un proyecto, con tantas funciones, que seria imposible pensarlo en basic..., o tendria que pasar a un micro muy grande=mas costo!

pero en definitiva, luego de trabajar con el 628, me agrada mas que el f84!!!!
Norberto