回 帖 发 新 帖 刷新版面

主题:求助:VB RS485通讯问题

本人在编一个485通讯程序,代码如下:
Private Sub Command4_Click()
Dim bytearray(0 To 7) As Byte
    MSComm1.InBufferCount = 0
    MSComm1.OutBufferCount = 0
    MSComm1.RThreshold = 2
    bytearray(0) = &H5
    bytearray(1) = &H1
    bytearray(2) = &H4
    bytearray(3) = &H0
    MSComm1.Output = bytearray
    End Sub

Private Sub Form_Load()
MSComm1.CommPort = 1
    MSComm1.Settings = "9600,N,8,2"
    MSComm1.InBufferSize = 1024
    MSComm1.OutBufferSize = 1024
End Sub

Private Sub MSComm1_OnComm()
 Dim dataread() As Byte
    Dim tempdata As Variant
    Dim str As String
    If MSComm1.CommEvent = comEvReceive Then
    tempdata = MSComm1.Input
    ReDim dataread(UBound(tempdata)) As Byte
    For i = 0 To UBound(tempdata)
    dataread(i) = tempdata(i)
    Text2 = Text2 & " " & Hex(dataread(i))
Next i
End If
    End Sub

读取到的数据全是"FF FF FF FF",这是怎么回事? 我用其他调试软件发送一样的代码,得到的却是正确的。求高手帮忙解答。

回复列表 (共1个回复)

沙发

http://blog.pfan.cn/iamben250/10253.html
这篇文章可能有用。
感觉你代码中对接收数据的处理有点问题。

我来回复

您尚未登录,请登录后再回复。点此登录或注册