error check
#define SYSTEM_PRTCT_NOERR 0
#define SYSTEM_PRTCT_COVER (1 << 0) /* */
#define SYSTEM_PRTCT_LPHOT (1 << 1) /* */
#define SYSTEM_PRTCT_DCHOT (1 << 2)
#define SYSTEM_PRTCT_FANDET (1 << 3) /* */
#define SYSTEM_PRTCT_DMDFANDET (1 << 4)
#define SYSTEM_PRTCT_FAN2DET (1 << 4)
#define SYSTEM_PRTCT_PWSTATUS (1 << 5) /* */
#define SYSTEM_PRTCT_LAMPFLG (1 << 6) /* */
#define SYSTEM_PRTCT_LAMPOVER (1 << 7)
#define SYSTEM_PRTCT_LAMPPRTCT (1 << 8)
enum {
COVER = 0, // E1-1 僇僶乕奐曻
HOT, // E2-1 壏搙堎忢(僶僀儊僞儖)
TEMP, // E2-2 壏搙堎忢(壏搙僙儞僒)
POWER, // E3-2 揹尮堎忢
FAN, // E4-1 僼傽儞堎忢
#if defined(CONFIG_LIGHTSOURCE_LASER)
LDDRV, // E6-1 LD僪儔僀僶堎忢
PHOSPHOR, // E6-2 Phosphor堎忢
SSLCPU, // E9-3 SlaveCPU偲偺捠怣僄儔乕
#else
LAMP, /* 儔儞僾晄揰摂 */
USAGE, /* 愊嶼帪娫挻夁 */
DATA, /* LampData堎忢 */
IRIS, /* 傾僀儕僗堎忢 */ //傾僀儕僗堎忢僄儔乕捛壛
#endif
ERRNUM
};
static BOOL is_error(int);
#if 0 /* 枹巊梡 */
static BOOL is_warning(int);
#endif
static int chk_cover(void);
static int chk_hot(void);
static int chk_temp(void);
static int chk_fan(void);
static int chk_lamp(void);
static int chk_usage(void);
static int chk_data(void);
static int chk_power(void);
static int chk_iris(void); //傾僀儕僗堎忢僄儔乕捛壛
static int chk_lvd(void); // E3-2 揹尮偺掅揹埑僄儔乕
static int chk_lddrv(void); // E6-1 LD僪儔僀僶堎忢
static int chk_phosphor(void); // E6-2 Phosphor堎忢
static int chk_sslcpu(void); // E9-3 SlaveCPU偲偺捠怣僄儔乕
static void sysvalue_update(void);
static void protect_periodic(void);
static void protect_timer(void *tmp);
#if defined(CONFIG_LIGHTSOURCE_LASER)
static WORD get_ssl_fun_info(void);
#endif //(CONFIG_LIGHTSOURCE_LASER)
/* 撪晹曄悢 */
typedef struct {
int index; /* 僄儔乕ID */
int (*pfunc)(void); /* 僄儔乕専弌娭悢 */
DWORD errflag; /* 僄儔乕僼儔僌 */
BYTE statusdisp; /* 僄儔乕儘僌偺昞帵僷僞乕儞 */
} t_protect;
static t_protect protect_tbl[ERRNUM] =
{
{ COVER, chk_cover, SYSTEM_PRTCT_COVER, STS_DISP_11 }, // E1-1 僇僶乕奐曻
{ HOT, chk_hot, SYSTEM_PRTCT_LPHOT, STS_DISP_21 }, // E2-1 壏搙堎忢(僶僀儊僞儖)
{ TEMP, chk_temp, SYSTEM_PRTCT_THHOT, STS_DISP_22 }, // E2-2 壏搙堎忢(壏搙僙儞僒)
#if defined(CONFIG_LIGHTSOURCE_LASER)
{ POWER, chk_lvd, SYSTEM_PRTCT_PWSTATUS, STS_DISP_32 }, // E3-2 揹尮堎忢
{ FAN, chk_fan, SYSTEM_PRTCT_FAN2DET, STS_DISP_41 }, // E4-1 僼傽儞堎忢
{ LDDRV, chk_lddrv, SYSTEM_PRTCT_LDDRV, STS_DISP_61 }, // E6-1 LD僪儔僀僶堎忢
{ PHOSPHOR, chk_phosphor, SYSTEM_PRTCT_PHOSPHOR, STS_DISP_62 }, // E6-2 Phosphor堎忢
{ SSLCPU, chk_sslcpu, SYSTEM_PRTCT_SSLCPU, STS_DISP_93 }, // E9-3 SlaveCPU偲偺捠怣僄儔乕
#else
{ POWER, chk_power, SYSTEM_PRTCT_PWSTATUS, STS_DISP_31 }, /* E3-1 揹尮堎忢僄儔乕捛壛 */
{ FAN, chk_fan, SYSTEM_PRTCT_FAN2DET, STS_DISP_41 }, /* E4-1 僼傽儞掆巭 */
{ LAMP, chk_lamp, SYSTEM_PRTCT_LAMPFLG, STS_DISP_61 }, /* E6-1 儔儞僾晄揰摂 */
{ USAGE, chk_usage, SYSTEM_PRTCT_LAMPOVER, STS_DISP_00 }, /* E? 儔儞僾帪娫挻夁 */
{ DATA, chk_data, SYSTEM_PRTCT_DATAERR, STS_DISP_00 }, /* E? LampData堎忢 */
{ IRIS, chk_iris, SYSTEM_PRTCT_IRIS, STS_DISP_91 }, /* E9-1 傾僀儕僗堎忢 */
#endif
};
static BOOL is_error(int num)
{
BYTE state = protect_tbl[num].pfunc();
return (state == ERROR) ? TRUE : FALSE;
}
error check的更多相关文章
- java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2Exception: AAPT2 error: check logs for details
Caused by: java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2Except ...
- AAPT2 error: check logs for details 问题的终究修复
AAPT2 error: check logs for details Process 'command '***\build-tools\27.0.3\aapt.exe'' finished wit ...
- Error:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
环境 Android Studio 3.0 升级&导入项目 错误 Error:java.util.concurrent.ExecutionException: com.android.tool ...
- com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
1.错误显示 com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details log提示:Generate Si ...
- Android项目打包遇com.android.builder.internal.aapt.v2.Aapt2Exception: AAPT2 error: check logs for details
查了网上很多处理都是在项目的gradle.properties中添加下面的配置,再编译就通过了: android.enableAapt2=false
- android ------ AAPT2 error: check logs for details解决方法
AAPT 是全称是 Android Asset Packaging Tool,它是构建 App,甚至是构建 Android 系统都必不可少的一个工具.它的作用是将所有资源文件压缩打包到Android ...
- AS项目报错 Error:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
1 修改gradle的缓存目录 这个可以通过android studio的设置中找到gradle,配置另一个非中文目录来缓存. File -> Settings -> Build, Exe ...
- 4.Android 打包时出现的Android Export aborted because fatal error were founds [closed]
Android 程序开发完成后,如果要发布到互联网上供别人使用,就需要将自己的程序打包成Android 安装包文件(Android Package,APK),其扩展名为.apk.使用run as 也能 ...
- System Error Codes
很明显,以下的文字来自微软MSDN 链接http://msdn.microsoft.com/en-us/library/windows/desktop/ms681382(v=vs.85).aspx M ...
- Android Volley gives me 400 error
本文来自:http://stackoverflow.com/questions/21739276/android-volley-gives-me-400-error 本人是根据文中的其中一方法: I ...
随机推荐
- db2存储过程很慢如何查看
存储过程很慢 ,如何处理? #查看包的情况select r.routineschema, r.routinename, r.routinemodulename, rd.bname as package ...
- vue 路由切换页面再次进入更新数据
一:同一项目中路由的跳转 mounted和created都只能执行一次,尝试监听改变的数据也未起效果,项目中使用了<keep-alive>,所以用activated监听初始函数 1.需要跳 ...
- chrome 请停用以开发者
链接:https://pan.baidu.com/s/1YhWINGlUVyTE5XyBVIGW_Q 提取码:23t2 转载至 https://www.cnblogs.com/it-tsz/p/9 ...
- 模型 线框shader
https://www.assetstore.unity3d.com/cn/?stay#!/content/21897
- Unity 复杂Json 解析
最近项目需要, 搞了一串嵌套非常多的Json 用LitJson读取体验不太好,上网查了一下发现NetwtonsoftJson ,十分好用 一句代码就可以了 JObject data = JsonCon ...
- 如何修改Mac文件默认打开方式?
熟悉Mac电脑的用户都知道,在 OS X 中,Finder 存储的文件总会以指定的某个默认应用程序打开,比如图片类型的文件默认以「预览」打开.但由于经常需要使用图片编辑工具 PS打开图片类型的文件,每 ...
- 全局 使用 stylus 变量
首先 安装 啦 npm i stylus stylus-loader -D 之后 使用全局变量 然后在组件中引用改变量 -->没有用! 原因还没有在build/utils.js文件 全局引入 ...
- Typora --Markdown 文本工具
标题: #+空+name 一级 ##+空+name 二级 ###+空+name 三级 ......------六级 (可排版折叠) 字体: 粗体:两边加** 斜体:两边加* 斜体加粗:*** ...
- ZSTUOJ刷题⑨:Problem H.--尖兵
Problem H: 尖兵 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 4691 Solved: 2112 Description 星光人已经出发了 ...
- 5、MySQL中的锁
1.6. MySQL中的锁 InnoDB中锁非常多,总的来说,可以如下分类: 这些锁都是做什么的?具体含义是什么?我们现在来一一学习. 1.6.1.解决并发事务问题 我们已经知道事务并发执行时可能带来 ...