📄 exmscomm.frm
字号:
Width = 810
End
Begin VB.Label Label3
AutoSize = -1 'True
Caption = "OutBufferSize"
Height = 195
Left = 360
TabIndex = 19
Top = 360
Width = 975
End
End
Begin VB.Frame Frame5
Caption = " Serial Comm Port Settings "
Height = 1935
Left = 240
TabIndex = 13
Top = 240
Width = 3135
Begin VB.ComboBox cboHandshaking
Height = 315
ItemData = "ExMsComm.frx":001C
Left = 1440
List = "ExMsComm.frx":002C
Style = 2 'Dropdown List
TabIndex = 31
Top = 1440
Width = 1455
End
Begin VB.CheckBox chkRTSEnable
Alignment = 1 'Right Justify
Caption = "RTSEnable"
Height = 375
Left = 1680
TabIndex = 17
Top = 840
Width = 1215
End
Begin VB.CheckBox chkDTREnable
Alignment = 1 'Right Justify
Caption = "DTREnable"
Height = 375
Left = 360
TabIndex = 16
Top = 840
Width = 1215
End
Begin VB.TextBox txtSettings
Height = 285
Left = 1440
TabIndex = 15
Top = 360
Width = 1455
End
Begin VB.Label Label8
AutoSize = -1 'True
Caption = "Handshaking"
Height = 195
Left = 360
TabIndex = 32
Top = 1440
Width = 945
End
Begin VB.Label Label2
AutoSize = -1 'True
Caption = "Settings"
Height = 195
Left = 360
TabIndex = 14
Top = 360
Width = 570
End
End
End
Begin VB.Frame Frame3
Caption = " Comm Port "
Height = 855
Left = 120
TabIndex = 5
Top = 6840
Width = 6375
Begin VB.CommandButton cmdClose
Caption = "Close"
Height = 375
Left = 3000
TabIndex = 9
Top = 240
Width = 855
End
Begin VB.CommandButton cmdOpen
Caption = "Open"
Height = 375
Left = 1920
TabIndex = 8
Top = 240
Width = 855
End
Begin VB.TextBox txtCommPort
Height = 285
Left = 1080
TabIndex = 7
Top = 360
Width = 615
End
Begin VB.Label Label1
AutoSize = -1 'True
Caption = "CommPort"
Height = 195
Left = 240
TabIndex = 6
Top = 360
Width = 720
End
End
Begin VB.Frame Frame2
Caption = " OnComm "
Height = 2175
Left = 120
TabIndex = 4
Top = 4560
Width = 6375
Begin VB.ListBox lstInput
Height = 1620
ItemData = "ExMsComm.frx":0050
Left = 1680
List = "ExMsComm.frx":0052
TabIndex = 11
Top = 360
Width = 4575
End
Begin VB.ListBox lstOnComm
Height = 1620
ItemData = "ExMsComm.frx":0054
Left = 120
List = "ExMsComm.frx":0056
TabIndex = 10
Top = 360
Width = 1455
End
End
Begin VB.Frame Frame1
Caption = " Output "
Height = 960
Left = 120
TabIndex = 1
Top = 3480
Width = 6375
Begin VB.TextBox txtOutput
Height = 285
Left = 1320
TabIndex = 3
Top = 360
Width = 4815
End
Begin VB.CommandButton cmdOutput
Caption = "Output"
Height = 375
Left = 360
TabIndex = 2
Top = 360
Width = 855
End
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Private Sub InputData()
Dim i, S, Data
S = ""
If Apax1.InBufferCount > 0 Then
Data = Apax1.Input
If IsArray(Data) Then
For i = LBound(Data) To UBound(Data)
S = S & " &H" & Hex(Data(i))
Next
lstInput.AddItem (S)
End If
End If
End Sub
Private Sub Apax1_OnComm()
Select Case Apax1.CommEvent
Case comEvSend:
lstOnComm.AddItem ("comEvSend")
Case comEvReceive:
lstOnComm.AddItem ("comEvReceive")
InputData
Case comEvCTS:
lstOnComm.AddItem ("comEvCTS")
Case comEvDSR:
lstOnComm.AddItem ("comEvDSR")
Case comEvCD:
lstOnComm.AddItem ("comEvCD")
Case comEvRing:
lstOnComm.AddItem ("comEvRing")
Case comEventBreak:
lstOnComm.AddItem ("comEventBreak")
Case comEventCTSTO:
lstOnComm.AddItem ("comEventCTSTO")
Case comEventDSRTO:
lstOnComm.AddItem ("comEventDSRTO")
Case comEventFrame:
lstOnComm.AddItem ("comEventFrame")
Case comEventOverrun:
lstOnComm.AddItem ("comEventOverrun")
Case comEventCDTO:
lstOnComm.AddItem ("comEventCDTO")
Case comEventRxOver:
lstOnComm.AddItem ("comEventRxOver")
Case comEventRxParity:
lstOnComm.AddItem ("comEventRxParity")
Case comEventTxFull:
lstOnComm.AddItem ("comEventTxFull")
End Select
End Sub
Private Sub cmdClose_Click()
Apax1.Close
End Sub
Private Sub cmdOpen_Click()
Apax1.CommPort = CInt(txtCommPort.Text)
Apax1.PortOpen
txtCommPort.Text = CStr(Apax1.CommPort)
End Sub
Private Sub cmdOutput_Click()
Dim i, Count, S()
Count = Len(txtOutput.Text)
ReDim S(Count)
For i = 1 To Count
S(i - 1) = GetChar(txtOutput.Text, i)
Next
Apax1.Output = S
End Sub
Private Function GetChar(ByVal Str As String, ByVal Index As Integer) As Byte
GetChar = Asc(Mid(Str, Index, 1))
End Function
Private Sub cmdSet_Click()
Apax1.Settings = txtSettings.Text
Apax1.DTREnable = CBool(chkDTREnable.Value)
Apax1.RTSEnable = CBool(chkRTSEnable.Value)
Apax1.Handshaking = cboHandshaking.ListIndex
Apax1.OutBufferSize = CInt(txtOutBufferSize.Text)
Apax1.SThreshold = CInt(txtSThreshold.Text)
Apax1.InputMode = cboInputMode.ListIndex
Apax1.InBufferSize = CInt(txtInBufferSize.Text)
Apax1.RTThreshold = CInt(txtRTThreshold.Text)
End Sub
Private Sub Form_Activate()
txtCommPort.Text = CStr(Apax1.CommPort)
txtSettings.Text = Apax1.Settings
chkDTREnable.Value = Abs(Apax1.DTREnable) ' Boolean -> Value
chkRTSEnable.Value = Abs(Apax1.RTSEnable) ' Boolean -> Value
cboHandshaking.ListIndex = Apax1.Handshaking
txtOutBufferSize.Text = CStr(Apax1.OutBufferSize)
txtSThreshold.Text = CStr(Apax1.SThreshold)
cboInputMode.ListIndex = Apax1.InputMode
txtInBufferSize.Text = CStr(Apax1.InBufferSize)
txtRTThreshold.Text = CStr(Apax1.RTThreshold)
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -