Autor Tema: Variable  (Leído 2343 veces)

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

Desconectado zer0007

  • PIC16
  • ***
  • Mensajes: 106
Variable
« en: 23 de Junio de 2005, 03:29:00 »
Hay alguna manera de usar una variable de un modulo dentro de otro (declararla en uno pero poder usarla en el main.
Gracias

Desconectado omix

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 244
RE: Variable
« Respuesta #1 en: 23 de Junio de 2005, 03:37:00 »
Si es posible solo tienes que declararla en el modulo como haces normalmente y en el otro modulo la declaras como extern, para que puedas tener acceso a ella. Por ejemplo si tienes en modulo.c una variable declarada asi: char mivariable; en el main.c tendrias que poner extern char mivariable; y con eso tendrias acceso a la variable declarada en el modulo.c.

Un saludo.

Desconectado zer0007

  • PIC16
  • ***
  • Mensajes: 106
RE: Variable
« Respuesta #2 en: 23 de Junio de 2005, 03:43:00 »
Muchas gracias

Desconectado roc364

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 108
RE: Variable
« Respuesta #3 en: 23 de Junio de 2005, 14:10:00 »
Tambien podes declarar una variable afuera de cualquier funcion, y esta pasara a ser una variable global, es decir la misma para cualquier funcion que la use.

por ejemplo:

#include <16F84a.h>
#use delay(clock=10000000)
#fuses XT,NOWDT

long ppr;
long contador;                  //estas son variables GLOBALES

void tirar_pulso(void)  
{
   output_bit (pin_A0,1);
   delay_ms (100);
   output_bit (pin_A0,0);
}


#int_ext
void contar_pulsos()
{
   if (input(pin_a2)) contador++;      
   output_bit (pin_b1,!input(pin_a2));
   output_bit (pin_b2,input(pin_a2));  
}


void main()
{
   //setup_counters(RTCC_INTERNAL,RTCC_DIV_2);
   ext_int_edge( L_TO_H );
   enable_interrupts(INT_ext);
   enable_interrupts(GLOBAL);

   ppr = 370;    
   contador = 0;

   while (true)
   if (contador >= ppr)
      {
         contador = 0;
         tirar_pulso();
      }
}
Hay solo 10 tipos de personas, los que entienden el codigo binario, y los que no.

Viva La Patagonia Argentina!!

Desconectado RaDoN

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1498
RE: Variable
« Respuesta #4 en: 24 de Junio de 2005, 13:37:00 »
Yo uso por ejemplo para los "for", la variable contador, digamos "i" de manera global, asi se ahorra memoria al poder usarlas en todas las funciones, o eso creo no? Flash
Si juegas contra el mejor, pierdes como los demás.