# Declaración de Variables en MPLAB



## Andrés D (Feb 19, 2010)

Hola, recientemente me actualicé al MPLAB 8.46 y me doy cuenta que al declarar variables con *CBLOCK* o *EQU*, las etiquetas de éstas ya no aparecen en la ventana *"File Registers"* *(Symbol Name)**.* Me podrian decir cómo soluciono esto?

También quisiera poder declarar variables secuencialmente, asi:

*VAR_01 EQU h'20'*
*VAR_02 EQU h'21'
**VAR_03 EQU h'22'
....

PERO CON CBLOCK

*He intentado de la forma:

CBLOCK h'20'
     VAR:d'5'
     ENDC

Pero sólo me muestra la etiqueta de la primera variable.

Espero me puedan ayudar.

Gracias


----------



## Dpineda (Feb 19, 2010)

tienes que darle un espacio y ubicarlas en la segunda columna.

en vez de 
cblock

prueba cn

     <spacios>cblock
     <spacios>endc


----------



## Andrés D (Feb 19, 2010)

Si, las directivas están en la segunda columna...

Alguien mas tiene sugerencias??


----------



## rafalloelo (Feb 21, 2010)

Luego de:

        LIST P=......
        INCLUDE<......

pones:

        CBLOCK	0x20

        DATO1
        DATO2
        .....
(todas las variables que deseas definir y luego pones)

        ENDC

luego continuas

	ORG	0

        ......

Pero escribes las instrucciones a partir de la segunda columna, claro.
Espero me hayas entendido.


----------



## Andrés D (Feb 26, 2010)

Si, pero que pasa si quiero declarar 60 variables...

CBLOCK h'20'
      VAR_01
      VAR_02
      VAR_03
      VAR_04
          .
          .
          .
          .
          .
      VAR_60
ENDC

Quisiera evitar escribir todo eso, además en la ventana "File Registers" no aparece sino la etiqueta VAR_01, y si quiero saber el valor de VAR_20 me toca contarlas para encontrarla....


----------



## foso (Jun 2, 2010)

Alguien me podría explicar un poco el tema de las variables en Mplab. Miro en la ayuda del programa pero la verdad es bastante pobre la información.

Yo lo que quiero es grabar una serie de constantes en la RAM del microcontrolador y luego, en el desarrollo del programa utilizar estas variables por el nombre que yo le puse en vez de tener que poner la dirección de la misma.

Quiero saber como grabo una constante en la posición que yo quiera.

Bueno gracias.


----------



## cerebroo (Jun 2, 2010)

Grabas una constante de la sigueinte manera.

Constante    EQU   0x08

donde 0x08 es la posicion de la memoria donde dejaras grabada la constante.
Estas declaraciones deben ir al inicio del programa, justo antes del ORG 0x00


----------



## foso (Jun 2, 2010)

gracias cerebro, pude hacerlo. Ahora tengo otra duda que es sobre macros, pero creo que la voy a preguntar en otro post que hable de eso. Saludos.


----------

