📄 frmsr3.frm
字号:
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Left = 2160
TabIndex = 14
Top = 3360
Width = 375
End
Begin VB.Label Label11
Caption = "子命令"
BeginProperty Font
Name = "宋体"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Left = 5040
TabIndex = 13
Top = 360
Width = 735
End
End
End
Attribute VB_Name = "frmSR"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Dim E As Double
Dim m As Double
Public Function ChToFl(n As String) As Double
E = Val(n) \ (2 ^ 23)
m = Val(n) And &H7FFFFF
If E >= 256 Then
E = E - 256
backValue = -(1 + m * (2 ^ (-23))) * (2 ^ (E - 127))
Else
backValue = (1 + m * (2 ^ (-23))) * (2 ^ (E - 127))
End If
End Function
Public Function RecTemp() As String
Dim buf$
If frmMDI.comm.InBufferCount > 0 Then
frmMDI.comm.InputLen = 0
buf = frmMDI.comm.Input
End If
End Function
Public Function GetData() As String
Dim Count As Integer
Dim Count1 As Integer
Dim count2 As Integer
Dim flag1 As Boolean
Dim flag2 As Boolean
flag1 = False
flag2 = False
Count = 0
Count1 = 0
count2 = 0
phoneNum = ""
phoneTime = ""
receiveStr = ""
frmMDI.comm.InputLen = 1
While frmMDI.comm.InBufferCount > 0
ReDim Preserve arr_return(Count + 1)
arr_return(Count) = frmMDI.comm.Input
If Count > 3 Then
If arr_return(Count - 3) = "+" And arr_return(Count - 2) = "8" And arr_return(Count - 1) = "6" Then
flag2 = True
End If
End If
If flag2 = True Then
If count2 < 11 Then
phoneNum = phoneNum + arr_return(Count)
'count2 = count2 + 1
ElseIf count2 >= 15 And count2 < 32 Then
phoneTime = phoneTime + arr_return(Count)
ElseIf count2 >= 32 Then
flag2 = False
End If
count2 = count2 + 1
End If
If Count > 0 Then
If arr_return(Count - 1) = "7" And arr_return(Count) = "E" Then
flag1 = True
receiveStr = receiveStr + "7"
mess_index(0) = "7"
End If
End If
If flag1 = True Then
ReDim Preserve mess_index(Count1 + 1)
mess_index(Count1 + 1) = arr_return(Count)
receiveStr = receiveStr + arr_return(Count)
If arr_return(Count - 1) = "0" And arr_return(Count) = "D" Then
flag1 = False
End If
Count1 = Count1 + 1
End If
Count = Count + 1
Wend
End Function
Public Function GetData1() As String
Dim Count As Integer
Count = 0
frmMDI.comm.InputLen = 1
While frmMDI.comm.InBufferCount > 0
ReDim Preserve arr_return(Count + 1)
arr_return(Count) = frmMDI.comm.Input
Count = Count + 1
Wend
End Function
Public Function ReadNo() As String
receiveStr6 = ""
Dim guoDu As Integer
On Error Resume Next
If frmMDI.comm.InBufferCount > 0 Then
Dim Count As Integer
Count = 0
frmMDI.comm.InputLen = 1
While frmMDI.comm.InBufferCount > 0
ReDim Preserve mess_index(Count + 1)
'mess_index(Count) = Hex(frmMDI.comm.Input)
mess_index(Count) = frmMDI.comm.Input
receiveStr6 = receiveStr6 + mess_index(Count)
Count = Count + 1
Wend
Count = UBound(mess_index)
'no = Val("&H" + mess_index(Count - 3))
no = mess_index(Count - 3)
Count4 = Val("&H" + mess_index(Count - 3))
txtczxs.Text = txtczxs.Text + Chr(13) + Chr(10) + "新短信编号:" & no
frmMDI.comm.Output = "AT+CMGR=" + Hex(no) + Chr(13) + Chr(10)
End If
End Function
Private Sub cmbSon_Click()
If cmbSon.Text = "设置蓄电池总电压上限" Then
txtINFO.Text = "000080FFFF"
End If
If cmbSon.Text = "设置蓄电池总电压下限" Then
txtINFO.Text = "000081FFFF"
End If
If cmbSon.Text = "设置蓄电池单体电压上限" Then
txtINFO.Text = "000082FFFF"
End If
If cmbSon.Text = "设置蓄电池单体电压下限" Then
txtINFO.Text = "000083FFFF"
End If
If cmbSon.Text = "电池自检时间长度" Then
txtINFO.Text = "0000E0FFFF"
End If
If cmbSon.Text = "遥控关机延迟时间" Then
txtINFO.Text = "0000E1FFFF"
End If
If cmbSon.Text = "UPS恢复延迟时间" Then
txtINFO.Text = "0000E2FFFF"
End If
If cmbSon.Text = "是否自动重启机" Then
txtINFO.Text = "0000E3FFFF"
End If
If cmbSon.Text = "是否允许均匀设置" Then
txtINFO.Text = "0000E4FFFF"
End If
If cmbSon.Text = "主/从/单机设置" Then
txtINFO.Text = "0000E5FFFF"
End If
If cmbSon.Text = "主从机交替工作时间" Then
txtINFO.Text = "0000E6FFFF"
End If
If cmbSon.Text = "UPS工作模式设置" Then
txtINFO.Text = "0000E7FFFF"
End If
If cmbSon.Text = "UPS告警继电器设置" Then
txtINFO.Text = "0000E8FFFF"
End If
If cmbSon.Text = "切旁路(切到旁路)" Then
txtINFO.Text = "1001"
End If
If cmbSon.Text = "切旁路(切离旁路)" Then
txtINFO.Text = "1002"
End If
If cmbSon.Text = "报警消音" Then
txtINFO.Text = "2000"
End If
If cmbSon.Text = "报警声测试" Then
txtINFO.Text = "4000"
End If
If cmbSon.Text = "电池自检" Then
txtINFO.Text = "5000"
End If
If cmbSon.Text = "取消遥控关机" Then
txtINFO.Text = "6000"
End If
If cmbSon.Text = "取消电池自检" Then
txtINFO.Text = "7000"
End If
If cmbSon.Text = "遥控开机" Then
txtINFO.Text = "3001"
End If
If cmbSon.Text = "遥控立即关机(不关旁路)" Then
txtINFO.Text = "3002"
End If
If cmbSon.Text = "遥控延迟关机(不关旁路)" Then
txtINFO.Text = "3003"
End If
If cmbSon.Text = "遥控紧急关机(关旁路,保留)" Then
txtINFO.Text = "3004"
End If
If cmbSon.Text = "获取第一条历史告警命令" Then
txtINFO.Text = "00"
End If
If cmbSon.Text = "收到历史告警正确,要求上送下一条" Then
txtINFO.Text = "01"
End If
If cmbSon.Text = "接收历史告警错误,重发上一条" Then
txtINFO.Text = "02"
End If
If cmbSon.Text = "参考电压校正系数" Then
txtINFO.Text = "A1" + InputBox("请输4位十六进制参考电压校正系数,字母大写", "参考电压校正系数")
End If
If cmbSon.Text = "逆变电压监测校正系数" Then
txtINFO.Text = "A2" + InputBox("请输4位十六进制逆变电压监测校正系数,字母大写", "逆变电压监测校正系数")
End If
If cmbSon.Text = "旁路电压监测校正系数" Then
txtINFO.Text = "A3" + InputBox("请输4位十六进制旁路电压监测校正系数,字母大写", "旁路电压监测校正系数")
End If
If cmbSon.Text = "负载电流监测校正系数" Then
txtINFO.Text = "A4" + InputBox("请输4位十六进制负载电流监测校正系数,字母大写", "负载电流监测校正系数")
End If
End Sub
Private Sub cmbSR2_Change()
Dim i As Integer
If cmbSR2.Text = "获取模拟量量化数据(浮点数)" Then
txtCID2.Text = "41"
txtLEN.Text = "0000"
txtINFO.Text = ""
cmbSon.Clear
End If
If cmbSR2.Text = "获取模拟量量化数据(定点数)" Then
txtCID2.Text = "42"
txtLEN.Text = "0000"
txtINFO.Text = ""
cmbSon.Clear
End If
If cmbSR2.Text = "获取开关量输入状态" Then
txtCID2.Text = "43"
txtLEN.Text = "0000"
txtINFO.Text = ""
cmbSon.Clear
End If
If cmbSR2.Text = "获取告警状态" Then
txtCID2.Text = "44"
txtLEN.Text = "0000"
txtINFO.Text = ""
cmbSon.Clear
End If
If cmbSR2.Text = "遥控" Then
txtCID2.Text = "45"
txtINFO.Text = ""
txtLEN.Text = "0000"
cmbSon.Clear
cmbSon.AddItem "切旁路(切到旁路)"
cmbSon.AddItem "切旁路(切离旁路)"
cmbSon.AddItem "报警消音"
cmbSon.AddItem "报警声测试"
cmbSon.AddItem "电池自检"
cmbSon.AddItem "取消遥控关机"
cmbSon.AddItem "取消电池自检"
cmbSon.AddItem "遥控开机"
cmbSon.AddItem "遥控立即关机(不关旁路)"
cmbSon.AddItem "遥控延迟关机(不关旁路)"
cmbSon.AddItem "遥控紧急关机(关旁路,保留)"
txtLEN.Text = "C004"
End If
If cmbSR2.Text = "获取系统参数(浮点数)" Then
txtCID2.Text = "46"
txtLEN.Text = "0000"
txtINFO.Text = ""
cmbSon.Clear
End If
If cmbSR2.Text = "获取系统参数(定点数)" Then
txtCID2.Text = "47"
txtLEN.Text = "0000"
txtINFO.Text = ""
cmbSon.Clear
End If
If cmbSR2.Text = "设定系统参数(浮点数)" Then
txtCID2.Text = "48"
txtLEN.Text = "0000"
txtINFO.Text = ""
cmbSon.Clear
cmbSon.AddItem "设置蓄电池总电压上限" '1
cmbSon.AddItem "设置蓄电池总电压下限" '2
cmbSon.AddItem "设置蓄电池单体电压上限" '3
cmbSon.AddItem "设置蓄电池单体电压下限" '4
cmbSon.AddItem "电池自检时间长度" '5
cmbSon.AddItem "遥控关机延迟时间" '6
cmbSon.AddItem "UPS恢复延迟时间" '7
cmbSon.AddItem "是否自动重启机" '8
cmbSon.AddItem "是否允许均充设置" '9
cmbSon.AddItem "主/从/单机设置" '10
cmbSon.AddItem "主从机交替工作时间" '11
cmbSon.AddItem "UPS工作模式设置" '12
cmbSon.AddItem "UPS告警继电器设置" '13
txtLEN.Text = "600A"
End If
If cmbSR2.Text = "设定系统参数(定点数)" Then
txtCID2.Text = "49"
txtLEN.Text = "0000"
txtINFO.Text = ""
cmbSon.Clear
End If
If cmbSR2.Text = "获取系统历史数据(浮点数)" Then
txtCID2.Text = "4A"
txtLEN.Text = "0000"
txtINFO.Text = ""
cmbSon.Clear
End If
If cmbSR2.Text = "获取系统历史数据(定点数)" Then
txtCID2.Text = "4B"
txtLEN.Text = "0000"
txtINFO.Text = ""
cmbSon.Clear
End If
If cmbSR2.Text = "获取历史告警" Then
txtCID2.Text = "4C"
txtLEN.Text = "0000"
txtINFO.Text = ""
cmbSon.Clear
cmbSon.AddItem "获取第一条历史告警命令"
cmbSon.AddItem "收到历史告警正确,要求上送下一条"
cmbSon.AddItem "接收历史告警错误,重发上一条"
txtLEN.Text = "E002"
End If
If cmbSR2.Text = "获取监控模块时间" Then
txtCID2.Text = "4D"
txtLEN.Text = "0000"
txtINFO.Text = ""
cmbSon.Clear
End If
If cmbSR2.Text = "设定监控模块时间" Then
txtCID2.Text = "4E"
txtLEN.Text = "0000"
txtINFO.Text = ""
cmbSon.Clear
End If
If cmbSR2.Text = "获取通信协议版本号" Then
txtCID2.Text = "4F"
txtLEN.Text = "0000"
txtINFO.Text = ""
cmbSon.Clear
End If
If cmbSR2.Text = "获取设备地址" Then
txtCID2.Text = "50"
txtLEN.Text = "0000"
txtINFO.Text = ""
cmbSon.Clear
End If
If cmbSR2.Text = "获取设备(监控模块)厂家信息" Then
txtCID2.Text = "51"
txtLEN.Text = "0000"
txtINFO.Text = ""
cmbSon.Clear
End If
If cmbSR2.Text = "获取DSP某内存单元数据" Then
txtCID2.Text = "E0"
txtLEN.Text = "0000"
txtINFO.Text = ""
cmbSon.Clear
txtINFO.Text = InputBox("请输入4位数内存单元地址,字母大写", "内存地址输入")
End If
If cmbSR2.Text = "调节UPS输出电压范围" Then
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -