从串口到网口编程
以前一直用的是串口和机器进行通信,现在发现串口速度有点慢,所以就用网口通信了,但是试了下来还是比较慢
应该是我的通信方法不对,请大神看看
应该是我的通信方法不对,请大神看看
‘‘这个是向机器查询指定寄存器里的数据的,主要速度就卡在ns.Read这个函数上。
‘以前串口的思路是每发一个指令等到机器返回结果后,然后再发吓一跳指令,不知道网卡是不是这样子的?
Public Function ReadD(ByVal Address As String, ByRef ReceiveData As Int16) As Byte
Dim strCmd As String = vbNullString
Dim result As String = vbNullString
Dim result1 As String = vbNullString
Dim bCmd() As Byte
Dim bResult(Me.ReceiveBufferSize) As Byte
If Not Me.Connected Then Return 1
If Me Is Nothing Then Return 2
If Address.Length < 5 Then Address = Address.PadLeft(5, "0")
strCmd = "<" & mStation & "#RDD" & Address & Address
strCmd = strCmd & BCC(strCmd) & vbcr
bCmd = Encoding.ASCII.GetBytes(strCmd)
Static br As New IO.BinaryReader(ns)
Static bw As New IO.BinaryWriter(ns)
Try
ns.Write(bCmd, 0, bCmd.Length)
ns.Read(bResult, 0, 64)
result = Encoding.ASCII.GetString(bResult)
If result.Contains("$") Then
result1 = result.Substring(8, 2) & result.Substring(6, 2)
ReceiveData = Convert.ToInt16(result1, 16)
Return 0
Else
Return 5
End If
Catch e As SocketException
Return 4
End Try
Return 1
End Function
'这个是后台线程,用来查询地址2000里的数据,DT2000是返回的数据,SW是StopWatch
现在这个轮询周期比较长,SW的值是100ms这样,这样和串口没啥区别了
Private Sub pM()
While flag = 1
sw.Reset()
sw.Start()
fpe.ReadD("2000", dt2000(0))
fpe.ReadD("2000", dt2000(0))
fpe.ReadD("2000", dt2000(0))
fpe.ReadD("2000", dt2000(0))
fpe.ReadD("2000", dt2000(0))
fpe.ReadD("2000", dt2000(0))
fpe.ReadD("2000", dt2000(0))
fpe.ReadD("2000", dt2000(0))
fpe.ReadD("2000", dt2000(0))
t = sw.ElapsedMilliseconds
Threading.Thread.Sleep(1)
End While
End Sub
...全文
相关推荐
linux串口、网口编程类
通过这些基本的网络编程功能,我们可以实现TCP/UDP服务器和客户端程序,进行数据的收发。串口和网口编程在物联网、远程控制、设备调试等领域都有广泛的应用。
PLC编程-网口通讯(串口、TCP、OPC UA、MQTT调试工具)
另外,“虚拟串口vspd7.2.308”工具能够模拟多个虚拟串口设备,有助于进行串口通讯的测试和验证。PLC编程的网口通讯是现代工业自动化不可或缺的一部分。
FX3U-IE-V12.2 PLC源代码:支持网口编程与监控,兼容STM32F103VET6硬件,带modbusTCP与双串口ModbusRTU功能
主要内容涵盖网口编程、ModbusTCP服务实现、双串口ModbusRTU主从站切换、实时时钟同步以及硬件设计细节。文中提供了核心代码
网口串口转发服务端AnalogMachine
本文将深入探讨基于C#编程语言实现的“AnalogMachine”服务端,它是如何实现实时、高效的数据转发功能的。首先,我们来看标题中的核心概念——"网口串口转发服务端AnalogMachine"。
ABoxControl.rar
本文将围绕"串口网口编程"这一主题,结合名为"ABoxControl"的压缩包文件,深入探讨串口和网口编程的基本概念、常见应用以及具体实现方法。


