Beispiel #1
0
        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();
        }
Beispiel #2
0
        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();
            }
        }
Beispiel #3
0
        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.");
        }