提交SMOD ATSC IMX APP版本 V122
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
#ifndef __LOG_TASK_H
|
||||
#define __LOG_TASK_H
|
||||
|
||||
#define LOG_TYPE_INVALID 0
|
||||
#define LOG_TYPE_POWER_ON 1
|
||||
#define LOG_TYPE_POWER_OFF 2
|
||||
#define LOG_TYPE_SYS_PARA_CHANGE 3
|
||||
#define LOG_TYPE_TIME_CHANGE 4
|
||||
#define LOG_TYPE_GPS_UNLOCK 5
|
||||
#define LOG_TYPE_GPS_LOCK 6
|
||||
#define LOG_TYPE_TS_ERR 7
|
||||
#define LOG_TYPE_TS_OK 8
|
||||
#define LOG_TYPE_OVER_TEMPERATURE 9
|
||||
#define LOG_TYPE_NORMAL_TEMPERATURE 10
|
||||
#define LOG_TYPE_OVER_FLOW 11
|
||||
#define LOG_TYPE_UNDER_FLOW 12
|
||||
//..其他告警类型
|
||||
#define LOG_TYPE_END 13 //结束标志
|
||||
|
||||
|
||||
|
||||
#define LOG_ERR_NO_ERR 0
|
||||
#define LOG_ERR_PARA_INVALID 1
|
||||
#define LOG_ERR_ALLOC_MSG_FAILED 2
|
||||
#define LOG_ERR_ALLOC_MEM_FAILED 3
|
||||
|
||||
|
||||
//日志最大多少条合适?
|
||||
#define LOG_MAX_RECORD_NUM 100
|
||||
|
||||
//一整条告警,64字节, 200*64 共12.5K字节
|
||||
#define LOG_PER_RECORD_SIZE 32
|
||||
typedef struct
|
||||
{
|
||||
uint8 valid;
|
||||
uint8 type;
|
||||
uint8 year;
|
||||
uint8 month;
|
||||
uint8 date;
|
||||
uint8 hour;
|
||||
uint8 min;
|
||||
uint8 sec; //发生时间 8字节
|
||||
|
||||
|
||||
uint8 content[LOG_PER_RECORD_SIZE-8]; //日志的具体内容,根据需要使用
|
||||
}S_LOG_STRUCT;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
uint16 ram_flag; //内存中数据是否有效标志
|
||||
uint8 lastest_index; //当前的下一条log指向的位置 0~(LOG_MAX_RECORD_NUM-1) 是即将保存的位置,
|
||||
uint8 total_num; //当前有效log数目
|
||||
S_LOG_STRUCT log[LOG_MAX_RECORD_NUM];
|
||||
}S_OS_LOG; //当前使用模式下,不能大于3.9K
|
||||
|
||||
|
||||
extern void log_task(void * pvParameters);
|
||||
|
||||
extern uint32 log_read_record_by_index(uint32 index,void *pdata);
|
||||
extern uint32 log_system_event_generate(S_SYS_TIME* ptime,uint32 type,uint8 *pcontent,uint32 ctlen);
|
||||
uint32 log_get_total_record_num(void);
|
||||
void log_record_reset(void);
|
||||
void log_record_printf(void);
|
||||
|
||||
extern int sntp_enable(uint8 en, uint8 *pAddr);
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user