?? 燈的測試.frm
字號:
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 + -