现在用VB编一个上位机接收串口数据,因为发到上位机的数据可能会有乱码,所以接收数据时先检查是否有06,如果检测到06,则接收06后面的6个数据,然后放到一个text中。我现在的程序是这样的:
Private Sub MSComm1_OnComm()
Dim rearr(), ReceiveArr() As Byte ' 接收数据数组
Dim Counter As Integer ' 接收数据个数计数器
Dim i As Integer ' 循环变量
Select Case MSComm1.CommEvent
        Case comEvReceive
ReceiveArr = MSComm1.Input
Select Case state
Case 1:
    If (ReceiveArr = 6) Then
    state = state + 1
    End If
Case 2:
    j = j + 1
    rearr(j) = ReceiveArr
    If (j = 6) Then
         Text6.Text = rearr
         state = 1
    End If    End Select
End Select
End Sub
通用变量定义:Dim state As Integer
Dim j As Integer
下面这样定义:
Private Sub Form_Load()
state = 1
j = 1
总是说类型不匹配,ReceiveArr应该定义为一个变量还是一个数组,应该是什么类型?我换成string类型后,还是提示类型不匹配,该怎么编啊?急需谢谢了。