⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 灯的测试.frm

📁 模拟屏 实时控制 监测 报警 监测报告
💻 FRM
📖 第 1 页 / 共 5 页
字号:
s3 = Right(Hex(n3), 2)
  '发送数据
  If Not Form1.MSComm1.PortOpen Then
      MsgBox ("请先选择串口后,再执行此操作")
  Else
      s1 = Text4.Text
      Form1.MSComm1.Output = "UU$" + s1 + s2 + s3
  End If
End If
Text3.Text = "UU$" + s1 + s2 + s3 + Chr$(13) + Chr$(10) + Text3.Text
End Sub

Private Sub Command15_Click()
If Text4.Text = "" Then
  MsgBox ("请输入芯片的地址")
Else
Dim n3 As Integer
Dim i As Integer, s3 As String, s2 As String, s1 As String

Dim myarray1(6) As String
'将8位数据和4位地址的ASC码累加并取其后两位
For i = 1 To 6
    myarray1(i) = "F"
    s2 = s2 + myarray1(i)
    n3 = n3 + Asc(myarray1(i))
     Dim j As Integer
  For j = 1 To 47
  Option2(j).Value = False
  Next
        
Next
For i = 1 To 4
n3 = n3 + Asc(Mid(Trim(Text4.Text), i, 1))
Next
n3 = n3 + Asc("$")
s3 = Right(Hex(n3), 2)
  '发送数据
  If Not Form1.MSComm1.PortOpen Then
      MsgBox ("请先选择串口后,再执行此操作")
  Else
      s1 = Text4.Text
      Form1.MSComm1.Output = "UU$" + s1 + s2 + s3
  End If
End If
Text3.Text = "UU$" + s1 + s2 + s3 + Chr$(13) + Chr$(10) + Text3.Text
End Sub

Private Sub Command16_Click()
If Text4.Text = "" Then
  MsgBox ("请输入芯片的地址")
Else
Dim n3 As Integer
Dim i As Integer, s3 As String, s2 As String, s1 As String

Dim myarray1(6) As String
'将8位数据和4位地址的ASC码累加并取其后两位
For i = 1 To 6
    myarray1(i) = "0"
    s2 = s2 + myarray1(i)
    n3 = n3 + Asc(myarray1(i))
     Dim j As Integer
  For j = 1 To 47
  Option2(j).Value = False
  Next
        
Next
For i = 1 To 4
n3 = n3 + Asc(Mid(Trim(Text4.Text), i, 1))
Next
n3 = n3 + Asc("$")
s3 = Right(Hex(n3), 2)
  '发送数据
  If Not Form1.MSComm1.PortOpen Then
      MsgBox ("请先选择串口后,再执行此操作")
  Else
      s1 = Text4.Text
      Form1.MSComm1.Output = "UU$" + s1 + s2 + s3
  End If
End If
Text3.Text = "UU$" + s1 + s2 + s3 + Chr$(13) + Chr$(10) + Text3.Text
End Sub

Private Sub Command17_Click()
Form2.Visible = False
End Sub

Private Sub Command2_Click()
Dim m As Integer, m1 As Integer
If Not Form1.MSComm1.PortOpen Then
       MsgBox ("请先选择串口后,再执行此操作")  '判断串口的打开状态
Else
If Len(Trim(Text4.Text)) < 4 Then     '判断地址文本框中的数据是否为四位,如是不足四位的就再当前数据的前边补相应位数的0
   m1 = 4 - Len(Trim(Text4.Text))
   Dim d As Integer, sss As String
   For d = 1 To m1
     sss = sss + "0"
   Next
 Text4.Text = sss + Trim(Text4.Text)  '在地址文本框中显示补完0以后的数据
 End If
      Dim s As String, s1 As String   '选择不同的波特率,在数据位则显示不同的值
      If Combo3.Text = "1200" Then
      m = 4
      ElseIf Combo3.Text = "2400" Then
      m = 5
      ElseIf Combo3.Text = "4800" Then
      m = 6
      ElseIf Combo3.Text = "9600" Then
      m = 7
      ElseIf Combo3.Text = "19200" Then
      m = 8
    End If
 s = "UU%" + Text4.Text + "0" + Trim(str(m)) + "00$"  '初始化时所发出的命令,没有校验位
 Dim i As Integer, n As Integer
 For i = 3 To 12           '从第三位起开始算校验码,求ASCII码累加,然后取后两位
 myarray(i) = Mid(s, i, 1)
 n = n + Asc(myarray(i))
 Next
 s1 = Right(Hex(n), 2)
 Form1.MSComm1.Output = s + s1   '初始化时所发的命令
End If
End Sub


Private Sub Command3_Click()
If Text4.Text = "" Then
MsgBox ("请输入芯片的地址")
Else
Dim n3 As Integer
Dim i As Integer, s3 As String, s2 As String, s1 As String

