Moin, habe eine kurze frage und zwar würde ich gerne wissen wie die verschiedenen Arten der Variablen Deklaration im RAM behandelt werden. Im einzelnen static global in der main global in einem anderen file Hintergrund ist der das ich meinen Speicherplatz im RAM ein wenig optimieren muß aber im Augenblick nicht weiß wie ich z.B. einen Zählerstand der als static deklariert ist anders merken kann.
Tobias wrote: > Moin, > habe eine kurze frage und zwar würde ich gerne wissen wie die > verschiedenen Arten der Variablen Deklaration im RAM behandelt werden. > Im einzelnen > static > global in der main > global in einem anderen file > > Hintergrund ist der das ich meinen Speicherplatz im RAM ein wenig > optimieren muß aber im Augenblick nicht weiß wie ich z.B. einen > Zählerstand der als static deklariert ist anders merken kann. Gar nicht. Die von dir genannten Variablen landen letztendlich alle im SRAM. Es gibt ja auch sonst keine Möglichkeit, wo noch etwas gespeichert werden könnte. Man könnte allerdings auf das EEPROM ausweichen. Wie dieses angesteuert wird, findest du im AVR-gcc Tutorial.
jo, der einzige Unterschied zwischen static und global ist, dass die static-Variable nur in dem Modul ansprechbar und gültig ist, in dem sie declariert würde. Beide bekommen eine feste Adresse im RAM und damit ist dieser Speicherplatz nicht mehrfach nutzbar (wie sonst bei lokalen Variablen üblich).
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.