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

📄 form1.frm

📁 CH372 USB-UART Chip Specification Document,for reference only
💻 FRM
📖 第 1 页 / 共 2 页
字号:
VERSION 5.00
Object = "{6B7E6392-850A-101B-AFC0-4210102A8DA7}#1.3#0"; "COMCTL32.OCX"
Begin VB.Form Form1 
   Caption         =   "Form1"
   ClientHeight    =   7740
   ClientLeft      =   165
   ClientTop       =   450
   ClientWidth     =   8970
   LinkTopic       =   "Form1"
   ScaleHeight     =   7740
   ScaleWidth      =   8970
   StartUpPosition =   2  '屏幕中心
   Begin ComctlLib.StatusBar StatusBar1 
      Align           =   2  'Align Bottom
      Height          =   375
      Left            =   0
      TabIndex        =   6
      Top             =   7365
      Width           =   8970
      _ExtentX        =   15822
      _ExtentY        =   661
      SimpleText      =   ""
      _Version        =   327682
      BeginProperty Panels {0713E89E-850A-101B-AFC0-4210102A8DA7} 
         NumPanels       =   2
         BeginProperty Panel1 {0713E89F-850A-101B-AFC0-4210102A8DA7} 
            Key             =   ""
            Object.Tag             =   ""
         EndProperty
         BeginProperty Panel2 {0713E89F-850A-101B-AFC0-4210102A8DA7} 
            Text            =   "ErrorCount=0"
            TextSave        =   "ErrorCount=0"
            Key             =   ""
            Object.Tag             =   ""
         EndProperty
      EndProperty
   End
   Begin VB.TextBox TxtErr 
      Height          =   375
      Left            =   7560
      TabIndex        =   4
      Top             =   6840
      Width           =   975
   End
   Begin VB.ListBox List1 
      Height          =   6000
      Left            =   240
      TabIndex        =   3
      Top             =   720
      Width           =   8295
   End
   Begin VB.CommandButton CmdClear 
      Caption         =   "Clear"
      Height          =   375
      Left            =   7200
      TabIndex        =   2
      Top             =   240
      Width           =   1095
   End
   Begin VB.CommandButton CmdClose 
      Caption         =   "Close"
      Height          =   375
      Left            =   6000
      TabIndex        =   1
      Top             =   240
      Width           =   1095
   End
   Begin VB.CheckBox ChkTest 
      Caption         =   "Test"
      Height          =   375
      Left            =   360
      TabIndex        =   0
      Top             =   240
      Width           =   735
   End
   Begin VB.Label Label3 
      Caption         =   "ErrorCount"
      Height          =   255
      Left            =   6240
      TabIndex        =   5
      Top             =   6960
      Width           =   1095
   End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit

Dim i, mLength, mTestCount, mErrCnt, mStep, mTotal As Long
Dim speed As Double
Dim IsOpen As Byte