Dim myarray1(8) As String
For i = 1 To 8
myarray1(i) = "2"
s2 = s2 + myarray1(i)
n3 = n3 + Asc(myarray1(i))
 Dim j As Integer
  For j = 1 To 39
  Option1(j).Value = False
  Next
    
Next
For i = 1 To 4
n3 = n3 + Asc(Mid(Trim(Text4.Text), i, 1))
Next
n3 = n3 + Asc("$")
s3 = Right(Hex(n3), 2)
  
  If Not Form1.MSComm1.PortOpen Then
      MsgBox ("请先选择串口后,再执行此操作")
Else
      s1 = Text4.Text
    
      Form1.MSComm1.Output = "UU$" + s1 + s2 + s3
End If
End If
Text3.Text = "UU$" + s1 + s2 + s3 + Chr$(13) + Chr$(10) + Text3.Text
End Sub

Private Sub Command4_Click()
Frame1.Visible = True
Frame10.Visible = False
Frame23.Visible = False
End Sub

Private Sub Command5_Click()
Dim n1 As Integer, n2 As Integer
Dim i As Integer, s As String
Dim myarray() As String
n1 = Len(Trim(Text1(0).Text)) '所发送的命令
ReDim myarray(n1)
For i = 3 To n1
myarray(i) = Mid(Trim(Text1(0).Text), i, 1) '从第三位开始取数据
n2 = n2 + Asc(myarray(i))  '累加ASC值
Next
s = Right(Hex(n2), 2)     '取低字节
   'intport = CInt(Right(Trim(combol.Text), 1))
  If Not Form1.MSComm1.PortOpen Then
       MsgBox ("请先选择串口后,再执行此操作")
Else

      Dim j As Integer    '当用发送钮按直接发送数据时,直观测试中的单选按钮全处于没选中的状态
      For j = 1 To 39
        Option1(j).Value = False
      Next
       Form1.MSComm1.Output = Text1(0).Text + s '向串口发送数据
       
End If
Text3.Text = Text1(0).Text + s + Chr$(13) + Chr$(10) + Text3.Text   '在文本框中显示向下发送的字符

End Sub

Private Sub Command6_Click()
Frame10.Visible = True
Frame1.Visible = False
Frame23.Visible = False
End Sub

Private Sub Command7_Click()
If Text4.Text = "" Then
MsgBox ("请输入芯片的地址")
Else
Dim n3 As Integer
Dim i As Integer, s3 As String, s2 As String, s1 As String

Dim myarray1(8) As String
For i = 1 To 8
    myarray1(i) = "3"
s2 = s2 + myarray1(i)
n3 = n3 + Asc(myarray1(i))
 Dim j As Integer
  For j = 1 To 39
  Option1(j).Value = False
  Next
Next
For i = 1 To 4
n3 = n3 + Asc(Mid(Trim(Text4.Text), i, 1))
Next
n3 = n3 + Asc("$")
s3 = Right(Hex(n3), 2)
  
  If Not Form1.MSComm1.PortOpen Then
      MsgBox ("请先选择串口后,再执行此操作")
Else
      s1 = Text4.Text
    
      Form1.MSComm1.Output = "UU$" + s1 + s2 + s3
End If
End If
Text3.Text = "UU$" + s1 + s2 + s3 + Chr$(13) + Chr$(10) + Text3.Text
End Sub

Private Sub Command8_Click()
If Text4.Text = "" Then
  MsgBox ("请输入芯片的地址")
Else
Dim n3 As Integer
Dim i As Integer, s3 As String, s2 As String, s1 As String

Dim myarray1(6) As String
'将8位数据和4位地址的ASC码累加并取其后两位
For i = 1 To 6
    myarray1(i) = "5"  '1是代表红
    s2 = s2 + myarray1(i)
    n3 = n3 + Asc(myarray1(i))
     Dim j As Integer
  For j = 1 To 47
  Option2(j).Value = False
  Next
        
Next
For i = 1 To 4
n3 = n3 + Asc(Mid(Trim(Text4.Text), i, 1))
Next
n3 = n3 + Asc("$")
s3 = Right(Hex(n3), 2)
  '发送数据
  If Not Form1.MSComm1.PortOpen Then
      MsgBox ("请先选择串口后,再执行此操作")
  Else
      s1 = Text4.Text
      Form1.MSComm1.Output = "UU$" + s1 + s2 + s3
  End If
End If
Text3.Text = "UU$" + s1 + s2 + s3 + Chr$(13) + Chr$(10) + Text3.Text
End Sub

Private Sub Command9_Click()
If Text4.Text = "" Then
MsgBox ("请输入芯片的地址")
Else
Dim n3 As Integer
Dim i As Integer, s3 As String, s2 As String, s1 As String

