C#winform 想问一下大家为何没有执行第三个for循环呢?

这是我的C#代码,就是传数据给接口,但是第三个循环他不走,不知道为什么,能帮我看下哪里错了吗


for (int i = 1; i <= m_HDevelopExport4.length /4; i++)
                {
                    string valuez = @"""" + ini.IniReadValue("坐标值" + i, "z") + @"""";
                    string valuer = @"""" + ini.IniReadValue("坐标值" + i, "r") + @"""";

                    for (int j = 0; j < m_HDevelopExport4.length; j = j + 2)
                    {
                        string valuex = @"""" + arr[j] + @"""";
                        string valuey = @"""" + arr[j + 1] + @"""";
                        //string valuex1 = @"""" + arr[j + 2] + @"""";
                        //string valuey1 = @"""" + arr[j + 3] + @"""";
                        sd = Encoding.UTF8.GetBytes(@"{""c"":""run""," + @"""x"":" + valuex + "," + @"""y"":" + valuey + "," + @"""z"":" + valuez + "," + @"""r"":" + valuer + "," + @"""v"":""322""}");
                        serialPort.Write(sd, 0, sd.Length);
                        Thread.Sleep(10000);
                        for (int turnnum = 1; turnnum <= m_HDevelopExport4.length / 4; turnnum++)
                        {
                            string valuer1 = @"""" + ini.IniReadValue("坐标值" + i, "r1") + @"""";
                            string valuer2 = @"""" + ini.IniReadValue("坐标值" + i, "r2") + @"""";
                            string valuer3 = @"""" + ini.IniReadValue("坐标值" + i, "r3") + @"""";
                            string valuer4 = @"""" + ini.IniReadValue("坐标值" + i, "r4") + @"""";
                            if (turnnum == 1)
                            {
                                sd1 = Encoding.UTF8.GetBytes(@"{""c"":""run""," + @"""x"":" + valuex + "," + @"""y"":" + valuey + "," + @"""z"":" + valuez + "," + @"""r"":" + valuer1 + "," + @"""v"":""322""}");
                                serialPort.Write(sd1, 0, sd1.Length);
                                //textBox14.AppendText(valuer1);
                                serialPort.DiscardInBuffer();
                                Thread.Sleep(2000);
                            }
                            if (turnnum == 2)
                            {
                                sd2 = Encoding.UTF8.GetBytes(@"{""c"":""run""," + @"""x"":" + valuex + "," + @"""y"":" + valuey + "," + @"""z"":" + valuez + "," + @"""r"":" + valuer2 + "," + @"""v"":""322""}");
                                serialPort.Write(sd2, 0, sd2.Length);
                                //textBox14.AppendText(valuer2);
                                serialPort.DiscardInBuffer();
                                Thread.Sleep(2000);
                            }
                            if (turnnum == 3)
                            {
                                sd3 = Encoding.UTF8.GetBytes(@"{""c"":""run""," + @"""x"":" + valuex + "," + @"""y"":" + valuey + "," + @"""z"":" + valuez + "," + @"""r"":" + valuer3 + "," + @"""v"":""322""}");
                                serialPort.Write(sd3, 0, sd3.Length);
                                //textBox14.AppendText(valuer3);
                                serialPort.DiscardInBuffer();
                                Thread.Sleep(2000);
                            }
                            if (turnnum == 4)
                            {
                                sd4 = Encoding.UTF8.GetBytes(@"{""c"":""run""," + @"""x"":" + valuex + "," + @"""y"":" + valuey + "," + @"""z"":" + valuez + "," + @"""r"":" + valuer4 + "," + @"""v"":""322""}");
                                serialPort.Write(sd4, 0, sd4.Length);
                                //textBox14.AppendText(valuer4);
                                serialPort.DiscardInBuffer();
                                Thread.Sleep(2000);
                            }

                            if (turnnum == 5)
                            {
                                sd5 = Encoding.UTF8.GetBytes(@"{""c"":""run""," + @"""x"":" + valuex + "," + @"""y"":" + valuey + "," + @"""z"":" + valuez + "," + @"""r"":" + valuer + "," + @"""v"":""322""}");
                                serialPort.Write(sd5, 0, sd5.Length);
                                ///textBox15.AppendText(valuer);
                                Thread.Sleep(2000);
                            }
                            serialPort.DiscardInBuffer();

                        }

                    }

                }

你是怎么确定代码没走的,加断点跟了吗

硬件设备走动的时候是否可以返回一些值?当代码读到这些返回值时才去执行下一个for循环。