Hallo zusammen,
ich habe Probleme beim Zugriff auf eine Variable, welche an mehreren
Stellen verwendet wird.
Ich habe eine Datei config.h . In dieser habe ich die Variable
definiert:
1 | static volatile unsigned char VAR= 3;
|
Dann habe ich eine Datei isr.c, in der ich eben die Interrupts
untergebracht habe. Als Beispiel:
1 | ISR(INT6_vect)
|
2 | {
|
3 | VAR= 1;
|
4 | }
|
In der main.c steht Folgendes:
1 | while(1)
|
2 | {
|
3 | switch(Var)
|
4 | {
|
5 | case 0: LED_PORT_PORT ^= ( 1 << PA0 );
|
6 | VAR = 3;
|
7 | break;
|
8 |
|
9 | ...
|
10 | ...
|
11 | }
|
12 | }/* while(1) */
|
In der main.c und isr.c wird die config.h eingebunden:
Allerdings tut sich da gar nix. Wenn ich die Zeile
1 | LED_PORT_PORT ^= ( 1 << PA0 );
|
direkt in die ISR schreibe, funktioniert es. Irgendwas passt nicht bei
der Übergabe der Variable VAR.
Blickt da jemand durch und sieht vielleicht, was ich da falsch mache?
Besten Dank!
Steffen