📄 9111prtg.frm
字号:
End
Begin VB.Label labValue
Alignment = 1 'Right Justify
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "-5.00"
ForeColor = &H0000FFFF&
Height = 255
Index = 4
Left = 120
TabIndex = 13
Top = 3045
Width = 600
End
Begin VB.Label labValue
Alignment = 1 'Right Justify
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "-2.50"
ForeColor = &H0000FFFF&
Height = 255
Index = 3
Left = 120
TabIndex = 12
Top = 2400
Width = 600
End
Begin VB.Label labValue
Alignment = 1 'Right Justify
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "0.00"
ForeColor = &H0000FFFF&
Height = 255
Index = 2
Left = 120
TabIndex = 11
Top = 1740
Width = 615
End
Begin VB.Label labValue
Alignment = 1 'Right Justify
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "2.50"
ForeColor = &H0000FFFF&
Height = 255
Index = 1
Left = 120
TabIndex = 10
Top = 1065
Width = 615
End
Begin VB.Label labValue
Alignment = 1 'Right Justify
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "5.00"
ForeColor = &H0000FFFF&
Height = 255
Index = 0
Left = 120
TabIndex = 9
Top = 420
Width = 615
End
Begin VB.Label labVots
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "Vots"
ForeColor = &H0000FFFF&
Height = 255
Left = 120
TabIndex = 8
Top = 200
Width = 495
End
Begin VB.Label labSignal
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
Caption = "Signals"
ForeColor = &H0000FFFF&
Height = 300
Left = 2800
TabIndex = 7
Top = 200
Width = 780
End
End
End
Attribute VB_Name = "PrTg9111"
Attribute VB_Creatable = False
Attribute VB_Exposed = False
Dim gnADChn As Long
Dim gnCount As Long
Dim gnC2 As Long
Dim gnBuffer(4096) As Integer
Dim card As Integer
Dim nRate As Long
Dim range As Integer
Dim card_number As Integer
Dim post_cnt As Long
Private Sub btnExit_Click()
If card >= 0 Then Release_Card (card)
End
End Sub
Private Sub btnStart_Click()
Dim result As Integer
Dim access_cnt As Long
Dim clear_op As Byte
Dim fstop As Byte
If card < 0 Then
card_num.Enabled = False
card = Register_Card(PCI_9111DG, card_number)
If card < 0 Then
MsgBox "Register Card Failed"
End
End If
End If
result = AI_9111_Config(card, TRIG_INT_PACER, 1, post_cnt)
result = AI_AsyncDblBufferMode(card, 0)
result = AI_ContReadChannel(card, gnADChn, range, gnBuffer(0), gnCount, CSng(nRate * 1000), ASYNCH_OP)
clear_op = 0
fstop = 0
While fstop = 0 And clear_op = 0
result = AI_AsyncCheck(card, fstop, access_cnt)
Wend
result = AI_AsyncClear(card, access_cnt)
btnStart.Enabled = True
access_cnt = access_cnt And &HFFFFFFF
If access_cnt = 0 Then
access_cnt = gnCount
End If
ShowData (access_cnt)
End Sub
Private Sub card_DragDrop(Source As Control, X As Single, Y As Single)
End Sub
Private Sub card_num_Click()
card_number = Val(Trim$(card_num))
End Sub
Private Sub cobData_Click()
gnCount = Val(Trim$(cobData))
End Sub
Private Sub cobSample_Click()
nRate = Val(Trim$(cobSample))
End Sub
Private Sub Command1_Click()
End Sub
Private Sub Form_Load()
Dim bus As Integer, slot As Integer
card_num.AddItem "0"
card_num.AddItem "1"
card_num.AddItem "2"
card_num.AddItem "3"
card_num.AddItem "4"
card_num.AddItem "5"
card_num.AddItem "6"
card_num.AddItem "7"
card_num.AddItem "8"
card_num.AddItem "9"
card_num.AddItem "10"
card_num.AddItem "11"
card_num.AddItem "12"
card_num.AddItem "13"
card_num.AddItem "14"
card_num.AddItem "15"
card_num.ListIndex = 0
cobData.AddItem "512"
cobData.AddItem "1024"
cobData.AddItem "2048"
cobData.AddItem "3072"
cobData.AddItem "4096"
cobData.ListIndex = 0
cobSample.AddItem "10"
cobSample.AddItem "20"
cobSample.AddItem "30"
cobSample.AddItem "40"
cobSample.AddItem "50"
cobSample.AddItem "70"
cobSample.AddItem "90"
cobSample.AddItem "100"
cobSample.ListIndex = 0
gnADChn = 0
card = -1
post_cnt = 1024
'Range values
range = AD_B_5_V
End Sub
Private Sub Form_Unload(Cancel As Integer)
If card >= 0 Then Release_Card (card)
End Sub
Private Sub optChn_Click(Index As Integer)
gnADChn = Index
End Sub
Private Sub ShowData(count As Long)
Dim i As Integer, last As Long
Dim x1 As Long, y1 As Long, x2 As Long, y2 As Long
Dim w As Long, h As Long, data As Long
picScreen.Cls
last = count
w = picScreen.ScaleWidth
h = picScreen.ScaleHeight
'gnBuffer contains 16-bit data, the 4 LSB is channel#
'VB's integer is signed integer, its range is -32768 to 32767
'We change the range to 0 to 65535
'If gnBuffer(0) >= 0 Then
data = gnBuffer(0)
'Else
'data = gnBuffer(0) + 65536
'End If
x1 = (last * w) / count
y1 = ((2047 - ((data And &HFFF0) / 16)) * h) / 4095
last = last - 1
While (last > 0)
'If gnBuffer(count - last) >= 0 Then
data = gnBuffer(count - last)
'Else
'data = gnBuffer(count - last) + 65536
'End If
x2 = (last * w) / count
y2 = ((2047 - ((data And &HFFF0) / 16)) * h) / 4095
last = last - 1
picScreen.Line (x1, y1)-(x2, y2), &HFFFF&
x1 = x2
y1 = y2
Wend
End Sub
Private Sub postCount_Change()
post_cnt = Val(Trim$(postCount))
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -