Hallo,
ich habe ein kleines Problem.
In meinem Projekt habe ich in AVR Studio 4 mehrere Sourcefiles angelegt.
Ich habe jedoch einige globale Variabeln, die verschiedene Funktionen
aus mehreren Sourcefiels benutzen.
Bis jetzt habe ich diese in einem eigenen Header-File abgelegt.
Wenn ich das Headerfile jetzt aber in die Sourcefiles einbinde, bekomme
ich die Meldung, dass die Variabeln mehrfach definiert sind.
Nehme ich das Headerfile, aus den Sourcefiels heraus, die Probleme
verursachen, bekomme ich die Meldung, dass die Variabeln cniht definiert
sind.
Kann mir da jemand helfen?
--- Auschnitt aus dem Headerfile ---
1 | // ----------------------------------------------------------------
|
2 | // GLOBALE VARIABELN
|
3 | // ----------------------------------------------------------------
|
4 |
|
5 | // ----------------------------------------------------------------
|
6 | // INCLUDES
|
7 | #include <inttypes.h>
|
8 | // ----------------------------------------------------------------
|
9 |
|
10 | #ifndef VARS_H
|
11 | #define VARS_H
|
12 | // ----------------------------------------------------------------
|
13 | // STURKTUREN
|
14 |
|
15 | // Farbstruktur
|
16 | struct color_struc{
|
17 |
|
18 | ...
|
19 |
|
20 | };
|
21 |
|
22 | // Zeit-Struktur
|
23 | struct time_struc{
|
24 |
|
25 | ...
|
26 |
|
27 | };
|
28 | // ----------------------------------------------------------------
|
29 |
|
30 |
|
31 | // ----------------------------------------------------------------
|
32 | // GLOBALE VARIABELN
|
33 | uint8_t flash_time = 0;
|
34 |
|
35 | ...
|
36 |
|
37 | // Eigene Struktutvariabeln
|
38 | struct time_struc timestamp;
|
39 |
|
40 | ...
|
41 |
|
42 |
|
43 | struct color_struc led_color;
|
44 |
|
45 | ...
|
46 |
|
47 | // ----------------------------------------------------------------
|
48 |
|
49 | #endif
|
--- Die Fehlermeldung ---
pcf8583.o: In function `get_year':
D:\1_personal
files\4_programme\3_atmel\dev\MP3_Wecker\default/../pcf8583.c:35:
multiple definition of `flash_time'
firmware.o:D:\1_personal
files\4_programme\3_atmel\dev\MP3_Wecker\default/../firmware.c:47: first
defined here
Das Headerfile ist sowohl in firmware.c und pcf8583.c über
eingebunden