打印
[技术问答]

如何建立参数初始化

[复制链接]
831|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xinruan|  楼主 | 2015-3-25 16:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

#include "E2PROM.h"

static INT16U        EEPROM_R[cwEEPROM_MAX];
static INT16U        EEPROM_W[cwEEPROM_MAX];

void sFactorySET(void)
{
        //请问,在这里如何建立参数初始化
}

void sRecovery(INT8U bTotal)
{
        INT8U i;
        eepromRead(0,EEPROM_R,cwEEPROM_MAX);               

        if (EEPROM_R[0] == 0xFFFF||EEPROM_R[0] == 0){
                sFactorySET();                //所有参数第一次使用前将参数初始化
                for (i= 0; i<bTotal-cwPASSIVE_CNT; i++){        //15个
                        EEPROM_W[i] = (INT16U)*((&g_wSYZJ)+i);
                        EEPROM_R[i] = (INT16U)*((&g_wSYZJ)+i);
                }
                eepromWriteNByte(EEPROM_W,0x300,cwEEPROM_MAX);
                for (i= 0; i<bTotal; i++){
                        EEPROM_W[i] = (INT16U)*((&g_wSYZJ)+i);
                }
                eepromWriteNByte(EEPROM_W,0x0,cwEEPROM_MAX);
        }else{
                if (g_wCSHF==1){                //参数恢复
                        eepromRead(0x300,EEPROM_R,cwEEPROM_MAX);
                        for (i= 0; i<(bTotal-cwPASSIVE_CNT); i++){
                                *((&g_wSYZJ)+i) = EEPROM_R[i];
                        }
                }else{
                        eepromRead(0x0,EEPROM_R,cwEEPROM_MAX);
                        for (i= 0; i<bTotal; i++){
                                *((&g_wSYZJ)+i) = EEPROM_R[i];
                        }
                }
        }               
}
沙发
xinruan|  楼主 | 2015-3-25 17:26 | 只看该作者
五个变量为g_wSYZJ,g_wSYAA,g_wSYAB,g_wSYAC,g_wSYAD

变量cwPASSIVE_CNT=5

使用特权

评论回复
板凳
lovecat2015| | 2015-3-25 20:13 | 只看该作者
楼主你的具体问题是什么呢?

使用特权

评论回复
地板
xinruan|  楼主 | 2015-3-26 09:02 | 只看该作者
在函数void sFactorySET(void)
如何添加五个变量g_wSYZJ,g_wSYAA,g_wSYAB,g_wSYAC,g_wSYAD的参数初始化

使用特权

评论回复
5
598330983| | 2015-3-31 07:16 | 只看该作者
如果是复杂的,可以考虑结构体

使用特权

评论回复
6
598330983| | 2015-3-31 07:17 | 只看该作者
通过结构体很容易再用指针调用穿送给函数初始化

使用特权

评论回复
7
598330983| | 2015-3-31 07:18 | 只看该作者
把五个变量作为参数放到那个函数里

使用特权

评论回复
8
598330983| | 2015-3-31 07:18 | 只看该作者
如果不传递参数,直接写到内部也是可以的。

使用特权

评论回复
9
598330983| | 2015-3-31 07:19 | 只看该作者
不过建议把空改成参数吧,再内部负值给变量

使用特权

评论回复
10
mintspring| | 2015-3-31 07:34 | 只看该作者
通过参数传递可以做到

使用特权

评论回复
11
mintspring| | 2015-3-31 07:34 | 只看该作者
也可以通过结构体变量,也可以

使用特权

评论回复
12
mintspring| | 2015-3-31 07:35 | 只看该作者
结构体变量要用指针最好做,直接就穿送过去了

使用特权

评论回复
13
mintspring| | 2015-3-31 07:35 | 只看该作者
楼主可以参考库函数怎么设计的

使用特权

评论回复
14
jheng| | 2015-3-31 22:06 | 只看该作者
学习学习。。。。。。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

8

帖子

0

粉丝