Bitdeklaration global verwenden

OP #1246135
Lesenswert?
• ▲
▼
Hallo Leute ich habe einen PIC24 und möchte die IO Bits mit Namen 
versehen ich habe mit eine Funktion gemacht die wie folgt ausschaut:

void initOutputs(void){        // Bit = 0 -->  Ausgang      Bit = 1 --> 
Eingang
  //IO_ENPO=0;    _TRISG0=0;
  IO_ISD00=0;    _TRISG1=0;
  IO_CW=0;    _TRISG7=0;
  IO_CCE=0;    _TRISG8=0;
  IO_mode_out=0;  _TRISG12=0;
}//initOutputs

void initInputs(void){        // Bit = 0 -->  Ausgang      Bit = 1 --> 
Eingang
  IO_SignalA=0;  _TRISG2=1;
  IO_SignalB=0;  =TRISG3=1;
  IO_mode_in=0;  _TRISG9=1;
  IO_Start_REC=0;  _TRISG14=1;
  IO_E_Stop=0;  _TRISG15=1;
}//initOutputs

wenn ich jetzt im hauptprogramm, nachdem ich diese funktionen aufgerufen 
Habe einen der Variablennamen eingebe, bekomme ich einen Fehler, dass es 
nicht deklariert wäre, wie bekomme ich es hin, dass dies nicht mehr 
passiert? danke schon mal.
OP #1246144
Lesenswert?
• ▲
▼
Habe die Deklaration jetzt so gemacht:


void initOutputs(void){        // Bit = 0 -->  Ausgang      Bit = 1 --> 
Eingang
  #define IO_ENPO _RG0
  IO_ENPO=0;    _TRISG0=0;
  #define IO_ISD00 _RG1
  IO_ISD00=0;    _TRISG1=0;
  #define IO_CW _RG7
  IO_CW=0;    _TRISG7=0;
  #define IO_CCW  _RG8
  IO_CCW=0;    _TRISG8=0;
  #define IO_mode_out _RG12
  IO_mode_out=0;  _TRISG12=0;
}//initOutputs

void initInputs(void){        // Bit = 0 -->  Ausgang      Bit = 1 --> 
Eingang
  #define IO_SignalA _RG2
  IO_SignalA=0;  _TRISG2=1;
  #define IO_SignalB _RG3
  IO_SignalB=0;  _TRISG3=1;
  #define IO_mode_in _RG9
  IO_mode_in=0;  _TRISG9=1;
  #define IO_Start_Rec _RG14
  IO_Start_Rec=0;  _TRISG14=1;
  #define IO_E_Stop _RG15
  IO_E_Stop=0;  _TRISG15=1;
}//initInputs

geht aber im Main immer noch nicht, helft mir bitte ;-)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren