Hola como están todos? antes que nada me presento, me llamo Luciano y hoy me registre en el foro ya que en otro de una famosa T ya no entraba nadie y bueno, recomendaron este y acá estoy. Hay mucha info super interesante que sin perder tiempo ya arranque a leer!
No esta demás aclarar que soy un aficionado con conocimientos de algunos lenguajes de programacion pero con muy bascios conocimientos en electrónica.
Bueno pasada mi presentación viene el pedido.
Seguramente lo que busco este en el foro en algún lado porque es bien básico pero nose ni como buscarlo.
Quiero guardar un dato numérico de un dígito en la eeprom del chip 16f84A, encontré esta función WRITE y también READ pero al usarlas como indica la ayuda (breve) que tiene el Microcode Studio compilo y todo bien pero a la hora de querer guardar el dato en la simulación con ISIS falla.
El error que muestra el ISIS al presionar el botón de guardado:

error.jpg(74.04 kB, 755x251 - visto 768 veces)El diagrama:
El código:
DEFINE osc 4 'Definimos la frecuencia
allDigital
TRISA.0 = 1 'Puerto A como entrada
TRISA.1 = 1
TRISA.2 = 1 'Puerto A como entrada
TRISA.3 = 1
TRISB = 0 'Puerto B como salida
DIGITO var Byte 'declaramos la variable digito
PORTB = 63 'Muestra el numero cero en el display
digito = 0 'Inicializamos digito en cero
MAIN:
;GRABAR
IF PORTA.2 = 0 THEN 'Si RA.2=1 hacemos grabe el digito actual
write 0, digito
pause 100
Endif
;LEER
If PORTA.3 = 0 Then'Si RA.3=1 leemos la informacion y la mostramos en el display
;read 0, digito
pause 100
Endif
IF PORTA.0 = 0 THEN 'Si RA.0=1 hacemos lo siguiente
pause 100
If digito = 10 Then
digito = 0
Endif
If digito <= 10 Then
pause 100
digito = digito + 1
LookUp digito, [$3f, $06, $5b, $4f, $66, $6d, $7d, $07, $7f, $6f, $3f], PORTB
Endif
Endif
If PORTA.1 = 0 Then'Si RA.1=1 hacemos lo siguiente
pause 500
If digito = 0 Then
digito = 10
Endif
If digito >= 0 Then
pause 500
digito = digito - 1
LookUp digito, [$3f, $06, $5b, $4f, $66, $6d, $7d, $07, $7f, $6f], PORTB
Endif
Endif
Goto MAINOjala puedan ayudarme, la idea de esto es un simple turnero digital (turnero tipo farmacia) donde si se apaga por error el turnero que vuelva a encender en el ultimo numero que se había visto.
Gracias de antemano!
Lucho.