Variable deklarieren die aus anderen Sources erreichbar ist

OP (Firma: google) #2132132
Lesenswert?

Hallo,

ich programmiere in C einen Atmega128.
wie der betreff schon sagt, brauche ich eine Variable die über "main.c" 
hinausgeht damit ich sie in einer weiteren C-Datei ausgeben kann.

Das Problem ist folgendes:
ich habe den Webserver vom Ulrich Radig, ich habe aber in der cmd.c / 
cmd.h einen Befehl hinzugefügt, der mir einige Variablen per RS232 
ausgeben soll.

nur werden diese Variablen in der main.c errechnet und ich habe aus der 
cmd.c keinen Zugriff auf diese Variablen.

der Befehl in der cmd.c nennt sich folgendermaßen:
//---------------------------------------------------------------------- 
--------
// Status von Heizung ausgeben
void command_status (void)
{
  usart_write ("\n\rstatus %d;%d;%d\r\n",temp_boiler,temp_ofen,pumpe);
}
//---------------------------------------------------------------------- 
--------

ich habe auch schon an Zeiger gedacht, aber irgendwie ist das auch nicht 
das richtige und eine "globale" Variable geht auch nicht (sollte sie das 
nicht?)
ich habe alle meine Variablen ausserhalb der main() deklariert.

Die Fehlermeldung vom WINAVR sieht dann folgendermaßen aus:
cmd.c: In function 'command_status':
cmd.c:339: error: 'temp_boiler' undeclared (first use in this function)
cmd.c:339: error: (Each undeclared identifier is reported only once
cmd.c:339: error: for each function it appears in.)
cmd.c:339: error: 'temp_ofen' undeclared (first use in this function)
cmd.c:339: error: 'pumpe' undeclared (first use in this function)

wäre sehr dankbar für eine antwort von euch!!!
Angehängte Dateien:

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