From c0df63a836fe62eed1cc3a8132213eef81bd79a5 Mon Sep 17 00:00:00 2001 From: zhaohe Date: Sat, 28 Oct 2023 19:24:59 +0800 Subject: [PATCH] update --- api/errorcode.cpp | 39 +++++++++++++++++++++++---------------- api/errorcode.hpp | 35 ++++++++++++++++++----------------- api/reg_index.hpp | 22 ++++++++++++++++++++-- 3 files changed, 61 insertions(+), 35 deletions(-) diff --git a/api/errorcode.cpp b/api/errorcode.cpp index a121575..a2a5c8b 100644 --- a/api/errorcode.cpp +++ b/api/errorcode.cpp @@ -5,22 +5,25 @@ return #code; #if 0 - ksucc = ERROR_CODE(0, 0), - kfail = ERROR_CODE(0, 1), - kparam_out_of_range = ERROR_CODE(0, 2), // 参数超出范围 - koperation_not_support = ERROR_CODE(0, 3), // 操作不支持 - kdevice_is_busy = ERROR_CODE(0, 4), // 设备忙 - kdevice_is_offline = ERROR_CODE(0, 5), // 设备离线 - kovertime = ERROR_CODE(0, 6), - knoack = ERROR_CODE(0, 7), - kerrorack = ERROR_CODE(0, 8), - kdevice_offline = ERROR_CODE(0, 9), - kparse_json_err = ERROR_CODE(0, 10), - ksubdevice_overtime = ERROR_CODE(0, 11), - kbuffer_not_enough = ERROR_CODE(0, 12), - kcmd_not_found = ERROR_CODE(0, 13), - kcmd_param_num_error = ERROR_CODE(0, 14), - kcheckcode_is_error = ERROR_CODE(0, 15), + + ksucc = ERROR_CODE(0, 0), + kfail = ERROR_CODE(0, 1), + kparam_out_of_range = ERROR_CODE(0, 2), // 参数超出范围 + koperation_not_support = ERROR_CODE(0, 3), // 操作不支持 + kdevice_is_busy = ERROR_CODE(0, 4), // 设备忙 + kdevice_is_offline = ERROR_CODE(0, 5), // 设备离线 + kovertime = ERROR_CODE(0, 6), + knoack = ERROR_CODE(0, 7), + kerrorack = ERROR_CODE(0, 8), + kdevice_offline = ERROR_CODE(0, 9), + kparse_json_err = ERROR_CODE(0, 10), + ksubdevice_overtime = ERROR_CODE(0, 11), + kbuffer_not_enough = ERROR_CODE(0, 12), + kcmd_not_found = ERROR_CODE(0, 13), + kcmd_param_num_error = ERROR_CODE(0, 14), + kcheckcode_is_error = ERROR_CODE(0, 15), + kcatch_exception = ERROR_CODE(0, 16), + khwardware_error_fan_error = ERROR_CODE(0, 17), /** * @brief 系统错误 @@ -59,6 +62,7 @@ kxymotor_not_found_y_zero_point = ERROR_CODE(300, 5), // 未找到零点 kxymotor_x_find_zero_edge_fail = ERROR_CODE(300, 6), // 离开零点失败 kxymotor_y_find_zero_edge_fail = ERROR_CODE(300, 7), // 离开零点失败 + kmotor_run_overtime = ERROR_CODE(300, 8), // 运行超时 /** * @brief STMP2错误 @@ -92,6 +96,7 @@ kmicro_noErr = ERROR_CODE(500, 0), // kmicro_uartSendFail = ERROR_CODE(500, 1), // kmicro_uartRecvFail = ERROR_CODE(500, 2), // + #endif namespace iflytop { namespace err { @@ -114,6 +119,8 @@ const char* error2str(int32_t code) { ERR2STR(kcmd_param_num_error); ERR2STR(kcheckcode_is_error); ERR2STR(kcatch_exception); + ERR2STR(khwardware_error_fan_error); + ERR2STR(ksys_error); ERR2STR(ksys_create_file_error); ERR2STR(ksys_create_dir_error); diff --git a/api/errorcode.hpp b/api/errorcode.hpp index d04c23d..5e804c1 100644 --- a/api/errorcode.hpp +++ b/api/errorcode.hpp @@ -8,23 +8,24 @@ using namespace std; #define ERROR_CODE(errortype, suberrorcode) (errortype + suberrorcode) typedef enum { - ksucc = ERROR_CODE(0, 0), - kfail = ERROR_CODE(0, 1), - kparam_out_of_range = ERROR_CODE(0, 2), // 参数超出范围 - koperation_not_support = ERROR_CODE(0, 3), // 操作不支持 - kdevice_is_busy = ERROR_CODE(0, 4), // 设备忙 - kdevice_is_offline = ERROR_CODE(0, 5), // 设备离线 - kovertime = ERROR_CODE(0, 6), - knoack = ERROR_CODE(0, 7), - kerrorack = ERROR_CODE(0, 8), - kdevice_offline = ERROR_CODE(0, 9), - kparse_json_err = ERROR_CODE(0, 10), - ksubdevice_overtime = ERROR_CODE(0, 11), - kbuffer_not_enough = ERROR_CODE(0, 12), - kcmd_not_found = ERROR_CODE(0, 13), - kcmd_param_num_error = ERROR_CODE(0, 14), - kcheckcode_is_error = ERROR_CODE(0, 15), - kcatch_exception = ERROR_CODE(0, 16), + ksucc = ERROR_CODE(0, 0), + kfail = ERROR_CODE(0, 1), + kparam_out_of_range = ERROR_CODE(0, 2), // 参数超出范围 + koperation_not_support = ERROR_CODE(0, 3), // 操作不支持 + kdevice_is_busy = ERROR_CODE(0, 4), // 设备忙 + kdevice_is_offline = ERROR_CODE(0, 5), // 设备离线 + kovertime = ERROR_CODE(0, 6), + knoack = ERROR_CODE(0, 7), + kerrorack = ERROR_CODE(0, 8), + kdevice_offline = ERROR_CODE(0, 9), + kparse_json_err = ERROR_CODE(0, 10), + ksubdevice_overtime = ERROR_CODE(0, 11), + kbuffer_not_enough = ERROR_CODE(0, 12), + kcmd_not_found = ERROR_CODE(0, 13), + kcmd_param_num_error = ERROR_CODE(0, 14), + kcheckcode_is_error = ERROR_CODE(0, 15), + kcatch_exception = ERROR_CODE(0, 16), + khwardware_error_fan_error = ERROR_CODE(0, 17), /** * @brief 系统错误 diff --git a/api/reg_index.hpp b/api/reg_index.hpp index 6ae6395..f1f335e 100644 --- a/api/reg_index.hpp +++ b/api/reg_index.hpp @@ -15,6 +15,8 @@ typedef enum { kreg_module_errorcode = REG_INDEX(0, 3), // inited_flag kreg_module_initflag = REG_INDEX(0, 4), // inited_flag kreg_module_enableflag = REG_INDEX(0, 5), // 0idle,1busy,2error + kreg_module_errorbitflag0 = REG_INDEX(0, 6), // 模块异常标志,bit,每个模块自定义 + kreg_module_errorbitflag1 = REG_INDEX(0, 7), // kreg_module_last_cmd_exec_status = REG_INDEX(20, 0), // 上一条指令执行的状态 kreg_module_last_cmd_exec_val0 = REG_INDEX(20, 1), // 上一条指令执行的结果0 kreg_module_last_cmd_exec_val1 = REG_INDEX(20, 2), // 上一条指令执行的结果1 @@ -156,9 +158,25 @@ typedef enum { kreg_pid_feedbackval = REG_INDEX(3050, 2), // 当前输出 /******************************************************************************* - * 非标状态 * + * 风扇控制 * *******************************************************************************/ - kreg_fan_cfg_speed_level = REG_INDEX(4000, 0), // 风扇转速 + kreg_fan0_ctrl_speed_level = REG_INDEX(4000, 0), // 风扇转速0,1,2,3 + kreg_fan1_ctrl_speed_level = REG_INDEX(4000, 1), // 风扇转速0,1,2,3 + kreg_fan2_ctrl_speed_level = REG_INDEX(4000, 2), // 风扇转速0,1,2,3 + kreg_fan3_ctrl_speed_level = REG_INDEX(4000, 3), // 风扇转速0,1,2,3 + kreg_fan4_ctrl_speed_level = REG_INDEX(4000, 4), // 风扇转速0,1,2,3 + + kreg_fan0_speed_level = REG_INDEX(4010, 0), // 风扇实时转速0,1,2,3 + kreg_fan1_speed_level = REG_INDEX(4010, 1), // 风扇实时转速0,1,2,3 + kreg_fan2_speed_level = REG_INDEX(4010, 2), // 风扇实时转速0,1,2,3 + kreg_fan3_speed_level = REG_INDEX(4010, 3), // 风扇实时转速0,1,2,3 + kreg_fan4_speed_level = REG_INDEX(4010, 4), // 风扇实时转速0,1,2,3 + + kreg_fan0_e_state = REG_INDEX(4010, 0), // 风扇是否工作正常 0:正常 1:异常 + kreg_fan1_e_state = REG_INDEX(4010, 1), // 风扇是否工作正常 0:正常 1:异常 + kreg_fan2_e_state = REG_INDEX(4010, 2), // 风扇是否工作正常 0:正常 1:异常 + kreg_fan3_e_state = REG_INDEX(4010, 3), // 风扇是否工作正常 0:正常 1:异常 + kreg_fan4_e_state = REG_INDEX(4010, 4), // 风扇是否工作正常 0:正常 1:异常 } reg_index_t;