Hallo,
ich habe das Problem: Ich habe in einem Programm eine globale Variable
(in einer Headerdatei definiert). Diese Headerdatei binde ich in 2
Modulen (main.c und UART.c) ein, damit ich aus beiden Modulen auf die
Variable zugreifen kann.
Diese Variable wird in der while(1)-Schleife in der main()-Funktion
abgefragt. Je nach Wert der Variablen soll dann eine LED leuchten oder
nicht.
Wenn ich aber jetzt aus dem anderen Modul (UART.c) diese Variable
ändere, hat dies keine Auswirkung auf den Wert der Variablen. Der Wert
bleibt immer so, wie er am Anfang des Programms initialisiert wurde.
Kann mir da einer helfen?
Hier der Teil in dem die Variable gepollt wird:
main.c:
1 | while(1)
|
2 | {
|
3 | _delay_ms(1000);
|
4 | if (StatusPin_Aktiv != 0)
|
5 | {
|
6 | StatusPin = !StatusPin;
|
7 | }
|
8 | else
|
9 | {
|
10 | StatusPin = LED_AUS;
|
11 | }
|
12 | }
|