Saludos a todos,
Bueno alguna vez probe desviar un programa teniendo dependiendo de un valor cargado en un registro, y me funciono bien, pero ahora no me funciona bien y no se porque, las desviaciones a donde debo llegar estan bastante lejanas pero no si la Instruccion GOTO se afecta por la paginacion de la memoria de programa, cuando se hace con el PCL se que se debe tener en cuenta pues solo se puede modificar la parte baja del PCL, alguien mepuede decir a que se debe el fallo o que otra forma puedo usar para desviar el programa teniendo dependiendo del valor en un registro, las desviaciones son dos dependiendo del valor del Reg CIclo y el Reg frecuencia aca adjunto parte del programa que me hace doler la cabeza, de antemano gracias por la ayuda. los errores al compilar son ARGUMENTO FUERA DE RANGO y DIRECCION DE MEMORIA EXCEDE ESTE PROCESADOR
el PIC es el 16f84a
ACTUAREG movf frecuencia,0
addwf PCL,1 ;salto al sitio adecuado
nop
goto fre75 ;VOY A FRECUENCIA 7.5hz
goto fre15 ;VOY A FRECUENCIA 15hz
goto fre30 ;VOY A FRECUENCIA 30hz
goto fre60 ;VOY A FRECUENCIA 60hz
goto fre120 ;VOY A FRECUENCIA 120hz
;-----------------------------------------------------------------------------------------------
fre75 movf Ciclo,0
addwf PCL,1
nop
goto fre7505 ;voy a 7.5Hz y 5%
goto fre7510 ;voy a 7.5Hz y 10%
goto fre7515 ;voy a 7.5Hz y 15%
goto fre7520 ;voy a 7.5Hz y 20%
goto fre7525 ;voy a 7.5Hz y 25%
goto fre7530 ;voy a 7.5Hz y 30%
goto fre7535 ;voy a 7.5Hz y 35%
goto fre7540 ;voy a 7.5Hz y 40%
goto fre7545 ;voy a 7.5Hz y 45%
goto fre7550 ;voy a 7.5Hz y 50%
goto fre7555 ;voy a 7.5Hz y 55%
goto fre7560 ;voy a 7.5Hz y 60%
goto fre7565 ;voy a 7.5Hz y 65%
goto fre7570 ;voy a 7.5Hz y 70%
goto fre7575 ;voy a 7.5Hz y 75%
goto fre7580 ;voy a 7.5Hz y 80%
goto fre7585 ;voy a 7.5Hz y 85%
goto fre7590 ;voy a 7.5Hz y 90%
goto fre7595 ;voy a 7.5Hz y 95%