Forum: Compiler & IDEs Große Variablen auslagern :: Arduino IDE


von Mike (Gast)


Lesenswert?

Hallo,

ich würde gerne in der Arduino IDE eine Reihe großer Variablen auslagern

Beispiel für eine Variablen:

byte Alex[] =
{ B11111111, B11111111, B11111111, B11111111, B11111111, B11111111, 
B11111111, B11111111, //LEER
  B10000001, B01110111, B01110111, B01110111, B10000001, B11111111, 
//A
  B01111101, B00000001, B11111101, B11111111, 
//l
  B11100011, B11010101, B11010101, B11010101, B11100111, B11111111, 
//e
  B11011101, B11101011, B11110111, B11101011, B11011101, B11111111, 
//x
  B11111111, B11111111, B11111111, B11111111, B11111111, B11111111, 
B11111111, B11111111, //LEER
  B11000011, B11111101, B11111101, B11111011, B11000001, B11111111, 
//u
  B11000001, B11101111, B11011111, B11011111, B11100001, B11111111, 
//n
  B11100011, B11011101, B11011101, B11101101, B00000001, B11111111, 
//d
  B11111111, B11111111, B11111111, B11111111, B11111111, B11111111, 
B11111111, B11111111, //LEER
  B00000001, B10111111, B11001111, B10111111, B00000001, B11111111, 
//M
  B11011101, B01000001, B11111101, B11111111, 
//i
  B00000001, B11110111, B11101011, B11011101, B11111111, 
//k
  B11100011, B11010101, B11010101, B11010101, B11100111, B11111111, 
//e
  B11111111, B11111111, B11111111, B11111111, B11111111, B11111111, 
B11111111, B11111111  //LEER
};


Wie stellt man sowas am besten an?
Muss man wirklich eine .h Datei mit einer Deklaration und eine weitere 
.c Datei mit der Initialisierung erstellen?

Schonmal vielen Dank !

von Timmo H. (masterfx)


Lesenswert?

Da reicht auch ein Header-File. Würde aber trotzdem auf C-Konformität 
setzten (daher nicht byte sonder char bzw. uint8_t) sowie nicht Bxxxxxxx 
sondern eher 0b/OB oder am besten 0xXX (auch wenn man da nicht mehr 
direkt die "An-Pixel" erkennt.

von Nase (Gast)


Lesenswert?

Timmo H. schrieb:
> Da reicht auch ein Header-File.
Wenn schon, dann reicht da auch ein Source-File.
Mit einem Header allein würde man schlimmstenfalls mehrfach Speicher 
belegen, wenn man den Header mehrfach in verschiedenen 
Übersetzungseinheiten (="Sourcen") einbindet.

> Würde aber trotzdem auf C-Konformität
> setzten (daher nicht byte sonder char bzw. uint8_t)
byte könnte ja als uint8_t definiert sein. Und auch dann sicher eher 
unsigned char.

> sowie nicht Bxxxxxxx
> sondern eher 0b/OB
Das 0b-Präfix ist aber gerade nicht standardkonform.

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.