问题描述
我正在尝试使用以太网有线连接与 Arduino 通信。我使用 python 和 C 做到了这一点,但现在我很难用 VB.net 做同样的事情。只是我试图使用其 IP 地址和端口号向 Arduino 发送一个 UDP 数据包,并希望返回响应并将其显示在文本框中。
Imports System.Net
Imports System.Environment,System.Text.Encoding
Public Class udpWindow
Dim localIP As String = Dns.GetHostByName(Dns.GetHostName()).AddressList(0).ToString
Dim localPort As Integer = 5000
Dim publisher As New Sockets.UdpClient(0)
Dim subscriber As New Sockets.UdpClient(localPort)
Private Sub Button1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles Button1.Click
LocalIP_txt.Text = localIP
localPort_txt.Text = localPort
End Sub
Private Sub Button2_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles Start.Click
publisher.Connect(ServerIP.Text,ServerPort.Text)
Dim sendbytes() As Byte = ASCII.GetBytes("0")
publisher.Send(sendbytes,sendbytes.Length)
End Sub
Private Sub Form1_Load(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles MyBase.Load
subscriber.Client.ReceiveTimeout = 100
subscriber.Client.Blocking = False
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles Timer1.Tick
Try
Dim ep As IPEndPoint = New IPEndPoint(0,localPort)
Dim recvbytes() As Byte = subscriber.Receive(ep)
'MsgBox("msg recieved")
rcvMsgs.Text = ASCII.GetString(recvbytes)
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Sub
End Class
谁能帮我提供更好的选择或更正? 提前谢谢,因为这是我在这里的第一次查询,所以请原谅任何不当错误。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)