Forum: Mikrocontroller und Digitale Elektronik globale Variaqblendeklaration


von Matthias H. (maethes26)


Lesenswert?

Guten Abend zusammen,

würdet ihr so nett sein und mich bei folgender Unklarheit aufklären?

ich habe noch in dem Teil, bevor das Hauptprogramm beginnt (Headerteil?, 
dort wo die 'defines stehen) zwei Variablennamen deklariert.


uint16_t eeMinwert EEMEM = 10;
unsigned short int  eeMaxwert EEMEM = 1010;


unsigned short int myByte1,myByte2;;

 //um die EEpromwerte auszulesen, werden in mehreren Funktionen 
gebraucht


im Hauptprogramm lese ich die EEPromwerte aus und speichere sie in den 
beiden Variablen.

myByte1=eeprom_read_word(&eeMinwert); //lcd_writezahl(2,17, myByte1);
myByte2=eeprom_read_word(&eeMaxwert); //lcd_writezahl(3,17, myByte2);

nun wundert es mich, dass ich die Variablen myByte1 und zwei nicht in 
einer anderen Funktion sehen kann.
Die Werte von myByte1 stimmen in der Funktion nicht mit dem eigentlich 
eingelesen Wert im Hauptprogramm überein.

Ich dachte, diese Variablen myByte1 habe ihc global für alle sichtbar 
deklariert.

Könnt ihr mir dabei helfen?


Vielen Dank im voraus und viele Grüße,

Matthias.

von Karl H. (kbuchegg)


Lesenswert?

Matthias H. schrieb:


> Könnt ihr mir dabei helfen?

Zeig den kompletten Code, oder zumindest etwas mit mehr Zusammenhang.

von Matthias H. (maethes26)


Lesenswert?

Karl Heinz Buchegger schrieb:
> Matthias H. schrieb:
>
>
>> Könnt ihr mir dabei helfen?
>
> Zeig den kompletten Code, oder zumindest etwas mit mehr Zusammenhang.

Hi,

den kopiere ich morgen zusammen. Ist jetzt noch zu viel Arbeit, um das 
übersichtlich darzustellen.

Viele Grüße und bis morgen.

von Karl H. (kbuchegg)


Lesenswert?

Eine Erklärung wäre, dass du die globale Variable mit einer lokalen 
Variable gleichen Namens verdeckt hast.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.