VB串口通信遇到的有关问题

VB串口通信遇到的问题
Private Sub MSComm1_OnComm()
Static num As Integer
Dim Buffer As Variant
Dim Arr() As Byte
receive_cnt = MSComm1.InBufferCount '接收缓冲区的字节数
Buffer = MSComm1.Input
Arr = Buffer
indate = Val(Arr(0)) '收到的二进制数转换成十进制数
If num = 0 Then
Text2.Text = indate
ElseIf num = 1 Then
Text3.Text = indate
End If
num = mum + 1
If num = 2 Then
num = 0
End If
End Sub
我下位机上传两个数据,TEXT2显示第一个数据,TEXT3显示第二个数据。现在,第一次上传的数据显示正常。但是下来显示的数据都在TEXT3中显示是什么问题

------解决方案--------------------
VB code
Option Explicit
    Dim receive_cnt
    Dim indate As Integer
Private Sub Form_Load()
    MSComm1.RThreshold = 1
    MSComm1.InputMode = comInputModeBinary
    MSComm1.PortOpen = True
End Sub

Private Sub MSComm1_OnComm()
    Static num As Integer
    Dim Buffer As Variant
    Dim Arr() As Byte
    Select Case MSComm1.CommEvent
        Case 2
        Text4 = num
        Arr = MSComm1.Input
        indate = Arr(0) '收到的二进制数转换成十进制数
        If num = 0 Then
            Text2.Text = indate
        ElseIf num = 1 Then
            Text3.Text = indate
        End If
        num = num + 1
        If num >= 2 Then
            num = 0 'num - 2
        End If
    End Select
End Sub