Dim myarray1(8) As String
For i = 1 To 8
    myarray1(i) = "4"
s2 = s2 + myarray1(i)
n3 = n3 + Asc(myarray1(i))
 Dim j As Integer
  For j = 1 To 39
  Option1(j).Value = False
  Next
Next
For i = 1 To 4
n3 = n3 + Asc(Mid(Trim(Text4.Text), i, 1))
Next
n3 = n3 + Asc("$")
s3 = Right(Hex(n3), 2)
  
  If Not Form1.MSComm1.PortOpen Then
      MsgBox ("请先选择串口后,再执行此操作")
Else
      s1 = Text4.Text
    
      Form1.MSComm1.Output = "UU$" + s1 + s2 + s3
End If
End If
Text3.Text = "UU$" + s1 + s2 + s3 + Chr$(13) + Chr$(10) + Text3.Text
End Sub




Private Sub Option1_Click(Index As Integer)
If Text4.Text = "" Then
MsgBox ("请输入芯片的地址")
Else
Dim str(8) As String, str1(4) As String
Dim i As Integer, j As Integer, n As Integer, m As Integer, c As Integer
For m = 1 To 8
str(m) = 0
Next
n = n + Asc("$")
For c = 1 To 4
str1(c) = Mid(Trim(Text4.Text), c, 1)
n = n + Asc(str1(c))
Next
'将单选按钮的状态转换成数据传给STR()数组
For i = 1 To 8
 For j = 0 To 4
   If Option1((i - 1) * 5 + j).Value = True Then
   str(i) = j
   End If
 Next
n = n + Asc(str(i))
Next
 Form1.MSComm1.Output = "UU$" + Text4.Text + str(1) + str(2) + str(3) + str(4) + str(5) + str(6) + str(7) + str(8) + Right(Hex(n), 2)
End If
Text3.Text = "UU$" + Text4.Text + str(1) + str(2) + str(3) + str(4) + str(5) + str(6) + str(7) + str(8) + Right(Hex(n), 2) + Chr$(13) + Chr$(10) + Text3.Text

End Sub

Private Sub Option2_Click(Index As Integer)
If Text4.Text = "" Then
   MsgBox ("请输入芯片的地址")
Else
Dim str(12) As String, str1(4) As String, a As Integer, str2(4) As String, str3 As String, str4(6) As String, s(6) As String

Dim i As Integer, j As Integer, n As Integer, m As Integer, c As Integer, aa As Integer
For m = 1 To 12
str(m) = 0
Next
n = n + Asc("$")
For c = 1 To 4
str1(c) = Mid(Trim(Text4.Text), c, 1)
n = n + Asc(str1(c))
Next
'将单选按钮的状态转换成数据传给STR()数组
For i = 1 To 12
 For j = 0 To 3
   If Option2((i - 1) * 4 + j).Value = True Then
   str(i) = j
   End If
 Next
 
 If str(i) = 0 Then
   str3 = str3 + "00"
   ElseIf str(i) = 1 Then
   str3 = str3 + "01"
   ElseIf str(i) = 2 Then
   str3 = str3 + "10"
   ElseIf str(i) = 3 Then
   str3 = str3 + "11"
 End If
Next
For i = 1 To 6
str4(i) = Mid(str3, (i - 1) * 4 + 1, 4)
Select Case str4(i)
 Case "0000": s(i) = s(i) & "0"
 Case "0001": s(i) = s(i) & "1"
 Case "0010": s(i) = s(i) & "2"
 Case "0011": s(i) = s(i) & "3"
 Case "0100": s(i) = s(i) & "4"
 Case "0101": s(i) = s(i) & "5"
 Case "0110": s(i) = s(i) & "6"
 Case "0111": s(i) = s(i) & "7"
 Case "1000": s(i) = s(i) & "8"
 Case "1001": s(i) = s(i) & "9"
 Case "1010": s(i) = s(i) & "A"
 Case "1011": s(i) = s(i) & "B"
 Case "1100": s(i) = s(i) & "C"
 Case "1101": s(i) = s(i) & "D"
 Case "1110": s(i) = s(i) & "E"
 Case "1111": s(i) = s(i) & "F"
End Select
n = n + Asc(s(i))

Next

Form1.MSComm1.Output = "UU$" + Text4.Text + s(1) + s(2) + s(3) + s(4) + s(5) + s(6) + Right(Hex(n), 2)
End If
Text3.Text = "UU$" + Text4.Text + s(1) + s(2) + s(3) + s(4) + s(5) + s(6) + Right(Hex(n), 2) + Chr$(13) + Chr$(10) + Text3.Text
'Text3.Text = str(1)
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -