小弟才学
现在在做个 UPS的后台软件 用VB做的 主要目的是 用电脑直接和我们的机器通讯 吧监控省掉 但是 我做出来的 不知道为什么 单片机只能收到一个地址位 ,还有在第二位单片机收到的数就不对了 不知道为什么
对于机器的单片程序没问题 我一片那个单片机的监控能正常收发数据的
谢谢大家帮分析下问题 可能出在那
Public Sub fason1()
Dim i As Integer
For i = 0 To sendcount
If Hex(sendbuffer(i)) <= 9 Then
Form3.Text2.Text = Form3.Text2.Text & Hex(0) & Hex(sendbuffer(i)) & Space(1)
Else
Form3.Text2.Text = Form3.Text2.Text & Hex(sendbuffer(i)) & Space(1)
End If
Next
If Form3.MSComm1.PortOpen = True Then
Form3.MSComm1.Output = sendbuffer
Form3.Text2.Text = Form3.Text2.Text + vbCrLf
blnAutoSendFlag = False 发送标志位
End If
End Sub
Private Sub MSComm1_OnComm()
Dim buffer As Variant
Dim olen, k As Integer
Dim l As String
Select Case MSComm1.CommEvent
Case comEvReceive
olen = MSComm1.InBufferCount
Form3.Text3.Text = olen
buffer = MSComm1.Input
For k = 0 To olen - 1
If Hex(buffer(k)) <= 9 Then
Form3.Text1.Text = Form3.Text1.Text & Hex(0) & Hex(buffer(k)) & Space(1)
Else
Form3.Text1.Text = Form3.Text1.Text & Hex(buffer(k)) & Space(1)
End If
inbuffer(k) = Hex(buffer(k))
Next
End Select
Form3.Text1.Text = Form3.Text1.Text + vbCrLf
End Sub |