Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

22/04/2016 #1

Avatar de armr

Problema con instrucción MOVFF (PIC18F4550)
Colegas,

¿Conoce alguno de ustedes acerca de algún problema, de esos raros, alrededor de la instrucción MOVFF en un PIC18F4550?

Llevo ya más de quince años programando PICs a puro ensamblador, pero no doy con esto que les expongo a continuación. A lo mejor alguno de ustedes tiene una idea de por dónde está viniendo el problema. A lo mejor -ojalá- estoy cometiendo alguna estupidez en alguna parte, pero de veras no la veo.

LA dichosa instrucción parece "transparente". La uso para salvar el contenido de un FSRn a una variable en RAM y es como si no hubiera instrucción: contenido 00h. Igual, la uso para pasar el contenido de una variable X a una posición de RAM a través de un INDFn, y nada: 00h.

Y al parecer, ese problema se me manifiesta en cierta parte del código (quiero pensar que de la Memoria de Programa), pues a lo largo del programa uso muchas veces esa instrucción sin ningún problema...

Si hago las mismas funciones a través de W (MOVF nnn, W y MOVWF), todo perfecto.

Le he buscado la quinta y hasta la sexta pata al gato a través del datasheet y de cuanto foro he visto en internet, y nada. En un post http://www.microchip.com/forums/m34913.aspx de hace ¡12 años! alguien mencionaba un tema muy parecido, pero todo se quedó ahí. No he visto nada al respecto en ningún documento de Errata.

Gracias y un saludo cordial desde México. ...
22/04/2016 #2
Moderador

Avatar de D@rkbytes

Saludos.
Para que puedas recibir colaboración sobre tu problema, es necesario que adjuntes tu código.
23/04/2016 #3

Avatar de JoaquinFerrero

Lo que he encontrado... es una rara circunstancia, entre la instrucción MOVFF y las interrupciones (sección 4).

Podría darse el caso de que, justamente esa dirección de memoria esté estropeada, pero vamos, sería algo extraordinario. Esto lo podrías saber modificando ligeramente el programa, poniendo instrucciones GOTO $+1 antes o después de donde te falla.
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.