找回密码
 注册
搜索
查看: 561|回复: 0

[资料] 存储新的手机设置 代码修改实例过程

[复制链接]
发表于 2009-3-18 15:25:01 | 显示全部楼层 |阅读模式
1.在文件common_nvram_editor_data_item.h中定义存储项版本号:
#define NVRAM_MATRIX_ITEM_LID_VERNO "B09"
2.在文件nvram_common_defs.h中,在枚举 nvram_lid_commapp_enum中添加
NVRAM_MATRIX_ITEM_LID,
添加定义:
#define NVRAM_MATRIX_ITEM_SIZE 12
#define NVRAM_MATRIX_ITEM_TOTAL 1
3。在文件nvram_common_config.c中
定义静态常量数组作为默认值
static kal_uint8 const NVRAM_MATRIX_ORDER[12]=
{
0,1,2,3,4,5,6,7,8,9,10,11               
};
在ltable_entry_struct logical_data_item_table_comm_app[]中添加
        ,{
                NVRAM_MATRIX_ITEM_LID,//存储的ID值
                NVRAM_MATRIX_ITEM_SIZE,//存储项的大小
                NVRAM_MATRIX_ITEM_TOTAL,//存储项的个数
                (kal_uint8*)(NVRAM_MATRIX_ORDER),//默认值
                NVRAM_ATTR_AVERAGE,                                        /* Attributes:系统值 */
                NVRAM_CATEGORY_USER,//系统值
                "MItem",
                VER(NVRAM_MATRIX_ITEM_LID),//版本号
                "MatrixItem Order \0",//说明
                NVRAM_RESERVED_VALUE//系统值
        }

4.读取设置
        {
               
                U8 i = 0;
                U8 rinfo[12]={0,1,2,3,4,5,6,7,8,9,10,11};
                S16 pError;
               
        ReadRecord(
                        NVRAM_MATRIX_ITEM_LID,
            1,
            (void*)rinfo,
            12,
            &pError);
                if(pError != 1)
                {
                        WriteRecord(
                                NVRAM_MATRIX_ITEM_LID,
                                1,
                                (void*)rinfo,
                                12,
                                &pError);
                }
                for(i=0;i<12;i++)
                {
                        m->idxRemap = rinfo;
                }
               
            }
5.存储设置
void gui_save_matrix_info()
{
        extern fixed_matrix_menu MMI_fixed_matrix_menu;
        fixed_matrix_menu *m;
        U8 i = 0;
        U8 rinfo[12];
        S16 pError;
       
        m = &MMI_fixed_matrix_menu;
       
        for(i=0;i<12;i++)
        {
                rinfo=m->idxRemap;
        }
       
        WriteRecord(
                NVRAM_MATRIX_ITEM_LID,
                1,
                (void*)rinfo,
                12,
                &pError);
}
高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2025-1-23 12:02 , Processed in 0.043567 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表