/// <summary> /// 通用监听协议解析完成函数 /// </summary> /// <param name="lkSensor"></param> public void genralListen(byte[] buf, _message msg) { Protecl_typical_cmd.ctl_type type_sel = (Protecl_typical_cmd.ctl_type)msg.type; switch (type_sel) { case Protecl_typical_cmd.ctl_type.usr_ack: { Protecl_typical_cmd.user_ack_id ack_id = (Protecl_typical_cmd.user_ack_id)msg.frame_id; usr_ack_id(ack_id, buf); } break; case Protecl_typical_cmd.ctl_type.programer_ack: { Protecl_typical_cmd.programer_ack_id p_ackid = (Protecl_typical_cmd.programer_ack_id)msg.frame_id; programer_ack_id(p_ackid, buf); } break; default: break; } }
/// <summary> /// usr_ack 通用应答 /// </summary> /// <param name="id"> </param> private void user_ack_id(Protecl_typical_cmd.user_ack_id id, byte[] buf) { switch (id) { case Protecl_typical_cmd.user_ack_id.dist_base: // { } break; case Protecl_typical_cmd.user_ack_id.dist_continue_ack: { lk_Sensor_Data.distance = (UInt16)(buf[0] << 8 | buf[1]); if (ifStringDisplay == true) { text_box_display(); } else { display(); } } break; case Protecl_typical_cmd.user_ack_id.dist_once_ack: { UInt16 distance = (UInt16)(buf[0] << 8 | buf[1]); lk_log(distance.ToString()); } break; case Protecl_typical_cmd.user_ack_id.dist_stop_ack: { lk_log("停止测量成功!"); } break; case Protecl_typical_cmd.user_ack_id.dist_null_ack: { lk_log("数据无效!"); } break; case Protecl_typical_cmd.user_ack_id.get_paramAll_base: // { sensor_param_refresh(buf); lk_log("已更新传感器参数!"); } break; case Protecl_typical_cmd.user_ack_id.getParam_baudRate_ack: { } break; case Protecl_typical_cmd.user_ack_id.getParam_frontSwich_ack: { } break; case Protecl_typical_cmd.user_ack_id.getParam_backSwich_ack: { } break; case Protecl_typical_cmd.user_ack_id.getParam_disBase_ack: { } break; case Protecl_typical_cmd.user_ack_id.getParam_powerOn_mode_ack: { } break; case Protecl_typical_cmd.user_ack_id.cfgParam_all: { } break; case Protecl_typical_cmd.user_ack_id.cfgParam_baudRate_ack: { lk_log("波特率(" + current_baudRate + ")设置成功!"); } break; case Protecl_typical_cmd.user_ack_id.cfgParam_frontSwich_ack: { lk_log("设置前开关量成功!"); } break; case Protecl_typical_cmd.user_ack_id.cfgParam_backSwich_ack: { lk_log("设置后开关量成功!"); } break; case Protecl_typical_cmd.user_ack_id.cfgParam_distBase_ack: { lk_log("基准(" + cureent_distBase + ")设置成功"); } break; case Protecl_typical_cmd.user_ack_id.cfgParam_powerOn_mode_ack: { lk_log("开机模式(" + cureent_autoRunMode + ")设置成功!"); } break; case Protecl_typical_cmd.user_ack_id.cfgParam_outData_freq_ack: { lk_log("输出频率(" + cureent_outFreq + "HZ)设置成功"); } break; case Protecl_typical_cmd.user_ack_id.system_boot_paramReset_ack: { lk_log("恢复为出厂设置"); } break; case Protecl_typical_cmd.user_ack_id.system_boot_firmware_ctl_ack: { } break; case Protecl_typical_cmd.user_ack_id.system_boot_firmware_pakage_ack: { } break; } }