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 ...
随机推荐
- 像MIUI一样做Zabbix二次开发(3)——Zabbix深度定制的意义
深度定制的意义 综合来讲,Zabbix是一个非常强大的监控平台,简单拿来完成监控一些Hosts,没有什么问题,而且,目前国内大部分客户都是这么做的,基本上是安装完后,网上找到一些相关模板,配置后把Ho ...
- 基于.NET Core3.1的SQLiteHelper增删改帮助类
安装驱动包 install-package Microsoft.Data.Sqlite -version 3.1.7 install-package System.Data.SQLite.Core - ...
- 访问不了github解决方案
1.首先通过网址https://github.com.ipaddress.com/www.github.com查看当前github.com对应的IP地址,查到的信息如下图所示 修改hosts文件,wi ...
- 一文学会使用pip
pip介绍 pip的全称:package installer for python,是 Python包管理工具,该工具提供了对Python包的查找.下载.安装.卸载的功能.Python官方的PyPi仓 ...
- nginx服务器有什么作用?什么叫反向代理?为什么要使用反向代理?
1 背景介绍 1.1 Nginx是什么? Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器.其特点是占有内存少,并发能力强,事实上nginx的并发能力确 ...
- 【BOOK】解析库--pyquery
CSS选择器 1.初始化 html=''' <div> <ul> <li class="item-0">first item</li> ...
- <连城诀>剧情大纲+随笔
--剧情还是偷个懒,从百度百科抄袭一下,红色字体为补充和说明 在湘西沅陵南郊的麻溪乡下,三间小屋之前的晒谷场上,隐居此处多年的剑术名家"铁索横江"戚长发,看着徒弟狄云与女儿戚芳 ...
- LCP 34. 二叉树染色
class Solution: def maxValue(self, root: TreeNode, k: int) -> int: def dfs(root): # 空节点价值全为0 res ...
- 【python】读取nc文件
读取nc文件前的准备,安装一些库 1.先把几个用到的库下载 Cartopy 简介与安装(转载) - 简书 (jianshu.com) Python Extension Packages for Win ...
- matlab读写文件
dsp,fpga这些产生的文件大部分都是二进制存储的,知道格式后可以直接读取. 读取后的"可懂"数据如何以"可懂"的形式保存在.dat,.txt,.csv之类文 ...