Autor Tema: eeprom 16F628A con mikrobasic  (Leído 6282 veces)

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

Desconectado javi_tronico

  • PIC10
  • *
  • Mensajes: 8
eeprom 16F628A con mikrobasic
« en: 14 de Agosto de 2008, 15:03:41 »
Hola de nuevo, tengo un problemilla que haber si alguien me puede ayudar con el. Estoy haciendo pruebas con  el PIC 16F628A y no consigo escribir en la eeprom de dicho PIC. Sin embargo ese mismo programa lo adapto para el 16F84A y me funciona sin problemas.
Yo pruebo los programas con el PIC SIMULADOR IDE que nunca me ha fallado para este tipo de cosas. Lo unico que se es que el 16F628A al poseer comparadores hay que poner una linea de programa que diga CMCON=7 para desactivarlos pero por mucho que he buscado por ahi no he encontrado mas informacion sobre si hay que desactivar o activar mas cosas en dicho PIC, muchas gracias.

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: eeprom 16F628A con mikrobasic
« Respuesta #1 en: 14 de Agosto de 2008, 15:07:16 »
Generalmente existen las instrucciones para grabar en la eeprom. Podrias mostrar tu codigo para checar.

Y lo podrian mover al subforo de PBP porfavor mods globales.
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado javi_tronico

  • PIC10
  • *
  • Mensajes: 8
Re: eeprom 16F628A con mikrobasic
« Respuesta #2 en: 14 de Agosto de 2008, 17:13:21 »
Hola navaismo, el codigo es el siguiente:



program garbar_eeprom


dim a as byte

main:
cmcon=7

for a = 0 to 10
eeprom_write (a,a)
next a


end.


Sin embargo, si le quitas la linea CMCON=7 que es para desactivar los comparadores del 16F628A, el programa lo ejecutas en un 16F84A y funciona correctamente, es decir en la posicion 0 graba u 0, en la 1 un 1............ Gracias por responder.

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: eeprom 16F628A con mikrobasic
« Respuesta #3 en: 14 de Agosto de 2008, 17:39:19 »
Creo que tienes que esperar un tiempo para poder grabar en las eeprom 10ms si no mal recuerdo.
Por lo demas no veo problemas mira esto esta en Proton y simualdo en ISIS y funciona pasalo a tu lenguaje.

Código: FreeBasic
  1. Device=16F628A
  2. XTAL=4
  3. ALL_DIGITAL=true
  4.  
  5. Dim i As Byte
  6.  
  7. loop:
  8.  For i=0 To 10
  9.  EWrite i,[i]
  10.  DelayMS 20
  11.  Next i
  12. GoTo loop
  13. End

Espero te sirva
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado Marioguillote

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 1926
    • Servisystem
Re: eeprom 16F628A con mikrobasic
« Respuesta #4 en: 14 de Agosto de 2008, 19:11:09 »
Hola !

Prueba de quitar el CMCON de adentro del main y pónlo antes de declarar las variables.
Es decir :

cmcon=7

dim a as byte

main:

for a = 0 to 10
eeprom_write (a,a)
next a

end.

Saludos
Mario