Hallo ich bin zur Zeit an einem Projekt beschäftigt, wobei ich
Datensätze aus einem I²C-EEPROM in einem LCD-Menu auflisten muss. Ich
verwende dabei einen ATmega644 mit dem Menusystem tinymenu. Ein
(Sub-)Menu wird z.B. folgendermaßen deklariert:
1 | menu_t sub1_menu = {
|
2 | .top_entry = 0,
|
3 | .current_entry = 0,
|
4 | .entry = {
|
5 | {.flags = 0,
|
6 | .select = my_select,
|
7 | .name = "s2",
|
8 | .value = 0,
|
9 | },
|
10 | {.flags = 0,
|
11 | .select = my_select,
|
12 | .name = "s3",
|
13 | .value = 0,
|
14 | },
|
15 | {.flags = 0,
|
16 | .select = my_select,
|
17 | .name = "s4",
|
18 | .value = 0,
|
19 | },
|
20 | },
|
21 | .num_entries = 3,
|
22 | .previous = NULL,
|
23 | };
|
Nun könnte ich natürlich beim Einsteigen in jedes Submenu, das struct
schreiben. Aber dann ist ein Großteil des RAMs vollgeschrieben, oder
womöglich passt gar nicht alles rein. Hat also jemand einen Tipp, wie
ich am besten die Daten aus dem EEPROM aufs LCD bekomme? Normalerweise
würde man ja LCD-Texte im PROGMEM speichern, aber da ich die Datensätze
im EEPROM ständig verändere, fällt die Möglichkeit wohl aus... Hab ich
das Problem verständlich beschrieben?
Vielen Dank im Vorraus, Sven