我写过一个读取地泵地方法,注意,每种地泵的AT指令不一样,要做调整。 一下是一段代码:(将地泵数据保存到一个文本中) Dim p_input As String Dim p_num(7) As String Dim p_number As String Dim p_pathf As String Dim a As Integer On Error GoTo ine 'Text1.SetFocus 'Do text1.Text = "" With MSComm1 .CommPort = 1 .Settings = "1200,n,8,1" .PortOpen = True End With Do Loop While MSComm1.InBufferCount < 21 If MSComm1.InBufferCount >= 20 Then p_input = "" p_input = MSComm1.Input If InStr(p_input, "=") Then p_input = Right(p_input, Len(p_input) - InStr(p_input, "=")) p_input = Left(p_input, 7) 'p_input = Right(p_input, Len(p_input) - 1) p_number = p_input For i = 7 To 1 Step -1 p_num(i) = Right(p_number, Len(p_number) - (i - 1)) p_number = Left(p_number, Len(p_number) - 1) Next i p_number = "" For i = 7 To 1 Step -1 p_number = p_number + p_num(i) p_value = Val(p_number) Next i text1.Text = p_value End If p_pathf = App.Path & "/DATA.txt" text1.SaveFile p_pathf, rtfText 'Open p_pathf For Input As #1 'Write #1, p_value 'Close #1 End If GoTo inerr ine: MsgBox ("没有找到连接。") inerr: MSComm1.PortOpen = False 'Loop While stops = True有时,地泵需要先对串口传送一个起始信号,然后才能接收数据。集体看AT指令说明书。
一下是一段代码:(将地泵数据保存到一个文本中)
Dim p_input As String
Dim p_num(7) As String
Dim p_number As String
Dim p_pathf As String
Dim a As Integer
On Error GoTo ine
'Text1.SetFocus
'Do
text1.Text = ""
With MSComm1
.CommPort = 1
.Settings = "1200,n,8,1"
.PortOpen = True
End With
Do
Loop While MSComm1.InBufferCount < 21
If MSComm1.InBufferCount >= 20 Then
p_input = ""
p_input = MSComm1.Input
If InStr(p_input, "=") Then
p_input = Right(p_input, Len(p_input) - InStr(p_input, "="))
p_input = Left(p_input, 7)
'p_input = Right(p_input, Len(p_input) - 1)
p_number = p_input
For i = 7 To 1 Step -1
p_num(i) = Right(p_number, Len(p_number) - (i - 1))
p_number = Left(p_number, Len(p_number) - 1)
Next i
p_number = ""
For i = 7 To 1 Step -1
p_number = p_number + p_num(i)
p_value = Val(p_number)
Next i
text1.Text = p_value
End If
p_pathf = App.Path & "/DATA.txt"
text1.SaveFile p_pathf, rtfText
'Open p_pathf For Input As #1
'Write #1, p_value
'Close #1
End If
GoTo inerr
ine:
MsgBox ("没有找到连接。")
inerr:
MSComm1.PortOpen = False
'Loop While stops = True有时,地泵需要先对串口传送一个起始信号,然后才能接收数据。集体看AT指令说明书。