diff --git a/app/lib/a_process/pd_dau.c b/app/lib/a_process/pd_dau.c index 381e2fd..a51ff95 100755 --- a/app/lib/a_process/pd_dau.c +++ b/app/lib/a_process/pd_dau.c @@ -151,58 +151,6 @@ CMD(no_dau_add, return CMD_SUCCESS; } -/* DAU 同步主备方式. */ -CMD(dau_master_slave_mode, - dau_master_slave_mode_cmd, - "dau <1-2> mode (auto|master|slave)", - "DAU\n" - "Unit id\n" - "Master slave mode\n" - "auto\n" - "master\n" - "slave\n") -{ - return CMD_SUCCESS; - - dau_t *dau_node = NULL; - uint8_t unit = 0; - uint8_t mode = 0; - uint16_t temp = 0; - uint16_t GCR = 0; - - unit = strtol(argv[0], NULL, 10) - 1; - - dau_node = dau[unit]; - if (!dau_node) - { - return CMD_WARNING; - } - - for(mode = PD_DAU_MODE_AUTO; mode < PD_DAU_MODE_COUNT; mode++) - { - if (strncmp(argv[1], dau_mode_str[mode], strlen(dau_mode_str[mode]))) - { - continue; - } - - GCR = dau_node->reg.GCR; - temp = (mode << DAU_GCR_MODE_Pos); - MODIFY_REG(dau_node->reg.GCR, DAU_GCR_MODE_Msk, temp); - } - - /* 配置恢复过程中不进行寄存器下发. */ - if (is_system_init) - { - if (dau_reg_global_write(unit) != E_NONE) - { - dau_node->reg.GCR = GCR; - return CMD_WARNING; - } - } - - return CMD_SUCCESS; -} - /* 配置端口模式. */ CMD(dau_port_type, dau_port_type_cmd, @@ -214,41 +162,6 @@ CMD(dau_port_type, "HF\n") { return CMD_SUCCESS; - - dau_t *dau_node = NULL; - uint8_t unit = 0; - uint8_t port = 0; - uint8_t port_type = 0; - uint16_t temp = 0; - - /* 取出端口号. */ - if (dau_vport_to_port(pd_port_node.param_num, &unit, &port) != E_NONE) - { - return CMD_ERR_NO_MATCH; - } - - for(port_type = PD_PORT_TYPE_UHF; port_type < PD_PORT_TYPE_COUNT; port_type++) - { - if (strncmp(argv[0], dau_port_type_str[port_type], strlen(dau_port_type_str[port_type]))) - { - continue; - } - - dau_node = dau[unit]; - temp = (port_type << DAU_CR_PT_Pos); - MODIFY_REG(dau_node->port_reg[port].CR, DAU_CR_PT_Msk, temp); - - if (PD_PORT_TYPE_UHF == port_type) - { - dau_node->port_func[port] = &gis_func; - } - else - { - dau_node->port_func[port] = &gis_func; - } - } - - return CMD_SUCCESS; } /* 通道采样频率模式. */ @@ -391,6 +304,18 @@ CMD(show_dau_status_all, return CMD_SUCCESS; } +/* 显示 DAU 校准系数. */ +CMD(show_dau_vaule, + show_dau_vaule_cmd, + "show dau vaule", + "Show\n" + "DAU\n" + "Vaule\n") +{ + return CMD_SUCCESS; +} + + /* 显示 DAU 校准系数. */ CMD(show_dau_adj_all, show_dau_adj_all_cmd, @@ -2012,7 +1937,6 @@ int32_t dau_handle_init(void) /* 注册命令行 */ cmd_install_element(CONFIG_NODE, &dau_add_cmd); cmd_install_element(CONFIG_NODE, &no_dau_add_cmd); - cmd_install_element(CONFIG_NODE, &dau_master_slave_mode_cmd); cmd_install_element(PORT_NODE, &dau_port_type_cmd); cmd_install_element(PORT_NODE, &dau_sample_rate_cmd); @@ -2020,6 +1944,7 @@ int32_t dau_handle_init(void) cmd_install_element(PORT_NODE, &dau_port_sync_cmd); cmd_install_element(COMMON_NODE, &show_dau_status_all_cmd); + cmd_install_element(COMMON_NODE, &show_dau_vaule_cmd); cmd_install_element(COMMON_NODE, &show_dau_adj_all_cmd); cmd_install_element(COMMON_NODE, &show_dau_reg_all_cmd); cmd_install_element(COMMON_NODE, &show_dau_reg_port_cmd); diff --git a/app/lib/a_process/pd_main.c b/app/lib/a_process/pd_main.c index f1ac49d..d78ef35 100755 --- a/app/lib/a_process/pd_main.c +++ b/app/lib/a_process/pd_main.c @@ -174,6 +174,43 @@ CMD(pd_noise_reduction, return CMD_SUCCESS; } +/* 配置端口降噪等级. */ +CMD(pd_noise_reduction_auto, + pd_noise_reduction_auto_cmd, + "noise-reduction-auto (enable|disable)", + "Noise reduction auto\n" + "Enable\n" + "Disable\n") +{ + return CMD_SUCCESS; + uint8_t unit = 0; + uint8_t port = 0; + uint8_t mode = FALSE; + + /* 取出端口号. */ + if (dau_vport_to_port(pd_port_node.param_num, &unit, &port) != E_NONE) + { + return CMD_ERR_NO_MATCH; + } + + if (0 == strncmp(argv[0], "en", 2)) + { + mode = TRUE; + } + else if (0 == strncmp(argv[0], "di", 2)) + { + mode = FALSE; + } + else + { + mode = FALSE; + } + + //pd_config.port_config[unit][port].is_auto_noise = mode; + + return CMD_SUCCESS; +} + /* 配置端口降噪等级. */ CMD(pd_noise_env, pd_noise_env_cmd, @@ -221,7 +258,7 @@ CMD(pd_evnet_thr, /* 通道滤波类型. */ CMD(pd_evnet_cnt, pd_evnet_cnt_cmd, - "evnet-cnt <1-1000>", + "evnet-cnt <0-1000>", "Event conut threshold\n" "Conut threshold\n") { @@ -240,6 +277,28 @@ CMD(pd_evnet_cnt, return CMD_SUCCESS; } +/* 事件数据文件数量. */ +CMD(pd_evnet_amount, + pd_evnet_amount_cmd, + "evnet-amount <500-5000>", + "Evnet file amount\n" + "Evnet file amount\n") +{ + return CMD_SUCCESS; + uint8_t unit = 0; + uint8_t port = 0; + + /* 取出端口号. */ + if (dau_vport_to_port(pd_port_node.param_num, &unit, &port) != E_NONE) + { + return CMD_ERR_NO_MATCH; + } + + pd_config.port_config[unit][port].config.storage_event = strtol(argv[0], NULL, 10);; + + return CMD_SUCCESS; +} + /* 实时数据上传间隔. */ CMD(pd_real_interval, pd_real_interval_cmd, @@ -253,6 +312,45 @@ CMD(pd_real_interval, return CMD_SUCCESS; } +/* 事件存储间隔. */ +CMD(pd_event_time, + pd_event_time_cmd, + "event-time <0-3600>", + "Event data time\n" + "Event time: second\n") +{ + return CMD_SUCCESS; + pd_config.config.limit_event_time = strtol(argv[0], NULL, 10); + + return CMD_SUCCESS; +} + +/* 事件存储数量. */ +CMD(pd_event_cnt, + pd_event_cnt_cmd, + "event-cnt <0-3600>", + "Event data conut\n" + "Event conut\n") +{ + return CMD_SUCCESS; + pd_config.config.limit_event_cnt = strtol(argv[0], NULL, 10); + + return CMD_SUCCESS; +} + +/* 事件存储数量. */ +CMD(pd_event_interval, + pd_event_interval_cmd, + "event-interval <0-3600>", + "Event data interval\n" + "Event interval: second\n") +{ + return CMD_SUCCESS; + pd_config.config.limit_event_interval = strtol(argv[0], NULL, 10); + + return CMD_SUCCESS; +} + /* 趋势数据上传间隔. */ CMD(pd_trend_interval, pd_trend_interval_cmd, @@ -279,6 +377,19 @@ CMD(pd_heartbeat_interval, return CMD_SUCCESS; } +/* 趋势数据文件数量. */ +CMD(pd_trend_amount, + pd_trend_amount_cmd, + "trend-amount <500-5000>", + "Trend file amount\n" + "Trend file amount\n") +{ + return CMD_SUCCESS; + pd_config.config.storage_trend = strtol(argv[0], NULL, 10); + + return CMD_SUCCESS; +} + /* 同步模式. */ CMD(pd_sync_mode, pd_sync_mode_cmd, @@ -286,7 +397,7 @@ CMD(pd_sync_mode, "Synchronize mode\n" "PT\n" "Power\n" - "Outside") + "Outside\n") { return CMD_SUCCESS; uint8_t mode = 0; @@ -314,6 +425,46 @@ CMD(pd_sync_mode, return CMD_SUCCESS; } +/* 同步模式. */ +CMD(pd_pps_mode, + pd_pps_mode_cmd, + "pps-mode (auto|master|slave)", + "PPS mode\n" + "Master\n" + "Slave\n") +{ + return CMD_SUCCESS; +} + +/* prps 实时上传控制. */ +CMD(pd_prps_set, + pd_prps_set_cmd, + "prps-all (enable|disable)", + "PRPS all upload\n" + "Enable\n" + "Disable\n") +{ + return CMD_SUCCESS; + uint8_t mode = FALSE; + + if (0 == strncmp(argv[0], "en", 2)) + { + mode = TRUE; + } + else if (0 == strncmp(argv[0], "di", 2)) + { + mode = FALSE; + } + else + { + mode = FALSE; + } + + pd_config.config.is_prps_save = mode; + + return CMD_SUCCESS; +} + /* 显示 DAU 状态. */ CMD(show_prps, show_prps_cmd, @@ -340,6 +491,19 @@ CMD(show_pd, return CMD_SUCCESS; } +/* 在终端上显示当前配置信息. */ +CMD(show_running_port, + show_running_port_cmd, + "show running-config interface port WORD", + SHOW_STR + "Running configuration\n" + "Interface\n" + "Port\n" + "Port id: Ex: 1/1\n") +{ + return CMD_SUCCESS; +} + /* 配置保存函数. */ int _pd_config_save(vty_t* vty) { @@ -534,21 +698,30 @@ int32_t pd_main(void) pd_port_node.prompt = XMALLOC(MTYPE_DAU, PD_PORT_PROMPT_LEN); pd_port_node.configs = array_init(PD_PORT_CMD_PRI_COUNT, MTYPE_DAU); + cmd_install_element(CONFIG_NODE, &pd_event_time_cmd); + cmd_install_element(CONFIG_NODE, &pd_event_cnt_cmd); + cmd_install_element(CONFIG_NODE, &pd_event_interval_cmd); cmd_install_element(CONFIG_NODE, &pd_real_interval_cmd); cmd_install_element(CONFIG_NODE, &pd_trend_interval_cmd); + cmd_install_element(CONFIG_NODE, &pd_trend_amount_cmd); cmd_install_element(CONFIG_NODE, &pd_heartbeat_interval_cmd); cmd_install_element(CONFIG_NODE, &pd_sync_mode_cmd); + cmd_install_element(CONFIG_NODE, &pd_pps_mode_cmd); + cmd_install_element(CONFIG_NODE, &pd_prps_set_cmd); cmd_install_element(CONFIG_NODE, &pd_port_terminal_cmd); cmd_install_element(PORT_NODE, &pd_port_terminal_cmd); cmd_install_element(PORT_NODE, &pd_sensor_type_cmd); cmd_install_element(PORT_NODE, &pd_noise_reduction_cmd); + cmd_install_element(PORT_NODE, &pd_noise_reduction_auto_cmd); cmd_install_element(PORT_NODE, &pd_noise_env_cmd); cmd_install_element(PORT_NODE, &pd_evnet_thr_cmd); cmd_install_element(PORT_NODE, &pd_evnet_cnt_cmd); + cmd_install_element(PORT_NODE, &pd_evnet_amount_cmd); cmd_install_element(COMMON_NODE, &show_prps_cmd); cmd_install_element(COMMON_NODE, &show_pd_cmd); + cmd_install_element(COMMON_NODE, &show_running_port_cmd); //LD_E_RETURN(DBG_M_PD_ERR, log_handle_init()); LD_E_RETURN(DBG_M_PD_ERR, csg_handle_init()); diff --git a/app/lib/m_management/cmd.c b/app/lib/m_management/cmd.c index 0762611..b2eb6f0 100755 --- a/app/lib/m_management/cmd.c +++ b/app/lib/m_management/cmd.c @@ -568,31 +568,41 @@ CMD(config_write_file, return CMD_SUCCESS; } +/* 在终端上显示当前配置信息. */ +CMD(show_running_config, + show_running_config_cmd, + "show running-config", + SHOW_STR + "running configuration\n") +{ + return CMD_SUCCESS; + uint32_t i = 0; + cmd_node_t *node = NULL; + + vty_out(vty, "Current configuration:%s", VTY_NEWLINE); + vty_out(vty, "!%s", VTY_NEWLINE); + + for(i = 0; i < array_active(cmd_nodes); i++) + if ((node = array_get(cmd_nodes, i)) && node->func) + { + if ((*node->func)(vty)) + vty_out(vty, "!%s", VTY_NEWLINE); + } + + vty_out(vty, "end%s", VTY_NEWLINE); + + return CMD_SUCCESS; +} + /* 在终端上显示当前配置信息. */ -CMD(config_write_terminal, - show_running_config_cmd, - "show running-config", +CMD(show_running_globel, + show_running_globel_cmd, + "show running-config globel", SHOW_STR - "running configuration\n") + "Running configuration\n" + "Globel\n") { return CMD_SUCCESS; - - uint32_t i = 0; - cmd_node_t *node = NULL; - - vty_out(vty, "Current configuration:%s", VTY_NEWLINE); - vty_out(vty, "!%s", VTY_NEWLINE); - - for(i = 0; i < array_active(cmd_nodes); i++) - if ((node = array_get(cmd_nodes, i)) && node->func) - { - if ((*node->func)(vty)) - vty_out(vty, "!%s", VTY_NEWLINE); - } - - vty_out(vty, "end%s", VTY_NEWLINE); - - return CMD_SUCCESS; } /* 在终端上显示当前配置信息. */ @@ -2390,6 +2400,7 @@ void cmd_init(void) cmd_install_element(COMMON_NODE, &exit_node_cmd); cmd_install_element(COMMON_NODE, &quit_node_cmd); cmd_install_element(COMMON_NODE, &show_running_config_cmd); + cmd_install_element(COMMON_NODE, &show_running_globel_cmd); cmd_install_element(COMMON_NODE, &show_log_default_cmd); cmd_install_element(COMMON_NODE, &show_log_level_cmd); cmd_install_element(COMMON_NODE, &show_log_cnt_cmd);