리크 테스트 gui
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

643 lines
19 KiB

VERSION 4.00
Begin VB.Form int9111
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "PCI-9111 AutoScan Interrupt Transfer"
ClientHeight = 5025
ClientLeft = 1650
ClientTop = 2490
ClientWidth = 7665
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "MS Sans Serif"
Size = 8.25
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ForeColor = &H0000FFFF&
Height = 5430
Left = 1590
LinkTopic = "Form1"
ScaleHeight = 5025
ScaleWidth = 7665
Top = 2145
Width = 7785
Begin VB.CommandButton btnExit
Appearance = 0 'Flat
BackColor = &H80000005&
Caption = "Exit"
Height = 375
Left = 6360
TabIndex = 5
Top = 4320
Width = 1005
End
Begin VB.CommandButton btnStop
Appearance = 0 'Flat
BackColor = &H80000005&
Caption = "Stop"
Height = 375
Left = 5280
TabIndex = 4
Top = 4320
Width = 1005
End
Begin VB.CommandButton btnStart
Appearance = 0 'Flat
BackColor = &H80000005&
Caption = "Start"
Height = 375
Left = 4080
TabIndex = 3
Top = 4320
Width = 1005
End
Begin VB.Frame frmData
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "Data Size"
ForeColor = &H00FF0000&
Height = 615
Left = 1920
TabIndex = 2
Top = 4200
Width = 1935
Begin VB.ComboBox cobData
Appearance = 0 'Flat
Height = 315
Left = 120
Style = 2 'Dropdown List
TabIndex = 18
Top = 240
Width = 975
End
Begin VB.Label labData
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "samples"
ForeColor = &H0000FFFF&
Height = 255
Left = 1155
TabIndex = 19
Top = 240
Width = 720
End
End
Begin VB.Frame frmSample
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "Sampling Rate"
ForeColor = &H00FF0000&
Height = 615
Left = 120
TabIndex = 1
Top = 4200
Width = 1700
Begin VB.ComboBox cobSample
Appearance = 0 'Flat
Height = 315
Left = 120
Style = 2 'Dropdown List
TabIndex = 17
Top = 240
Width = 975
End
Begin VB.Label Label1
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "KHz"
ForeColor = &H0000FFFF&
Height = 255
Left = 1150
TabIndex = 20
Top = 260
Width = 450
End
End
Begin VB.Frame intFrame
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "Interrupt Input(A/D)"
ForeColor = &H00FF0000&
Height = 3435
Left = 120
TabIndex = 0
Top = 420
Width = 7455
Begin VB.Frame Frame1
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "Channel"
ForeColor = &H00FF0000&
Height = 615
Left = 5880
TabIndex = 29
Top = 2100
Width = 1380
Begin VB.ComboBox cobChn
Appearance = 0 'Flat
Height = 315
Left = 100
Style = 2 'Dropdown List
TabIndex = 30
Top = 240
Width = 1200
End
End
Begin VB.Frame frmRange
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "Range"
ForeColor = &H00FF0000&
Height = 615
Left = 5880
TabIndex = 8
Top = 2700
Width = 1380
Begin VB.ComboBox cobRange
Appearance = 0 'Flat
Height = 315
Left = 100
Style = 2 'Dropdown List
TabIndex = 16
Top = 240
Width = 1200
End
End
Begin VB.Frame frmChannel
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
ForeColor = &H00FF0000&
Height = 1755
Left = 5880
TabIndex = 7
Top = 300
Width = 1380
Begin VB.Label Label2
Caption = "7"
Height = 195
Index = 7
Left = 780
TabIndex = 28
Top = 1320
Width = 135
End
Begin VB.Label Label2
Caption = "6"
Height = 195
Index = 6
Left = 780
TabIndex = 27
Top = 960
Width = 135
End
Begin VB.Label Label2
Caption = "5"
Height = 195
Index = 5
Left = 780
TabIndex = 26
Top = 600
Width = 135
End
Begin VB.Label Label2
Caption = "4"
Height = 195
Index = 4
Left = 780
TabIndex = 25
Top = 240
Width = 135
End
Begin VB.Label Label2
Caption = "3"
Height = 195
Index = 3
Left = 120
TabIndex = 24
Top = 1320
Width = 135
End
Begin VB.Label Label2
Caption = "2"
Height = 195
Index = 2
Left = 120
TabIndex = 23
Top = 960
Width = 135
End
Begin VB.Label Label2
Caption = "1"
Height = 195
Index = 1
Left = 120
TabIndex = 22
Top = 600
Width = 135
End
Begin VB.Label Label2
Caption = "0"
Height = 195
Index = 0
Left = 120
TabIndex = 21
Top = 240
Width = 135
End
Begin VB.Shape Shape1
BackColor = &H0000FFFF&
FillColor = &H0000FF00&
FillStyle = 0 'Solid
Height = 255
Index = 7
Left = 960
Top = 1320
Width = 195
End
Begin VB.Shape Shape1
BackColor = &H0000FFFF&
FillColor = &H00FFFF00&
FillStyle = 0 'Solid
Height = 255
Index = 6
Left = 960
Top = 960
Width = 195
End
Begin VB.Shape Shape1
BackColor = &H0000FFFF&
FillColor = &H00FF00FF&
FillStyle = 0 'Solid
Height = 255
Index = 5
Left = 960
Top = 600
Width = 195
End
Begin VB.Shape Shape1
BackColor = &H0000FFFF&
FillColor = &H000080FF&
FillStyle = 0 'Solid
Height = 255
Index = 4
Left = 960
Top = 240
Width = 195
End
Begin VB.Shape Shape1
BackColor = &H0000FFFF&
FillColor = &H00008000&
FillStyle = 0 'Solid
Height = 255
Index = 3
Left = 300
Top = 1320
Width = 195
End
Begin VB.Shape Shape1
BackColor = &H0000FFFF&
FillColor = &H00FF0000&
FillStyle = 0 'Solid
Height = 255
Index = 2
Left = 300
Top = 960
Width = 195
End
Begin VB.Shape Shape1
BackColor = &H0000FFFF&
FillColor = &H000000FF&
FillStyle = 0 'Solid
Height = 255
Index = 1
Left = 300
Top = 600
Width = 195
End
Begin VB.Shape Shape1
BackColor = &H0000FFFF&
FillColor = &H0000FFFF&
FillStyle = 0 'Solid
Height = 255
Index = 0
Left = 300
Top = 240
Width = 195
End
End
Begin VB.PictureBox picScreen
Appearance = 0 'Flat
AutoRedraw = -1 'True
BackColor = &H00000000&
ForeColor = &H80000008&
Height = 2700
Left = 720
ScaleHeight = 178
ScaleMode = 3 'Pixel
ScaleWidth = 331
TabIndex = 6
Top = 480
Width = 5000
End
Begin VB.Label labValue
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "-5.00"
ForeColor = &H0000FFFF&
Height = 255
Index = 4
Left = 100
TabIndex = 15
Top = 3050
Width = 600
End
Begin VB.Label labValue
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "-2.50"
ForeColor = &H0000FFFF&
Height = 255
Index = 3
Left = 100
TabIndex = 14
Top = 2400
Width = 600
End
Begin VB.Label labValue
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "0.00"
ForeColor = &H0000FFFF&
Height = 255
Index = 2
Left = 100
TabIndex = 13
Top = 1740
Width = 600
End
Begin VB.Label labValue
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "2.50"
ForeColor = &H0000FFFF&
Height = 255
Index = 1
Left = 100
TabIndex = 12
Top = 1070
Width = 600
End
Begin VB.Label labValue
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "5.00"
ForeColor = &H0000FFFF&
Height = 255
Index = 0
Left = 100
TabIndex = 11
Top = 420
Width = 600
End
Begin VB.Label labVots
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "Volt"
ForeColor = &H0000FFFF&
Height = 255
Left = 120
TabIndex = 10
Top = 200
Width = 495
End
Begin VB.Label labSignal
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "Signals"
ForeColor = &H0000FFFF&
Height = 300
Left = 2800
TabIndex = 9
Top = 200
Width = 780
End
End
Begin VB.Label Label3
Caption = "PCI-9111 Auto-scan Interrupt Transfer"
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "MS Sans Serif"
Size = 8.25
Charset = 0
Weight = 700
Underline = -1 'True
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ForeColor = &H000000FF&
Height = 255
Left = 1920
TabIndex = 31
Top = 120
Width = 3555
End
End
Attribute VB_Name = "int9111"
Attribute VB_Creatable = False
Attribute VB_Exposed = False
Dim nSample As Long
Dim range_value(5) As Integer
Dim gnADChn As Integer
Dim Range As Integer
Dim gnCount As Long
Dim gnC1 As Integer
Dim gnC2 As Integer
Dim gnBuffer(8192) As Integer
Private Sub btnExit_Click()
If card >= 0 Then Release_Card (card)
End
End Sub
Private Sub btnStart_Click()
Dim result As Integer
Dim i As Integer
picScreen.Cls
result = AI_9111_Config(card, TRIG_INT_PACER, 0, 1024)
Range = range_value(cobRange.ListIndex)
result = AI_ContScanChannels(card, gnADChn, Range, gnBuffer(0), gnCount, CSng(nSample * 1000), SYNCH_OP)
ShowData (gnCount)
End Sub
Private Sub btnStop_Click()
picScreen.Cls
End Sub
Private Sub cobChn_Click()
gnADChn = cobChn.ListIndex
End Sub
Private Sub cobData_Click()
gnCount = Val(Trim$(cobData))
End Sub
Private Sub cobRange_Click()
Select Case cobRange.ListIndex
Case 0
labValue(0).Caption = "10.0"
labValue(1).Caption = "5.0"
labValue(2).Caption = "0.0"
labValue(3).Caption = "-5.0"
labValue(4).Caption = "-10.0"
Case 1
labValue(0).Caption = "5.0"
labValue(1).Caption = "2.5"
labValue(2).Caption = "0.0"
labValue(3).Caption = "-2.5"
labValue(4).Caption = "-5.0"
Case 2
labValue(0).Caption = "2.50"
labValue(1).Caption = "2.25"
labValue(2).Caption = "0.00"
labValue(3).Caption = "-2.25"
labValue(4).Caption = "-2.50"
Case 3
labValue(0).Caption = "1.250"
labValue(1).Caption = "0.625"
labValue(2).Caption = "0.00"
labValue(3).Caption = "-0.625"
labValue(4).Caption = "-1.250"
Case 4
labValue(0).Caption = "0.6250"
labValue(1).Caption = "0.3125"
labValue(2).Caption = "0.0000"
labValue(3).Caption = "-0.3125"
labValue(4).Caption = "-0.6250"
End Select
End Sub
Private Sub cobSample_Click()
nSample = Val(Trim$(cobSample))
End Sub
Private Sub Form_Load()
Dim result As Integer
SettingForm.Show 1
If card < 0 Then
MsgBox "Register card failed."
End
End If
gnC1 = 10
cobChn.AddItem "Ch0"
cobChn.AddItem "Ch0~Ch1"
cobChn.AddItem "Ch0~Ch2"
cobChn.AddItem "Ch0~Ch3"
cobChn.AddItem "Ch0~Ch4"
cobChn.AddItem "Ch0~Ch5"
cobChn.AddItem "Ch0~Ch6"
cobChn.AddItem "Ch0~Ch7"
cobChn.ListIndex = 0
gnADChn = 0
cobRange.AddItem "+/- 10V"
cobRange.AddItem "+/- 5V"
cobRange.AddItem "+/- 2.5V"
cobRange.AddItem "+/- 1.25V"
cobRange.AddItem "+/- 0.625V"
cobRange.ListIndex = 0
range_value(0) = 1
range_value(1) = 2
range_value(2) = 3
range_value(3) = 4
range_value(4) = 5
cobData.AddItem "1024"
cobData.AddItem "2048"
cobData.AddItem "4096"
cobData.AddItem "6144"
cobData.AddItem "8192"
cobData.ListIndex = 0
cobSample.AddItem "10"
cobSample.AddItem "20"
cobSample.AddItem "30"
cobSample.AddItem "40"
cobSample.AddItem "50"
cobSample.ListIndex = 0
End Sub
Private Sub ShowData(Count As Integer)
Dim i, last, total As Integer
Dim x1(0 To 7) As Long, y1(0 To 7) As Long
Dim x2(0 To 7) As Long, y2(0 To 7) As Long
Dim idx(0 To 7) As Integer, color(0 To 7) As Long
Dim w, h, data As Long
Dim ch As Integer
last = Count / (gnADChn + 1)
w = picScreen.ScaleWidth
h = picScreen.ScaleHeight
For i = 0 To 7
idx(i) = 0
Next
color(0) = &HFFFF&
color(1) = &HFF&
color(2) = &HFF0000
color(3) = &H8000&
color(4) = &H80FF&
color(5) = &HFF00FF
color(6) = &HFFFF00
color(7) = &HFF00&
For i = 0 To Count - 1
'Get the channel number
If card_type = PCI_9111HR Then
ch = i Mod (gnADChn + 1)
Else
If gnBuffer(i) >= 0 Then
ch = gnBuffer(i) Mod 16
Else
ch = ((gnBuffer(i) Mod 16) + 16) Mod 16
End If
End If
data = Fix(gnBuffer(i) / 16)
If ch > 7 Then
Exit For
End If
x2(ch) = (idx(ch) * w) / last
y2(ch) = CInt((2047 - CLng(data)) * h / 4095)
If idx(ch) <> 0 Then
picScreen.Line (x1(ch), y1(ch))-(x2(ch), y2(ch)), color(ch)
End If
x1(ch) = x2(ch)
y1(ch) = y2(ch)
idx(ch) = idx(ch) + 1
Next
End Sub
Private Sub Form_Unload(Cancel As Integer)
If card >= 0 Then Release_Card (card)
End Sub