?? da_form.frm
字號:
VERSION 5.00
Begin VB.Form DA_Form
Caption = "DA 4路模擬輸出"
ClientHeight = 8745
ClientLeft = 1380
ClientTop = 1275
ClientWidth = 12120
Icon = "DA_Form.frx":0000
LinkTopic = "Form1"
MDIChild = -1 'True
ScaleHeight = 8745
ScaleWidth = 12120
WindowState = 2 'Maximized
Begin VB.Frame Frame1
Caption = "自動連續輸出(正弦波)"
BeginProperty Font
Name = "宋體"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 4575
Left = 720
TabIndex = 0
Top = 840
Width = 9255
Begin VB.ComboBox Combo2
BeginProperty Font
Name = "宋體"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 360
ItemData = "DA_Form.frx":0CCA
Left = 4440
List = "DA_Form.frx":0CDA
TabIndex = 9
Text = "0"
Top = 720
Width = 1575
End
Begin VB.CommandButton AutoChannel0Start_Cmd
Caption = "開始"
Height = 375
Left = 7080
TabIndex = 6
Top = 3600
Width = 810
End
Begin VB.CommandButton AutoChannel0Stop_Cmd
Caption = "停止"
Height = 375
Left = 8160
TabIndex = 5
Top = 3600
Width = 810
End
Begin VB.PictureBox Picture0
BackColor = &H80000009&
Height = 2295
Left = 240
ScaleHeight = 149
ScaleMode = 3 'Pixel
ScaleWidth = 429
TabIndex = 4
Top = 1920
Width = 6495
End
Begin VB.CheckBox Check1
Caption = "以恒定值輸出"
Height = 375
Left = 360
TabIndex = 3
Top = 600
Width = 2655
End
Begin VB.TextBox Text1
BeginProperty Font
Name = "宋體"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 375
Left = 5280
TabIndex = 2
Text = "2048"
Top = 1320
Width = 735
End
Begin VB.ComboBox Combo1
BeginProperty Font
Name = "宋體"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 360
ItemData = "DA_Form.frx":0CEA
Left = 1800
List = "DA_Form.frx":0CFD
TabIndex = 1
Text = "128"
Top = 1320
Width = 1335
End
Begin VB.Label Label4
Caption = "Label4"
Height = 15
Left = 5520
TabIndex = 11
Top = 1440
Width = 135
End
Begin VB.Label Label3
Caption = "通道選擇:"
BeginProperty Font
Name = "宋體"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 375
Left = 3120
TabIndex = 10
Top = 760
Width = 1215
End
Begin VB.Label Label1
Caption = "正弦波周期(點)"
Height = 375
Left = 360
TabIndex = 8
Top = 1440
Width = 1455
End
Begin VB.Label Label2
Caption = "請輸入電壓:"
BeginProperty Font
Name = "宋體"
Size = 10.5
Charset = 134
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Left = 4080
TabIndex = 7
Top = 1440
Width = 1455
End
End
Begin VB.Menu file
Caption = "文件操作"
Begin VB.Menu Open_SC
Caption = "打開數采系統"
End
Begin VB.Menu Check_IO
Caption = "開關量IO檢測"
End
Begin VB.Menu closesystem
Caption = "關閉本系統"
End
Begin VB.Menu exit
Caption = "退出應用程序"
End
End
Begin VB.Menu WindowsListDA
Caption = "窗口列表"
WindowList = -1 'True
End
End
Attribute VB_Name = "DA_Form"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Dim hCollect As Long
Private WriteDAThread As ThreadObject
Public Cycle0 As Long
Public Cycle1 As Long
Dim SineDataBuffer(4096) As Long
Dim Middata As Long
Dim xlength As Long
Dim i As Integer
Private Sub DAOutput_Click()
DA_Form.Show
End Sub
Private Sub Check_IO_Click()
DIO_Form.SetFocus
End Sub
Private Sub Check1_Click()
If Check1.Value = 0 Then
DA_Form.Combo1.Enabled = True
Combo1.BackColor = &H80000005
Text1.Enabled = False
Text1.BackColor = &H80000008
Else
DA_Form.Combo1.Enabled = False
Combo1.BackColor = &H80000008
Text1.Enabled = True
Text1.BackColor = &H80000005
End If
Call DAWave
End Sub
Private Sub Combo1_Click()
Call DAWave
End Sub
Private Sub Text1_Change()
Call DAWave
End Sub
Private Sub Form_Load()
DA_Form.Combo1.Text = 128 ' 默認周期為128點
Combo1.BackColor = &H80000005
DA_Module.bDeviceRun0 = False
Text1.Enabled = False
Text1.BackColor = &H80000008
Check1.Enabled = True
Check1.Value = 0
Combo2.Enabled = True
AutoChannel0Stop_Cmd.Enabled = False
Text1.Text = 2047
Call DAWave
End Sub
Private Sub AutoChannel0Start_Cmd_Click()
Dim bStatus As Boolean
DA_Module.bDeviceRun0 = True ' 置設備準運行標志
Call DAWave
Set WriteDAThread = New ThreadObject
WriteDAThread.Initialize AddressOf WriteDAFunction0
WriteDAThread.Enable = True
AutoChannel0Start_Cmd.Enabled = Not AutoChannel0Start_Cmd.Enabled
AutoChannel0Stop_Cmd.Enabled = True
DA_Form.Combo1.Enabled = False
Text1.Enabled = False
Combo2.Enabled = False
End Sub
Private Sub AutoChannel0Stop_Cmd_Click()
Dim bStatus As Boolean
DA_Module.bDeviceRun0 = False '置設備停止標志
WriteDAThread.Enable = False
AutoChannel0Stop_Cmd.Enabled = Not AutoChannel0Stop_Cmd.Enabled
AutoChannel0Start_Cmd.Enabled = True
Combo2.Enabled = True
If Check1.Value = 0 Then
DA_Form.Combo1.Enabled = True
Else
Text1.Enabled = True
End If
End Sub
Private Sub Form_Unload(Cancel As Integer)
Me.Visible = False
End Sub
Private Sub Open_SC_Click()
AD_Form.Show
End Sub
Private Sub closesystem_Click()
Unload Me
End Sub
Private Sub exit_Click()
End
End Sub
Public Sub DAWave()
Dim str As String, str1 As String
str = DA_Form.Combo1.Text
Cycle0 = CLng(str)
str1 = DA_Form.Text1.Text
Cycle1 = CLng(str1)
Picture0.Cls
Picture0.ScaleMode = 3
If Check1.Value = 0 Then
For i = 0 To 4095
Middata = Int(Sin(6.28 * i / Cycle0) * 2048 + 2047)
SineDataBuffer(i) = Middata / 4096 * (Picture0.ScaleHeight - 1)
Next i
Else
For i = 0 To 4095
Middata = Cycle1
SineDataBuffer(i) = Middata * (Picture0.ScaleHeight - 1) / 4096
Next i
End If
If Picture0.Width > 2048 Then
xlength = 2048
Else
xlength = Picture0.Width
End If
For i = 1 To xlength - 1
Picture0.Line (i - 1, Picture0.ScaleHeight - SineDataBuffer(i - 1))-(i, Picture0.ScaleHeight - SineDataBuffer(i))
Next i
End Sub
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -