/ Forside / Teknologi / Udvikling / C/C++ / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
C/C++
#NavnPoint
BertelBra.. 2425
pmbruun 695
Master_of.. 501
Bech_bb 500
kyllekylle 500
jdjespers.. 500
gibson 300
scootergr.. 300
molokyle 287
10  strarup 270
undgå ram plads
Fra : Kasper


Dato : 09-03-08 11:00

Hej,

jeg har et array as text som er konstabel og ligge i flash på mit embeded
controller, det gør det også med code kommandoen, men alligevel optager
denne linie 20bytes ram, formentlig pointer til hver string i array.

Hvordan kan jeg få de pointere ned i flash også?
problemet er jeg har ca. 20 af de linier:
char code *mnu0000[] = {"Calibrate Channel 1...","Calibrate Channel
2...","Calibrate Channel 3...","Calibrate Channel 4..."," "/*"Calibrate
4-20mA Out..." not used now*/,"Hardware Test...","Show
Configuration","Tools...","Save Configuration","",};

linierne bliver brugt i denne struct:
//menu structure :
code struct Menu_data_type
{
unsigned int menu_nr;
char code *menu_title;
char code **menu_data;
void (*pt2function)(unsigned char index);
} menu_data[] = {
0x0000, "Main Menu :",mnu0000,0,
0x0001, "Calibrate Channel 1 :",mnu0001,0,

Det er Keil compiler jeg bruger

Kasper



 
 
Kent Friis (09-03-2008)
Kommentar
Fra : Kent Friis


Dato : 09-03-08 11:20

Den Sun, 9 Mar 2008 11:00:16 +0100 skrev Kasper:
> Hej,
>
> jeg har et array as text som er konstabel og ligge i flash på mit embeded
> controller, det gør det også med code kommandoen, men alligevel optager
> denne linie 20bytes ram, formentlig pointer til hver string i array.
>
> Hvordan kan jeg få de pointere ned i flash også?
> problemet er jeg har ca. 20 af de linier:
> char code *mnu0000[] = {"Calibrate Channel 1...","Calibrate Channel
> 2...","Calibrate Channel 3...","Calibrate Channel 4..."," "/*"Calibrate
> 4-20mA Out..." not used now*/,"Hardware Test...","Show
> Configuration","Tools...","Save Configuration","",};

$ cdecl
const char * const array[];
declare array as array of const pointer to const char;

Din compiler bruger så "code" i stedet for "const" (gammel compiler?)
men måske kan det hjælpe dig videre alligevel.

Mvh
Kent
--
"So there I was surrounded by all these scary creatures
They were even scarier than what Microsoft call features"
- C64Mafia: Forbidden Forest (Don't Go Walking Slow).

Kasper (09-03-2008)
Kommentar
Fra : Kasper


Dato : 09-03-08 11:35


> Din compiler bruger så "code" i stedet for "const" (gammel compiler?)
> men måske kan det hjælpe dig videre alligevel.

Tak, det virker :)

den kan også bruge const, men virkningen er den samme umilbart

Kasper



Kent Friis (10-03-2008)
Kommentar
Fra : Kent Friis


Dato : 10-03-08 17:24

Den Sun, 9 Mar 2008 11:34:56 +0100 skrev Kasper:
>
>> Din compiler bruger så "code" i stedet for "const" (gammel compiler?)
>> men måske kan det hjælpe dig videre alligevel.
>
> Tak, det virker :)
>
> den kan også bruge const, men virkningen er den samme umilbart

"const" er standard C, det er "code" ikke.

Mvh
Kent
--
"So there I was surrounded by all these scary creatures
They were even scarier than what Microsoft call features"
- C64Mafia: Forbidden Forest (Don't Go Walking Slow).

Søg
Reklame
Statistik
Spørgsmål : 177415
Tips : 31962
Nyheder : 719565
Indlæg : 6407849
Brugere : 218876

Månedens bedste
Årets bedste
Sidste års bedste