'测试
Private Sub ChkTest_Click()
    Dim mBuffer As mBuf
    Dim mReadBuf As mBuf
    
    If (ChkTest.Value = 1) Then
        If (Not IsOpen) Then
            IsOpen = mOpenDevice()
            If (Not IsOpen) Then
                Exit Sub
            End If
        End If
            mErrCnt = 0
            StatusBar1.Panels.Item(1).Text = "Testing..."
            TxtErr.Text = mErrCnt
            List1.AddItem ("*** Step-0: notice MCU start test ")
            Call SetCurSel
            
            mBuffer.mBuff(0) = TEST_START ' 我们在计算机和单片机的应用程序之间约定下传数据的首字节是命令码
            mTotal = 1
        On Error Resume Next
            If (CH375WriteData(0, mBuffer, mTotal)) Then '发送成功
                List1.AddItem ("start test now")
                Call SetCurSel
            Else           ' 写操作失败
                mErrCnt = mErrCnt + 1
                List1.AddItem ("S0-T0 CH375WriteData return error, length=1")
                Call SetCurSel
            End If
            Call Wait
            
            mBuffer.mBuff(0) = TEST_START
            mTotal = 1
        On Error Resume Next
            If (CH375WriteData(0, mBuffer, mTotal)) Then       ' 发送成功
            
            Else        ' 写操作失败
                mErrCnt = mErrCnt + 1
                List1.AddItem ("S0-T1 CH375WriteData return error, length=1")
            End If
            Call Wait
        
            '************************correctness test*********************************
            List1.AddItem ("*** Step-1: test data correctness: 2000 times, random length and data")
            Call SetCurSel
        On Error Resume Next
            For mTestCount = 0 To 1999    ' 循环测试
                mStep = mTestCount And &H3
                Select Case mStep
                    Case 0
                        For i = 0 To 63         ' 发送全00H/返回全FFH
                            mBuffer.mBuff(i) = &H0
                        Next i
                    Case 1
                        For i = 0 To 63
                            mBuffer.mBuff(i) = &HFF    ' 发送全FFH/返回全00H
                        Next i
                    Case Else
                        For i = 0 To 63
                            mBuffer.mBuff(i) = Int((255 * Rnd) + 1)  ' 发送随机数/返回位反码
                        Next i
                End Select
                mBuffer.mBuff(0) = TEST_DATA
                mTotal = Int((100 * Rnd) + 1) ' 随机数长度
                mTotal = mTotal Mod 100
                If (mTotal = 0 Or mTotal > 64) Then
                    mTotal = (mTotal And &H1)
                    If (mTotal >= 1) Then
                        mTotal = 64
                    Else
                        mTotal = 63
                    End If
                End If
                    
                Dim strtempcrr As String
                strtempcrr = "Cnt=" & mTestCount & ",Len=" & mTotal & ",Data: " & Hex(mBuffer.mBuff(0)) & "," & Hex(mBuffer.mBuff(1)) & "," & Hex(mBuffer.mBuff(2)) & "," & Hex(mBuffer.mBuff(3))
                List1.AddItem (strtempcrr)
            On Error Resume Next
                If (CH375WriteData(0, mBuffer, mTotal)) Then      ' 发送成功
                
                    mLength = 64
                    If (CH375ReadData(0, mReadBuf, mLength)) Then         ' 接收成功
                    
                        If (mLength <> mTotal Or mLength = 0) Then
                            mErrCnt = mErrCnt + 1
                            TxtErr.Text = mErrCnt
                            Dim strtemplerr As String
                            strtemplerr = "S1-T" & mStep & "-C" & mTestCount & " return length error:" & mLength & " (" & mTotal & ")"
                            List1.AddItem (strtemplerr)
                        Else
                            For i = 0 To mLength - 1
                                If (&HFF - mReadBuf.mBuff(i)) <> mBuffer.mBuff(i) Then
                                    mErrCnt = mErrCnt + 1
                                    TxtErr.Text = mErrCnt
                                    Dim strtempderr As String
                                    strtempderr = "S1-T" & mStep & "-C" & mTestCount & " return data error at " & i & ":" & mReadBuf.mBuff(i) & " (" & mBuffer.mBuff(i) & ")"
                                    List1.AddItem (strtempderr)
                                End If
                            Next i
                        End If
                    
                    Else   ' 读操作失败
                        mErrCnt = mErrCnt + 1
                        TxtErr.Text = mErrCnt
                        Dim strtemprerr As String
                        strtemprerr = "S1-T" & mStep & "-C" & mTestCount & " CH375ReadData return error, length=" & mTotal
                        List1.AddItem (strtemprerr)
                    End If
                
                Else   ' 写操作失败
                    mErrCnt = mErrCnt + 1
                    TxtErr.Text = mErrCnt
                    Dim strtempwerr As String
                    strtempwerr = "S1-T" & mStep & "-C" & mTestCount & " CH375WriteData return error, length=" & mTotal
                    List1.AddItem (strtempwerr)

⌨️ 快捷键说明

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