VB.NET Arduino接口程序问题

VB.NET Arduino接口程序问题,vb.net,loops,arduino,Vb.net,Loops,Arduino,首先,对标题感到抱歉,它真的没有多大帮助,主要是因为我一点也不知道问题是什么或者它在哪里 守则: If ComboBox.SelectedItem = "A Particular Control Method" Then OpenPort() ButtonTimer.Reset() 'Loop through each row in DGV, resetting port and startng a new timer for each

首先,对标题感到抱歉,它真的没有多大帮助,主要是因为我一点也不知道问题是什么或者它在哪里

守则:

  If ComboBox.SelectedItem = "A Particular Control Method" Then

        OpenPort()
        ButtonTimer.Reset()

        'Loop through each row in DGV, resetting port and startng a new timer for each

        For iRows As Integer = 0 To dgvMain.RowCount - 1

            PortStop()
            swTimer.Start()

            'Write direction to port while timer is less than listed length, then stop timer
            Try

                Do While (Math.Round((swTimer.ElapsedTicks / Stopwatch.Frequency), 1)) < dgvMain.Rows(iRows).Cells(1).Value

                    Application.DoEvents()
                    PortWrite(dgvMain.Rows(iRows).Cells(2).Value)

                Loop

                MsgBox(dgvMain.Rows(iRows).Cells(0).Value)

            Catch ex As Exception

                MessageBox.Show(ex.Message)

            End Try

            swTimer.Stop()
            swTimer.Reset()

            PortStop()

        Next

        PortStop()
        swTimer.Stop()
        swTimer.Reset()

    End If
我的代码是设计用来用各种命令控制arduino的。我有一个实时控制系统,它利用屏幕上的按钮和键盘,工作得非常好。因此,我知道端口打开是一个子程序,端口发送和所有的命令工作。这段代码使用相同的按钮,但设置为不同的模式

这个想法是我按下一个按钮一段时间,它记录到一行,按钮的方向记录到另一行。那很好。其思想是能够“编程”命令列表,然后使用数据网格视图控件编辑它们


所以,我的问题是代码不起作用。它永远不会越过第二条线,除非只有两条线,在这种情况下,它不会越过第一条线。在所有情况下,它都会阻塞该特定命令并崩溃


很抱歉,我不能提供更多的信息-我真的无法解决这个问题。如果我能提供任何特别的信息,请告诉我,这让我很沮丧。

第二行是哪一行??开放端口??请说得具体一点。它是一个子程序,用于打开一个嵌套在Try/Catch中的串行端口。它对代码的活动控件段很有效,所以我相当肯定它是有效的。它永远不会超过第二行,除非只有两行,在这种情况下它不会超过第一行。你能解释一下你的意思吗?我无法重现你的问题。如果它“刚刚崩溃”,则在调试器中放入更多Try/Catch并逐步执行,以帮助隔离问题。