york8001 发表于 2008-10-13 15:21:12

向傻孩子求助【恢复】

问傻孩子个问题,你写的菜单程序我看了。我也看了其它的,但是发现只能看懂你的(呵呵)。

我现在要做一个菜单,但是菜单比较大也比较深。所以我想得把结构体数组弄到FLASH里面。

你在一个回帖里面说过可以把结构体数组定义到flash里面。

但是我的问题是,每个结构体里都有父子关系,这个应该是在编译之后确定的。

而定义在flash中的数据是在编译之前就固定下来了。

这个问题该怎么解决?

Gorgon_Meducer 发表于 2008-10-13 18:33:51

定义结构体数组的时候,加入__flash关键字,并在声明数组的时候就

一一指定其中的内容,而不需要利用程序来初始化,建立关联。

为了简化操作,提高代码可读性,你可以编写一个参数宏定义,比如

ADD_CONTENTS_ITEM(__INDEX,__DISP_STR,__FUNC,__SUB,__PARENT) 

...我只是举个例子,你自己根实际情况来编写……



__flash rom_gContents[] = 

           {

                ADD_CONTENTS_ITEM(0,"1、ADD",...),

                ADD_CONTENTS_ITEM(1,"1、Decrease",...),

                ...

                ADD_CONTENTS_ITEM(...)

            };
页: [1]
查看完整版本: 向傻孩子求助【恢复】