public void Init(Button _button_run, TextBox _textBox_Cmdlist, TextBox _textBox_Point, Modbus _mdbs, FormMain _fm) { cmd_list_args = new List <rgn>(); for (int i = 0; i < MAX_COMMAND_LENGTH; i++) { rgn new_rgn = new rgn(); new_rgn.value = new int[MAX_PARAM_PER_COMMAND]; new_rgn.cnt = 0; cmd_list_args.Add(new_rgn); } cmd_list_name = new string[MAX_CMD_LIST_LENGTH]; timer_execute = new System.Timers.Timer(200); timer_execute.Elapsed += new System.Timers.ElapsedEventHandler(timer_execute_Tick); timer_execute.AutoReset = true; timer_execute.Enabled = false; button_run = _button_run; textBox_Cmdlist = _textBox_Cmdlist; textBox_Point = _textBox_Point; fm = _fm; mdbs = _mdbs; mc = new MoveCursor(); }
public void Run(TextBox textbox) { if (button_run.Text == "Run") { Dbg.WriteLine("eCMD count:%", textbox.Lines.Length); cmd_list_total = 0; foreach (string str_cmd in textbox.Lines) { cmd_list_name[cmd_list_total] = Func_GetCmd(str_cmd); if (cmd_list_name[cmd_list_total] == "") { MessageBox.Show("Illegal CMD!"); Reset(); return; } int[] args_array = new int[8]; int args_num = Func_GetArgs(str_cmd, args_array); Dbg.WriteLine("Cnt:% Cmd:% num:%", cmd_list_total, cmd_list_name[cmd_list_total], args_num); rgn new_rgn = cmd_list_args[cmd_list_total]; new_rgn.cnt = args_num; for (int i = 0; i < args_num; i++) { new_rgn.value[i] = args_array[i]; Dbg.WriteLine("\t Args:%", args_array[i]); } cmd_list_total++; } if (cmd_list_total > 0) { Start(); } } else { Reset(); } }
public void BatCall(TextBox textbox, SerialPort _serialport) { for (int i = 0; i < Program.parameters.Length; i++) { Dbg.WriteLine("Raw args[%]:%", i, Program.parameters[i]); textbox.Text += i.ToString() + ":" + Program.parameters[i] + "\r\n"; string cmd_name = Func_GetCmd(Program.parameters[i]); if (cmd_name == "") { continue; } int[] args_bat_array = new int[8]; int args_bat_num = Func_GetArgs(Program.parameters[i], args_bat_array); cmd_list_total = 0; cmd_list_cnt = 0; rgn new_rgn = cmd_list_args[cmd_list_total]; new_rgn.cnt = args_bat_num; for (int j = 0; j < args_bat_num; j++) { new_rgn.value[i] = args_bat_array[i]; Dbg.WriteLine("\t Args:%", args_bat_array[j]); } cmd_list_name[cmd_list_total] = cmd_name; cmd_list_total++; CmdList_Execute(cmd_name, cmd_list_args[0].value, cmd_list_args[0].cnt); } Dbg.WriteLine("Bat run cmd end."); }