示例#1
0
int AlarmInit(void)
{
	int idx, offset;
	char filename[32];
	alarm_t *pbuf;

	memset(AlarmBufferImportant, 0, sizeof(AlarmBufferImportant));
	memset(AlarmBufferNormal, 0, sizeof(AlarmBufferNormal));

	for(idx=0; idx<2; idx++) {
		if(0 == idx) pbuf = AlarmBufferImportant;
		else pbuf = AlarmBufferNormal;

		DebugPrint(0, "  load ");
		for(offset=0; offset<256; offset+=ALMNUM_PERFILE,pbuf+=ALMNUM_PERFILE) {
			AlarmFileName(idx, offset, filename);

			DebugPrint(0, "%c%d", (idx)?'n':'i', offset/ALMNUM_PERFILE);
			if(ReadBinFile(filename, ALARM_MAGIC, (unsigned char *)pbuf, sizeof(alarm_t)*ALMNUM_PERFILE) > 0) {
				DebugPrint(0, " ok, ");
			}
			else {
				DebugPrint(0, " fail, ");
			}
		}
		DebugPrint(0, "\n");
	}

	LockIdAlarm = RegisterSysLock();

	SET_INIT_FLAG(AlarmInit);

	return 0;
}
示例#2
0
int PlMdbInit(void)
{
	sysclock_t clock;
	dbtime_t dbtime;
	int rtn;

	FlagDaySaved = FlagMonthSaved = 1;
	FlagImpSaved = 1;

	memset(PlMdbDay, PLDATA_EMPTY, sizeof(PlMdbDay));
	memset(PlMdbMonth, PLDATA_EMPTY, sizeof(PlMdbMonth));
	memset(PlMdbImp, PLDATA_EMPTY, sizeof(PlMdbImp));

	PlMdbLockId = RegisterSysLock();

	SysClockRead(&clock);
	SYSCLOCK_DBTIME(&clock, dbtime);//根据冻结时间得到冻结文件
	rtn = ReadPlMdbDay(PlMdbDay, dbtime);
	if(rtn > 0) DebugPrint(0, "load %d mets plmdb day data\n", rtn);
	//rtn = ReadPlMdbMonth(PlMdbMonth, dbtime);
	//if(rtn > 0) DebugPrint(0, "load %d mets plmdb month data\n", rtn);
	//rtn = ReadPlMdbImp(PlMdbImp, dbtime);
	//if(rtn > 0) DebugPrint(0, "load plmdb imp ok\n");
	
	SET_INIT_FLAG(PlMdbInit);
	return 0;
}
示例#3
0
int LoadDebugStatistics(void)
{
	unsigned int i;
	int group;
	XINREF pf;
	char filename[200];

	PrintLog(0,"  load statistics...\n");

	for(group=1; group<=STATISGROUP_MAX; group++) {
		sprintf(filename, "%s%s", STATISTIC_SAVEPATH, NameSave[group-1]);
		pf = XinOpen(filename, 'r');
		if(NULL == pf) continue;

		for(i=0; __start__statistic+i<__stop__statistic; i++) {
			if(__start__statistic[i].group == group)
				__start__statistic[i].count = XinReadInt(pf, __start__statistic[i].name, __start__statistic[i].count);
		}

		XinClose(pf);
	}

	SET_INIT_FLAG(LoadDebugStatistics);
	return 0;
}
示例#4
0
int StorageInit(void)
{

	if(XinInit()) return 1;
	if(FlatInit()) return 1;

	SET_INIT_FLAG(StorageInit);

	return 0;
}
示例#5
0
int PlcCommInit(void)
{
    PrintLog(0,"  plccomm init..\n");

    SysInitMutex(&PlcMutex);

    SET_INIT_FLAG(PlcCommInit);

    return 0;
}
示例#6
0
int MonitorTaskInit(void)
{
	//GpioSetDirect(GPIO_BATLOW, 0);
	//GpioSetDirect(GPIO_BAT_CHARGE, 1);
	//GpioSetValue(GPIO_BAT_CHARGE, RunState.batcharge);

	SysCreateTask(MonitorTask, NULL);

	SET_INIT_FLAG(MonitorTaskInit);
	return 0;
}
示例#7
0
int CenMetInit(void)
{
	rtimer_conf_t conf;

	//Sleep(2000*6);
	MdbInit();
	//LoadCenMetProto();

	CMetCommInit();

	CenMetRmdInit();
	AutoReadCenMetInit();

	IMetInit();

	CenMetAlarmInit();

	conf.curtime = UTimeReadCurrent();
	conf.bonce = 0;
	memset(&conf.basetime, 0, sizeof(sysclock_t));


	conf.tdev = 1;
	conf.tmod = UTIMEDEV_MINUTE;  // 1 minute
	SysAddRTimer(&conf, RTimer1Minute, 0);

	//conf.tdev = 15;
	//conf.tmod = UTIMEDEV_MINUTE;  // 15 minute
	//SysAddRTimer(&conf, RTimer15Minute, 0);


	memset(&conf, 0, sizeof(conf));
	conf.basetime.year = 11;
	conf.basetime.month = 1;
	conf.basetime.day = 3;
	conf.basetime.hour = 23;
	conf.basetime.minute = 58;
	conf.basetime.second = 00;
	conf.curtime = UTimeReadCurrent();
	conf.bonce = 0;
	conf.tdev = 1;
	conf.tmod = UTIMEDEV_DAY;  // 1 day
	SysAddRTimer(&conf, RTimerDay, 0);

	if(SysCreateTask(CenMetTask, 0)) printf("create cenmet failed\n");
	//if(SysCreateTask(CenMetSticTask, 0)) printf("create cenmetstic failed\n");

	SET_INIT_FLAG(CenMetInit);

	return 0;
}
示例#8
0
int FlatInit(void)
{
	//SysInitMutex(&FlatMutex);
	LockIdFlat = RegisterSysLock();

/*	FlatFid = open("/dev/fram", O_RDWR);
	if(-1 == FlatFid) {
		printf("can not open fram driver.\n");
		return 1;
	}*/

	SET_INIT_FLAG(FlatInit);
	return 0;
}
示例#9
0
int PlcInit(void)
{
	//rtimer_conf_t conf;

	printf("plc init...\n");

	//SysInitEvent(&PlcEvent);

	LoadPrdConfig();
	LoadPltData();

	PlcCommInit();
	PlcStateInit();
	PlMdbInit();

	SysCreateTask(PlcTestTask, NULL);

	SET_INIT_FLAG(PlcInit);
	return 0;
}
示例#10
0
int ParamInit(void)
{
	printf("load param ...\n");

	LoadParaUni();
	LoadParaTerm();
	SetParaNetAddr();
	LoadParaMeter();
	LoadParaCenMetp();
	LoadParaPlcMetp();
	LoadParaChildEnd();
	LoadParaMix();
	LoadParaDataUse();
	LoadParaTask();
	LoadParaHardw();
	LoadParaRoute();
	MappingCenMetp();
	
	if(ParamSaveInit()) return 1;

	SET_INIT_FLAG(ParamInit);

	return 0;
}
示例#11
0
int DriverHighInit(void)
{
    if(GpioInit()) return 1;
    SET_INIT_FLAG(DriverHighInit);
    return 0;
}