Autor Tema: PIC 16f 628 no graba la eeprom  (Leído 6443 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado pietrodilaccua

  • PIC10
  • *
  • Mensajes: 46
PIC 16f 628 no graba la eeprom
« en: 05 de Agosto de 2004, 21:42:00 »
hola amigos,

para unos desarrollos me cambie del  16f873 al 16f628, me recomendaron este chip por tener muchas prestaciones y es muy barato en encapsulado de 18 patitas.?????????.
El tema es que al tratar de grabar datos en la eeprom, no lo hace, he buscado todas las alternativas posibles pero el chip no responde en lo que es la grabacion en eeprom. He trabajado bastante en el manejo de datos en eeprom con otrosl chips, pero con este no funciona ,
 si alguien conoce algo de este tema con respecto a este chip le agradecere la informacion.

saludos amigos ...  pietrodilaccua

Desconectado RGL

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 634
RE: PIC 16f 628 no graba la eeprom
« Respuesta #1 en: 06 de Agosto de 2004, 02:22:00 »
La EEPROM del chip funciona perfectamente, deberás revisar las rutinas de grabación. Yo no he tenido ningún problema con esto y he utilizado muchos de estos.

Saludos
Ricky
Madrid-España

Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
RE: PIC 16f 628 no graba la eeprom
« Respuesta #2 en: 06 de Agosto de 2004, 11:56:00 »
Hola Pietro,  en que lenguaje programas?, si es en asembler, ten cuidado, porque estan en otro banco de memoria... , a mi me ocurrio....

suerte

Norberto
Firmat - Santa Fe - Argentina

www.TodoPic.net

Solo se tiran piedras, al arbol que tiene frutos...

Desconectado pietrodilaccua

  • PIC10
  • *
  • Mensajes: 46
RE: PIC 16f 628 no graba la eeprom
« Respuesta #3 en: 06 de Agosto de 2004, 13:10:00 »
RICKY,
           OK REVISARE MIS RUTINAS , PERO CREO QUE EL PROBLEMA ESTA POR LA INDICACION DE NORBERTO,  YO TRABAJO SOLO EN ENSAMBLADOR  Y HE SEGUIDO TODAS LAS INDICACIONES DEL DATA SHEET SUMINISTRADO POR EL FABRICANTE MICROCHIP Y NADA.

NORBERTO TE AGRADECERE SI ME INDICAS EL BANCO EN QUE MANEJO LA EEPROM Y EL PROCEDIMIENTO GENERAL PARA ACCEDER.

SALUDOS AMIGOS

PIETRODILACCUA

Desconectado pietrodilaccua

  • PIC10
  • *
  • Mensajes: 46
RE: PIC 16f 628 no graba la eeprom
« Respuesta #4 en: 07 de Agosto de 2004, 09:51:00 »
HOLA DE NUEVO AMIGOS, LE INDICO LA RUTINA QUE ESTOY USANDO PARA ESCRIBIR LA EEPROM DEL 16F628.

HE DEFINIDO EN EL ENCABEZAMIENTO DEL PROGRAMA LOS REGISTROS EEDATA, EEADR, EECON1 Y EECON2 EN LAS DIRECCIONES 1A,1B,1C,Y 1D RESPECTIVAMENTE PARA SU USO EN EL BANCO 1 QUE ES DONDE SE LOCALIZAN.
LUEGO  A PARTIR DE 2OH EN EDELANTE HE DEFINIDO DOS REGISTROS QUE SON:
DATA_EEPROM; USADO PARA PONER LOS DAOS QUE ALMACENARE EN EEPROM Y
ADRES_EEPROM ; USADO PARA ALMACENAR LA DIRECCION A LA QUE ACCEDERE EN LA EEPROM.

FINALMENTE LA SUBRUTINA SE LLAMA GRABA_ EEPROM:

GRABA_EEPROM
          BSF         STATUS,RPO               ;BANCO1
          MOVF      ADRES_EEPROM,W     ; CARGO LA DIRECCION
          MOVWF   EEADR                        ; EN REGISTRO DE DIR.
          MOVF      DATA_EEPROM,W       ; CARGO EL DATO
          MOVWF   EEDATA                      ; EN REG DE DATOS
          BSF         EECON1,WREN           ; HABILITO ESCRITURA
          MOVLW   0X55                          ; SIGUE SECUENCIA DE WRITE
          MOVWF   EECON2                      
          MOVLW   0XAA
          MOVWF   EECON2
          BSF         EECON1,WR               ; INICIA ESCRITURA
          BCF         EECON1,WREN           ; CIERRO ESCRITURA
          BCF         STATUS,RPO               ; VUELVO A BANCO 0
          RETURN                                     ; Y RET AL PROG. PRINCIPAL

DONDE ESTA LO MALO AMIGOS???????,   NO SOY UN SUPER EXPERTO EN PICS PERO NO HE TENIDO PROBLEMAS CON NINGUN OTRO CHIP. ADEMAS HE SEGUDO TODAS LAS INDICACIONES DEL ULTIMO DATASHEET DE ESTE MICRO QUE SE ENCUENTRA EN LA PAGINA DE MICROCHIP.
AGRADECERE  SUS COMENTARIOS.

LINDO FIN DE SEMANA ....  PIETRODILACCUA.

Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
RE: PIC 16f 628 no graba la eeprom
« Respuesta #5 en: 07 de Agosto de 2004, 10:21:00 »
hola Pietro... esta es la rutina que empleo... ojo que empleo byte y direccion, y tu empleas data_eeprom y adres_eeprom... (solo cambian los nombres de los registros...)para el caso es lo mismo ok?
y ademas recuerda, luego de enviar a grabar, te quedas en un loop esperando que termine la grabacion,,,... con

ESCRCOMPL2
   BTFSC   EECON1,WR   ;BYTE ESCRITO?
   GOTO   ESCRCOMPL2
   BCF   STATUS,RP0

espero te sirva...

suerte

Norberto
Firmat - Santa Fe - Argentina

www.TodoPic.net

Solo se tiran piedras, al arbol que tiene frutos...

Desconectado pietrodilaccua

  • PIC10
  • *
  • Mensajes: 46
RE: PIC 16f 628 no graba la eeprom
« Respuesta #6 en: 07 de Agosto de 2004, 13:02:00 »
norberto, a la rutina que has visto ya le he agregado las instrucciones que mencionas pero tampoco funciona la grabacion, es decir pasa por el bit test del wr y yo asumo que ha terminado el ciclo de escritura ya que retorna al programa principal, de lo contrario se quedaria eternamente en este loop, pero al revisar las posiciones  de la eeprom estas estan en 00 y de grabacion ,nada.

en tu opinion, esta correcta la rutina que estoy usando????

estoy pensando en algun desperfecto en los chips.

saludos  pietrodilaccua


Desconectado Micom

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 782
RE: PIC 16f 628 no graba la eeprom
« Respuesta #7 en: 08 de Agosto de 2004, 01:03:00 »
Talvez no venga al caso pero ¿no sera que esta malo tu pic?
El programador GTP USB PLUS es un super programador
GRACIAS dobles amigo SISPIC

Tan solo queda seguir sobreviviendo

Desconectado pietrodilaccua

  • PIC10
  • *
  • Mensajes: 46
RE: PIC 16f 628 no graba la eeprom
« Respuesta #8 en: 08 de Agosto de 2004, 09:48:00 »
hola micom.
                     Gracias por tu atencion, te cuento que compre 4 de estos para no usar los f873 que son mas caros.
y los programas funcionan perfectamente bien entodos ellos, el tmr1 como reloj, la usart para transmitir algunos comandos, todos los i/o.. etc. pero en todos ellos no logro grabar la eeprom, ademas tengo programas funcionando en atros chips de la familia de los 16fXX y en todos no tengo problemas. he puesto la rutina que estoy usando para que alguien me indique si hay algun error, es basicamente la misma usada en otros chips con las diferencias logicas en la definicion de algunos registros de acuerdo al banco en que se localizan.
bueno amigos seguire en contacto para ver si resuelvo el problema.

saludos pietrodilaccua

Desconectado manex_1987

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1127
RE: PIC 16f 628 no graba la eeprom
« Respuesta #9 en: 08 de Agosto de 2004, 13:12:00 »
Sugiero que las eeprom convencionales tardan unos 10ms en completar las operaciones de escritura, podria ser eso tal vez? No vendria mal poner un bucle infinito despues del comando de escritura, que solo sea roto mediante la interrupcion de final de escritura en la eeprom.
salu2

Desconectado pietrodilaccua

  • PIC10
  • *
  • Mensajes: 46
RE: PIC 16f 628 no graba la eeprom
« Respuesta #10 en: 09 de Agosto de 2004, 19:48:00 »
bueno amigos , he hecho todo lo sugerido. incluso lo que sugiere manex esta señalado mas arriba, pero todavia nadie me ha indicado  si la rutina que he puesto anteriormente esta con algun problema.

seguire tratando de solucionar este lio, si alguien se le ocurre algo mas, bienvenido sea.

saludos a todos

petrodilaccua

Desconectado miltonmc

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 305
RE: PIC 16f 628 no graba la eeprom
« Respuesta #11 en: 12 de Agosto de 2004, 12:17:00 »
hola a todos
petrodilaccua trate de ensambrar el codigo que pusiste y tienes un error cuando cambias de banco ya que estas poniendo
BSF STATUS,RPO ;BANCO1
y estas mal cuando pones (RPO) ya que estas poniendo una O mayuscula y es un cero 0 (RP0) el mpasm da ese error
te voy a poner un pedazo de codigo que estoy usando en un proyecto donde grabo la eeprom

call   Delay
BSF    STATUS,RP0            ;
BCF    STATUS,RP1            ;
movlw   0x00                     ;direccion de la eeprom
movwf   EEADR                  
movlw   0x10                   ;datos que vamos a grabar   
movwf   EEDATA
BSF     EECON1,WREN           ;Permiso de escritura
BCF   INTCON,GIE
movlw   0x55
movwf   EECON2
movlw   0xAA
movwf   EECON2          ;Secuencia seg£n Microchip
BSF     EECON1,WR             ;Orden de escritura
BSF   INTCON,GIE
BCF     EECON1,WREN
 BCF    STATUS,RP0
movlw   0x00
movwf   EEADR           ;Posici¢n EEPROM
BSF    STATUS,RP0
BSF    EECON1,RD             ;Orden de lectura
BCF    STATUS,RP0            ;Selecci¢n banco 0
MOVF   EEDATA,W              ;datos en W

este codigo lo estoy usando en este momento
saludos a todos desde REP. DOM.
                                                                miltonmc

Desconectado pietrodilaccua

  • PIC10
  • *
  • Mensajes: 46
RE: PIC 16f 628 no graba la eeprom
« Respuesta #12 en: 13 de Agosto de 2004, 09:02:00 »
hola mi amigo.
es cierto yo uso RPO con "O" pero en el encabezamiento de mis programas  lo defino como: RPO EQU 5, y siempre me han funcionado perfectamente. En todo caso esta vez no solo use RP0 con "cero" sino que probe nuevamente con la rutina que me enviaste, teniendo en cuenta que es practicammente la la misma que yo uso, en mi caso, como puedes ver mas arriba,  la diferencia esta en que las direcciones y los datos yo los saco de dos registros pero en el fondo es lo mismo.
Y el resultado...????????...igual... siguen mis 16f628-04/P sin grabar la eeprom.   ha!!! ....y compre varios ...y todos funcionan perfectamente exepto por la eeprom que ninguno la graba.
...Creo que tendre que cocinarlos

agradecido de tu respuesta.

un saludo a todos   pietrodilaccua

Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
RE: PIC 16f 628 no graba la eeprom
« Respuesta #13 en: 13 de Agosto de 2004, 11:22:00 »
Hola Pietro, has probado en grabarlas en el mismo programa, es decir con tu programador?, asi sacamos la duda de que no funciona la eeprom?

por ejemplo, agrega en tu programa

         ORG H"2100"

   DE   4 ,1, 1, 1, 1, 1, 1, 1, 1, 0, 5,32, 32 ; 5  
   DE      0, 8, 0, 4, 0, 4, 0, 0,0A,0A, 0, 0


y luego lee la eprom...

avisa como fue...

Norberto
Firmat - Santa Fe - Argentina

www.TodoPic.net

Solo se tiran piedras, al arbol que tiene frutos...

Desconectado pietrodilaccua

  • PIC10
  • *
  • Mensajes: 46
RE: PIC 16f 628 no graba la eeprom
« Respuesta #14 en: 13 de Agosto de 2004, 21:43:00 »
Hola norberto,
he hecho un pqueño programa que contiene las instrucciones que me has indicado y una rutina de lectura que tengo que muestra las posiciones de memoria eeprom en un display a partir de la 00 .
solo grabe el programa y luego revise a partir de la 00.......,nada todo esta en cero.
otra prueba,...puse tambien estas instrucciones al final de mi programa, lo compile sin ningun problema y luego fui a leer la eeprom desde la 00 , nada tampoco la memoria sigue en 00.

he escrito lo que me has indicado sin saber bien que Significa "DE"
y me imagino que despues de ORG el H2100 debe referirse de alguna manera la direccion de la eeprom. si puedes te agradecere me lo expliques.

como ves mi amigo esto sigue misterioso.

saludos  pietrodilaccua


 

anything