📄 module1.bas
字号:
Public Enum COUPLE 'CP_VAL 藕和方式
ac = 0
dc = 1
gnd = 2
End Enum
Public Enum zoomfactor '缩放因子
zoom1_50 = 0
zoom1_20
zoom1_10
zoom1_5
zoom1_2
zoom1_1
zoom2_1
zoom4_1
zoom10_1
zoom20_1
zoom40_1
zoom100_1
zoom200_1
zoom400_1
End Enum
Public Enum ATTENUATE 'p_attn
attn_1 = 0 '探头比 1:1
attn_10 = 1 '探头比 10:1
attn_100 = 2 '探头比 100:1
attn_1000 = 3 '探头比 100:1
End Enum
Public Enum CLOCKSOURCE 'ClkSource '时钟源
clk_int = 0
clk_ext = 1
clk_soft = 2
CLK_EXT_RISING = 3
CLK_EXT_FALLING = 4
End Enum
Public Enum capturemode '采集方式
cap_once = 0 '单次
cap_repeat = 1 '正常
cap_auto = 2 '自动
End Enum
Public Enum VOLTAGE ' s_val (10) 探头比1:1 每格电压 10mv,20mv,50mv,100mv,200mv,500mv 探头比10:1 每格电压100mv,200mv,500mv,1V,2V,5V,10V
mv10 = 0
mv20 = 1
mv50 = 2
mv100 = 3
mv200 = 4
mv500 = 5
mv1000 = 6
mv2000 = 7
mv5000 = 8
mv10000 = 9
mv20000 = 10
mv50000 = 11
mv100000 = 12
mv200000 = 13
mv500000 = 14
mv1000000 = 15
mv2000000 = 16
mv10000000 = 17
End Enum
Public Enum MEMORYSIZE ' MEMORY SIZE 1K,8K,128K,256K MemMode
MemSmall = 6
MemMedium = 7
MemLarge = 8
MemHuge = 9
End Enum
Public Enum number
numanalog2902_128 = 2
numdigital2902_128 = 8
numanalog2902_256 = 2
numdigital2902_256 = 8
numanalog2904_256 = 4
numdigital2904_256 = 16
numanalog2906_256 = 6
numdigital2906_256 = 24
numanalog2908_256 = 16
numdigital2908_256 = 32
numanalog2500 = 2
numdigital2500 = 16
End Enum
Public Enum displayon
dison = 0
disoff = 1
End Enum
Sub Refresh1()
red = RGB(255, 0, 0)
blue = RGB(0, 0, 255)
green = RGB(0, 255, 0)
dotcolor = RGB(255, 0, 0)
white = RGB(255, 255, 255)
grey = RGB(128, 128, 128)
If persistance = 0 Then Form1.Picture1.Cls '如果非持续跟踪,每显示一次,清屏一次
Call draw_scale '画网络
Form1.Picture1.DrawStyle = 0
Select Case timingtype
Case dot
dotcolor = RGB(0, 255, 0)
Call dotdraw(dotcolor)
Case Line
' For cx = 0 To 650 Step 1
' tt = SetPixel(ByVal Form1.Picture1.hdc, ByVal cx, ByVal disanalog0(cx + analogch0), ByVal Form1.Text17.ForeColor)
Call SetPixeltest(ByVal Form1.Picture1.hdc, ByVal analogch0, disanalog0(0), ByVal Form1.Text17.ForeColor)
' Next cx
Call SetPixeltest(ByVal Form1.Picture1.hdc, ByVal analogch1, disanalog0(0), ByVal Form1.Text18.ForeColor)
Form1.Picture1.ForeColor = Form1.Text17.ForeColor
Call linedraw(ByVal Form1.Picture1.hdc, ByVal analogch0, disanalog0(0))
Form1.Picture1.ForeColor = Form1.Text18.ForeColor
Call linedraw(ByVal Form1.Picture1.hdc, ByVal analogch1, disanalog0(0))
If board_model = dso2904_256 Then
Call SetPixeltest(ByVal Form1.Picture1.hdc, ByVal analogch2, disanalog0(0), ByVal Form1.Text19.ForeColor)
Call SetPixeltest(ByVal Form1.Picture1.hdc, ByVal analogch3, disanalog0(0), ByVal Form1.Text20.ForeColor)
Form1.Picture1.ForeColor = Form1.Text19.ForeColor
Call linedraw(ByVal Form1.Picture1.hdc, ByVal analogch2, disanalog0(0))
Form1.Picture1.ForeColor = Form1.Text20.ForeColor
Call linedraw(ByVal Form1.Picture1.hdc, ByVal analogch3, disanalog0(0))
End If
Case linedot
dotcolor = RGB(0, 255, 0)
Call dotdraw(dotcolor)
Form1.Picture1.ForeColor = Form1.Text17.ForeColor
Call linedraw(ByVal Form1.Picture1.hdc, ByVal analogch0, disanalog0(0))
Form1.Picture1.ForeColor = Form1.Text18.ForeColor
Call linedraw(ByVal Form1.Picture1.hdc, ByVal analogch1, disanalog0(0))
If board_model = dso2904_256 Then
Form1.Picture1.ForeColor = Form1.Text19.ForeColor
Call linedraw(ByVal Form1.Picture1.hdc, ByVal analogch2, disanalog0(0))
Form1.Picture1.ForeColor = Form1.Text20.ForeColor
Call linedraw(ByVal Form1.Picture1.hdc, ByVal analogch3, disanalog0(0))
End If
End Select
If Form1.VScroll1.Value <= 0 Then
yposition = 270
Form1.Picture1.ForeColor = Form1.Text1.ForeColor
Call linedrawlogic(ByVal yposition, ByVal Form1.Picture1.hdc, ByVal logicch0, disanalog0(0))
End If
If Form1.VScroll1.Value <= 1 Then
yposition = 270 + 16 * (1 - Form1.VScroll1.Value)
Form1.Picture1.ForeColor = Form1.Text2.ForeColor
Call linedrawlogic(ByVal yposition, ByVal Form1.Picture1.hdc, ByVal logicch1, disanalog0(0))
' Call linedrawlogic(yposition, logicch1, Form1.Text2.ForeColor)
End If
If Form1.VScroll1.Value <= 2 Then
yposition = 270 + 16 * (2 - Form1.VScroll1.Value)
Form1.Picture1.ForeColor = Form1.Text3.ForeColor
Call linedrawlogic(ByVal yposition, ByVal Form1.Picture1.hdc, ByVal logicch2, disanalog0(0))
End If
If Form1.VScroll1.Value <= 3 Then
yposition = 270 + 16 * (3 - Form1.VScroll1.Value)
Form1.Picture1.ForeColor = Form1.Text4.ForeColor
Call linedrawlogic(ByVal yposition, ByVal Form1.Picture1.hdc, ByVal logicch3, disanalog0(0))
End If
If Form1.VScroll1.Value <= 4 Then
yposition = 270 + 16 * (4 - Form1.VScroll1.Value)
Form1.Picture1.ForeColor = Form1.Text5.ForeColor
Call linedrawlogic(ByVal yposition, ByVal Form1.Picture1.hdc, ByVal logicch4, disanalog0(0))
End If
If Form1.VScroll1.Value <= 5 Then
yposition = 270 + 16 * (5 - Form1.VScroll1.Value)
Form1.Picture1.ForeColor = Form1.Text6.ForeColor
Call linedrawlogic(ByVal yposition, ByVal Form1.Picture1.hdc, ByVal logicch5, disanalog0(0))
End If
If Form1.VScroll1.Value <= 6 Then
yposition = 270 + 16 * (6 - Form1.VScroll1.Value)
Form1.Picture1.ForeColor = Form1.Text7.ForeColor
Call linedrawlogic(ByVal yposition, ByVal Form1.Picture1.hdc, ByVal logicch6, disanalog0(0))
End If
If Form1.VScroll1.Value <= 7 Then
yposition = 270 + 16 * (7 - Form1.VScroll1.Value)
Form1.Picture1.ForeColor = Form1.Text8.ForeColor
Call linedrawlogic(ByVal yposition, ByVal Form1.Picture1.hdc, ByVal logicch7, disanalog0(0))
End If
If board_model = dso2904_256 Then
If Form1.VScroll1.Value <= 8 Then
yposition = 270 + 16 * (8 - Form1.VScroll1.Value)
Form1.Picture1.ForeColor = Form1.Text9.ForeColor
Call linedrawlogic(ByVal yposition, ByVal Form1.Picture1.hdc, ByVal logicch8, disanalog0(0))
End If
If Form1.VScroll1.Value <= 9 Then
yposition = 270 + 16 * (9 - Form1.VScroll1.Value)
Form1.Picture1.ForeColor = Form1.Text10.ForeColor
Call linedrawlogic(ByVal yposition, ByVal Form1.Picture1.hdc, ByVal logicch9, disanalog0(0))
End If
If Form1.VScroll1.Value <= 10 Then
yposition = 270 + 16 * (10 - Form1.VScroll1.Value)
Form1.Picture1.ForeColor = Form1.Text11.ForeColor
Call linedrawlogic(ByVal yposition, ByVal Form1.Picture1.hdc, ByVal logicch10, disanalog0(0))
End If
If Form1.VScroll1.Value <= 11 Then
yposition = 270 + 16 * (11 - Form1.VScroll1.Value)
Form1.Picture1.ForeColor = Form1.Text12.ForeColor
Call linedrawlogic(ByVal yposition, ByVal Form1.Picture1.hdc, ByVal logicch11, disanalog0(0))
End If
If Form1.VScroll1.Value <= 12 Then
yposition = 270 + 16 * (12 - Form1.VScroll1.Value)
Form1.Picture1.ForeColor = Form1.Text13.ForeColor
Call linedrawlogic(ByVal yposition, ByVal Form1.Picture1.hdc, ByVal logicch12, disanalog0(0))
End If
If Form1.VScroll1.Value <= 13 Then
yposition = 270 + 16 * (13 - Form1.VScroll1.Value)
Form1.Picture1.ForeColor = Form1.Text14.ForeColor
Call linedrawlogic(ByVal yposition, ByVal Form1.Picture1.hdc, ByVal logicch13, disanalog0(0))
End If
If Form1.VScroll1.Value <= 14 Then
yposition = 270 + 16 * (14 - Form1.VScroll1.Value)
Form1.Picture1.ForeColor = Form1.Text15.ForeColor
Call linedrawlogic(ByVal yposition, ByVal Form1.Picture1.hdc, ByVal logicch14, disanalog0(0))
End If
If Form1.VScroll1.Value <= 15 Then
yposition = 270 + 16 * (15 - Form1.VScroll1.Value)
Form1.Picture1.ForeColor = Form1.Text16.ForeColor
Call linedrawlogic(ByVal yposition, ByVal Form1.Picture1.hdc, ByVal logicch15, disanalog0(0))
End If
End If
End Sub
Sub draw_scale()
Form1.Picture1.DrawStyle = 2
grey = RGB(128, 128, 128)
cx = 50
cy = 25
For i = 0 To 10
Form1.Picture1.Line (0, (i * cy) + 3)-(13 * cx, (i * cy) + 3), grey
Next i
For i = 0 To 13
Form1.Picture1.Line (i * cx, 3)-(i * cx, (10 * cy) + 3), grey
Next i
End Sub
Sub DIV_ATTEU()
constant1 = 400
div(selectchannel) = Form2.HScroll7.Value
Select Case Form2.HScroll1.Value
Case board1
temp0 = div(0)
temp1 = div(1)
temp2 = p_attn(0)
temp3 = p_attn(1)
Call divDISPLAY
s_val(0) = temp4
s_val(1) = temp5
Case board2
temp0 = div(2)
temp1 = div(3)
temp2 = p_attn(2)
temp3 = p_attn(3)
Call divDISPLAY
s_val(2) = temp4
s_val(3) = temp5
End Select
Call setoffset
Call setlevel
End Sub
Sub setoffset()
VOffDex(selectchannel) = Form2.HScroll8.Value
Select Case Form2.HScroll1.Value
Case board1
Call chpixelvoltage(0)
Call setvoltage(VOffDex(0), Form2.Label9)
Call chpixelvoltage(1)
Call setvoltage(VOffDex(1), Form2.Label17)
Case board2
Call chpixelvoltage(2)
Call setvoltage(VOffDex(2), Form2.Label9)
Call chpixelvoltage(3)
Call setvoltage(VOffDex(3), Form2.Label17)
End Select
Call setlevel
End Sub
Sub setcoupling()
cp_val(selectchannel) = Form2.HScroll5.Value
Select Case Form2.HScroll1.Value
Case board1
Call couplesetting(cp_val(0), Form2.Label10)
Call couplesetting(cp_val(1), Form2.Label18)
Case board2
Call couplesetting(cp_val(2), Form2.Label10)
Call couplesetting(cp_val(3), Form2.Label18)
End Select
End Sub
Sub SETDISPLAY()
Trans(selectchannel) = Form2.HScroll6.Value
Select Case Form2.HScroll1.Value
Case board1
If Trans(0) = 0 Then
Form2.Label7.Caption = "Off"
Else
Form2.Label7.Caption = "On"
End If
If Trans(1) = 0 Then
Form2.Label3.Caption = "Off"
Else
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -