📄 taskmemset.h
字号:
#ifndef _TASKMEXSET_H_
#define _TASKMEXSET_H_
#include "config.h"
#include "parameter.h"
#include "curdata.h"
#define PARAM_TABD
#include "parameter.h"
//PARAM_STR ParamIn; // 参数数据结构
#define MINU 02
#define HOU 03
#define DAY 04
#define MON 05
#define FLASH1_BASE 0x82000000
#define FLASH1_BASE_TASK_DATA 0x82080000 //SA15
#define FLASH1_END_TASK_DATA 0x821FFFFF //SA38
#define FLASH1_MEM_TASK_DATA 0x180000
extern CUR_DATA cur_data[9];
extern INT8U TaskData[128*1024];
extern PARAM_STR ParamInSram;
extern const uint8 CUR_DATA_TAB[];
extern INT8U flag_r[32],flag_f[32];
extern INT32U j_r[32],j_f[32];
typedef struct{
INT8U State; //任务状态,是否有效
INT8U TaskNO; //任务号;
INT8U Type; //任务类型;
INT8U DayNum; //保存点的个数
//INT16U Len; //每点数据的长度(包括时标年月日时分)
INT32U NumTotal; //数据的总容量=DayNum*Len
INT32U AddStart; //为本任务在存储区RAM1中分配存储空间的起始位置
INT32U AddStartFlash;//为本任务在存储区FLASH1中分配存储空间的起始位置
INT8U TaskNum; //任务数;
// INT32U CurDataAdd;//每一项数据在实时数据区中的地址
INT16U ExeCnt; //执行次数
INT8U TimeSample[2]; //采样开始基准时间
INT8U IntervalSample[2];//采样间隔时间
INT8U TimeSend[2]; //上送基准时间
INT8U IntervalSend[2];//上送间隔时间
INT8U DINum; //数据项个数
INT8U MpNO; //测量点号
INT8U FhzSend; //上送频率;
INT32U ByteNum_p; //每点的数据长度即字节数;
INT32U OutAdd[32]; //每个数据项在实时数据区中的地址
INT8U LenDI[32];
}Task_Data_Fat;
//Task_Data_Fat RAM1_TaskDataFat[32]; //当日任务数据分配表;
INT32S crc_check(INT8U *buf,INT16U len);
void fat_sram1(void);
INT32U DI_InAdd(INT8U Mp,INT8U di0,INT8U di1,INT8U *lenth);
void fat_init(Task_Data_Fat * fat,INT8U * buf);
extern void init(void);
extern INT32S ATMELEraseSector( INT32U addr );
extern INT32U bcd_hex(INT32U bcd);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -