#ifndef __NORPARAS_H__ #define __NORPARAS_H__ #include "config.h" // 管理参数的读写 // 参数在norflash里的存放 #ifndef MAX_PARA_BLOCK // 最大支持参数块 #define MAX_PARA_BLOCK (0) #endif #if (MAX_PARA_BLOCK > 16) // 最多支持16个参数块 #undef MAX_PARA_BLOCK #define MAX_PARA_BLOCK 16 #endif #define PARA_NUM_PER_BLK (64) // 64个参数项,每个参数占4字节,共256字节(一页) #define PARA_STR_LEN (30) // 参数名称长度 #define PARA_VALID 0x55AA // 参数块有效标志,自定义 //------------------------------------------------------------------------------ typedef struct { s32 buff[PARA_NUM_PER_BLK]; }NorParaBlock; // 参数类型 #define PTYPE_S 0 // 有符号数 #define PTYPE_U 1 // 无符号数 #define PTYPE_B 2 // 位图 //------------------------------------------------------------------------------ void InitNorParas(void); // 初始化 int GetNorParaEn(int bIdx); // 获取参数有效标志 int LoadNorParas(int bIdx); // 读取参数 bIdx:参数块ID int SaveNorParas(int bIdx); // 保存参数 NorParaBlock * GetNorParaBlock(int bIdx); // 获取并返回参数块 void SetNorParaNameString(int bIdx, void * pName); // 设置参数名称 void SetNorParaList(int bIdx, void * pPara); // 设置参数列表 void LoadNorDefPara(int bIdx); // 加载默认参数 void CheckParaRange(int bIdx); // 参数范围检测(全部参数) void CheckAParaRange(int bIdx, int id); // 参数范围检测(单个参数) s32 GetANorPara(int bIdx, int id); //得到单个参数的数值 void SetANorPara(int bIdx, int id, s32 val); //设置单个参数的数值 //------------------------------------------------------------------------------ #endif // __NORPARAS_H__