Gast
#304799
Hallo,
für die Ansteuerung meines aktuellen Projects über RS232 habe ich mir
eine Struktur gebaut, die so aussieht:
struct _cmd_tbl_entry {
unsigned char *cmd;
uint8_t (*proc)(void);
};
Mit
struct _cmd_tbl_entry cmd_tbl[] PROGMEM = { .... };
kann ich die Datenstruktur in das Flash ablegen. Das schluckt auch der
avr-gcc (Version 4.0.1) noch. Aber wie kann ich die Strings in cmd in
den Flash legen. PSTR hat keinen Erfolg gebracht ...
Bisher mache ich es über RAM:
struct _cmd_tbl_entry cmd_tbl[] = {
{"set_speed", 0},
{"set_temp", 0},
{0, 0}
};
Aber ich möchte das ganze ins Flash packen, weil der RAM ist ja sehr
wertvoll und die ganzen Daten sind statisch.
Ich weis: Anstelle der 0 sollte NULL stehen :)
- cl