Autor Tema: Macros con parametros  (Leído 1776 veces)

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

Desconectado dioskamisama

  • PIC10
  • *
  • Mensajes: 9
Macros con parametros
« en: 16 de Enero de 2006, 21:57:00 »
Hola, queria saber como hacer para pasar parametros como variables a un macro. He intentado infructuosamente, y solo funciona como literales o constantes. Cuando quiero reusar el parametro con movf xxx,w me sale algo asi
Invalid RAM location specifiedY solo puedo usar lo siguiente

EsperarSegundos macro xsegundos
              movlw xsegundos
              movwf datosrutinaXXX

Mientras que por ejemplo para enviar un registro asi
rodolfo=100
EsperarSegundos RODOLFO
Lo que esperaria seria la posicion de memoria de la variable rodolfo y no el 100
En internet figura que se cambia el movlw por movf x,W. Pero me sale ese error en tiempo de compilacion

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
RE: Macros con parametros
« Respuesta #1 en: 17 de Enero de 2006, 09:46:00 »
Hola, si es que te entendi bien, aca te paso la solucion.

EsperarSegundos    macro xsegundos
      movf   xsegundos,w  ;aqui W = .100 (el valor que contiene Rodolfo)
      movwf datosrutinaXXX
                                ...
      endm

      movlw   .100         
      movwf   Rodolfo         ;cargo a la variable rodolfo con el valor .100
      EsperarSegundos Rodolfo
                                ...
Saludos.
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.