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

📄 振荡电路.frm

📁 电工小软件合集
💻 FRM
字号:
VERSION 5.00
Object = "{EAB22AC0-30C1-11CF-A7EB-0000C05BAE0B}#1.1#0"; "SHDOCVW.DLL"
Begin VB.Form Form1 
   BorderStyle     =   1  'Fixed Single
   Caption         =   "振荡电路计算器"
   ClientHeight    =   6060
   ClientLeft      =   150
   ClientTop       =   720
   ClientWidth     =   8445
   Icon            =   "振荡电路.frx":0000
   LinkTopic       =   "Form1"
   MaxButton       =   0   'False
   ScaleHeight     =   6060
   ScaleWidth      =   8445
   StartUpPosition =   3  '窗口缺省
   Begin SHDocVwCtl.WebBrowser WebBrowser1 
      Height          =   5655
      Left            =   3480
      TabIndex        =   16
      Top             =   360
      Width           =   4935
      ExtentX         =   8705
      ExtentY         =   9975
      ViewMode        =   0
      Offline         =   0
      Silent          =   0
      RegisterAsBrowser=   0
      RegisterAsDropTarget=   1
      AutoArrange     =   0   'False
      NoClientEdge    =   0   'False
      AlignLeft       =   0   'False
      ViewID          =   "{0057D0E0-3573-11CF-AE69-08002B2E1262}"
      Location        =   ""
   End
   Begin VB.CommandButton Command1 
      Caption         =   "计算"
      Default         =   -1  'True
      Height          =   375
      Left            =   2400
      TabIndex        =   9
      Top             =   1920
      Width           =   855
   End
   Begin VB.TextBox Text5 
      Height          =   375
      Left            =   1080
      MaxLength       =   10
      TabIndex        =   5
      Top             =   1920
      Width           =   1095
   End
   Begin VB.TextBox Text4 
      Height          =   375
      Left            =   1080
      MaxLength       =   10
      TabIndex        =   4
      Top             =   1440
      Width           =   1095
   End
   Begin VB.TextBox Text3 
      Height          =   375
      Left            =   1080
      MaxLength       =   10
      TabIndex        =   3
      Top             =   960
      Width           =   1095
   End
   Begin VB.TextBox Text2 
      Height          =   375
      Left            =   1080
      MaxLength       =   10
      TabIndex        =   2
      Top             =   480
      Width           =   1095
   End
   Begin VB.Label Label1 
      Height          =   255
      Left            =   120
      TabIndex        =   1
      Top             =   600
      Width           =   735
   End
   Begin VB.Image Image1 
      Height          =   900
      Left            =   360
      Picture         =   "振荡电路.frx":030A
      Top             =   4560
      Width           =   3000
   End
   Begin VB.Label Label8 
      Caption         =   "f="
      Height          =   375
      Left            =   120
      TabIndex        =   15
      Top             =   3960
      Width           =   2655
   End
   Begin VB.Label Label13 
      ForeColor       =   &H00FF0000&
      Height          =   375
      Left            =   4560
      TabIndex        =   14
      Top             =   240
      Width           =   1215
   End
   Begin VB.Label Label12 
      Caption         =   "河南汝州 徐世锋 制作"
      ForeColor       =   &H00FF0000&
      Height          =   255
      Left            =   840
      TabIndex        =   13
      Top             =   5640
      Width           =   2415
   End
   Begin VB.Label Label7 
      Caption         =   "T="
      Height          =   255
      Left            =   120
      TabIndex        =   12
      Top             =   3480
      Width           =   2655
   End
   Begin VB.Label Label6 
      Height          =   255
      Left            =   120
      TabIndex        =   11
      Top             =   3000
      Width           =   2655
   End
   Begin VB.Label Label2 
      Height          =   255
      Left            =   120
      TabIndex        =   10
      Top             =   1080
      Width           =   735
   End
   Begin VB.Label Label5 
      Height          =   255
      Left            =   120
      TabIndex        =   8
      Top             =   2520
      Width           =   2655
   End
   Begin VB.Label Label4 
      Height          =   255
      Left            =   120
      TabIndex        =   7
      Top             =   2040
      Width           =   735
   End
   Begin VB.Label Label3 
      Height          =   255
      Left            =   120
      TabIndex        =   6
      Top             =   1560
      Width           =   735
   End
   Begin VB.Label Lable1 
      Caption         =   "电路简介"
      Height          =   255
      Left            =   3600
      TabIndex        =   0
      Top             =   120
      Width           =   975
   End
   Begin VB.Menu mnuSel 
      Caption         =   "选择电路"
      Begin VB.Menu mnuRc1 
         Caption         =   "RC正弦波振荡电路(文氏电桥)"
      End
      Begin VB.Menu mnuRc2 
         Caption         =   "RC多谐振荡电路(分立元件)"
      End
      Begin VB.Menu mnuRc3 
         Caption         =   "RC多谐振荡电路(非门)"
      End
      Begin VB.Menu mnuRc4 
         Caption         =   "RC多谐振荡电路(NE555)"
      End
      Begin VB.Menu mnuLc1 
         Caption         =   "LC振荡电路(变压器反馈)"
      End
      Begin VB.Menu mnuLc2 
         Caption         =   "LC振荡电路(电感三点式)一"
      End
      Begin VB.Menu mnuLc3 
         Caption         =   "LC振荡电路(电感三点式)二"
      End
      Begin VB.Menu mnuLc4 
         Caption         =   "LC振荡电路(电容三点式)"
      End
      Begin VB.Menu mnuQuartz1 
         Caption         =   "石英晶体振荡电路一"
      End
      Begin VB.Menu mnuQuartz2 
         Caption         =   "石英晶体振荡电路二"
      End
   End
   Begin VB.Menu mnuHelp 
      Caption         =   "帮助"
      Begin VB.Menu mnuHelp1 
         Caption         =   "帮助内容"
      End
   End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Public adress As String
Public j As Integer

Private Sub Command1_Click()
'提取文本框内的数据,并进行计算
Dim st(4) As String
Dim n As Integer, p As Integer, q As Integer
Dim R1 As Double, R2 As Double, C1 As Double, C2 As Double

st(1) = Text2.Text
st(2) = Text3.Text
st(3) = Text4.Text
st(4) = Text5.Text
  R1 = Val(Text2.Text)
  R2 = Val(Text3.Text)
  C1 = Val(Text4.Text)
  C2 = Val(Text5.Text)
Select Case j
Case 1
  If R1 * R2 <> 0 And test(st(1)) = True And test(st(2)) = True Then
    Label5 = ""
    Label6 = ""
    t = ta(R1, R2)
    Label7 = "T=" & t & "ms"
    f = 1 / t
    Label8 = "f=" & f & "kHz"
    Else
    MsgBox ("输入的数据有错误!")
  End If
Case 2
  If R1 * R1 * C1 * C2 <> 0 And test(st(1)) = True And test(st(2)) = True And test(st(3)) = True And test(st(4)) = True Then
    t1 = tb1(R1, C1)
    t2 = tb2(R2, C2)
    t = t1 + t2
    f = 1 / t
    Label5 = "T1=" & t1 & "ms"
    Label6 = "T2=" & t2 & "ms"
    Label7 = "T=" & t & "ms"
    Label8 = "f=" & f & "kHz"
    Else
    MsgBox ("输入的数据有错误!")
  End If
Case 3
  If R1 * R2 <> 0 And test(st(1)) = True And test(st(2)) = True Then
    t = tc(R1, R2)
    f = 1 / t
    Label5 = ""
    Label6 = ""
    Label7 = "T=" & t & "ms"
    Label8 = "f=" & f & "kHz"
    Else
    MsgBox ("输入的数据有错误!")
  End If
Case 4
  If R1 * R2 * C1 <> 0 And test(st(1)) = True And test(st(2)) = True And test(st(3)) = True Then
    t1 = td1(R1, R2, C1)
    t2 = td2(R2, C1)
    t = t1 + t2
    f = 1 / t
    Label5 = "T1=" & t1 & "ms"
    Label6 = "T2=" & t2 & "ms"
    Label7 = "T=" & t & "ms"
    Label8 = "f=" & f & "kHz"
    Else
    MsgBox ("输入的数据有错误!")
  End If
Case 5
  If R1 * R2 <> 0 And test(st(1)) = True And test(st(2)) = True Then
    t = te(R1, R2)
    f = 1 / t
    Label5 = ""
    Label6 = ""
    Label7 = "T=" & t & "ms"
    Label8 = "f=" & f & "kHz"
    Else
    MsgBox ("输入的数据有错误!")
  End If
Case 6
  If R1 * C1 * C2 <> 0 And test(st(1)) = True And test(st(2)) = True And test(st(3)) = True Then
    t = tf(R1, R2, C1, C2) / 1000
    f = 1 / t
    Label5 = ""
    Label6 = ""
    Label7 = "T=" & t & "μs"
    Label8 = "f=" & f & "MHz"
    Else
    MsgBox ("输入的数据有错误!")
  End If
Case 7
    MsgBox ("不用计算!")
End Select

End Sub

Private Sub Form_Load()
adress = App.Path
WebBrowser1.Navigate (adress & "\html\osc1.htm")
Label1 = "R (kΩ)"
Label2 = "C (μF)"
Label3 = "None"
Label4 = "None"
j = 1
End Sub

Private Sub mnuHelp1_Click()
WebBrowser1.Navigate (adress & "\html\help.htm")
j = 7
End Sub

Private Sub mnuLc1_Click()
'选择电路
WebBrowser1.Navigate (adress & "\html\osc5.htm")
Label1 = "L (mH)"
Label2 = "C (μF)"
Label3 = "None"
Label4 = "None"
j = 5
End Sub

Private Sub mnuLc2_Click()
WebBrowser1.Navigate (adress & "\html\osc6.htm")
Label1 = "L (mH)"
Label2 = "C (μF)"
Label3 = "None"
Label4 = "None"
j = 5
End Sub

Private Sub mnuLc3_Click()
WebBrowser1.Navigate (adress & "\html\osc7.htm")
Label1 = "L (mH)"
Label2 = "C (μF)"
Label3 = "None"
Label4 = "None"
j = 5
End Sub

Private Sub mnuLc4_Click()
WebBrowser1.Navigate (adress & "\html\osc8.htm")
Label1 = "L (μH)"
Label2 = "C (pF)"
Label3 = "C1 (pF)"
Label4 = "C2 (pF)"
j = 6
End Sub

Private Sub mnuQuartz1_Click()
WebBrowser1.Navigate (adress & "\html\osc9.htm")
Label1 = "None"
Label2 = "None"
Label3 = "None"
Label4 = "None"
j = 7
End Sub

Private Sub mnuQuartz2_Click()
WebBrowser1.Navigate (adress & "\html\osc10.htm")
Label1 = "None"
Label2 = "None"
Label3 = "None"
Label4 = "None"
j = 7
End Sub

Private Sub mnuRc1_Click()
WebBrowser1.Navigate (adress & "\html\osc1.htm")
Label1 = "R1 (kΩ)"
Label2 = "C1 (μF)"
Label3 = "None"
Label4 = "None"
j = 1
End Sub

Private Sub mnuRc2_Click()
WebBrowser1.Navigate (adress & "\html\osc2.htm")
Label1 = "R1 (kΩ)"
Label2 = "R2 (kΩ)"
Label3 = "C1 (μF)"
Label4 = "C2 (μF)"
j = 2
End Sub

Private Sub mnuRc3_Click()
WebBrowser1.Navigate (adress & "\html\osc3.htm")
Label1 = "R (kΩ)"
Label2 = "C (μF)"
Label3 = "None"
Label4 = "None"
j = 3
End Sub

Function ta(R1, R2)
'计算公式
ta = 2 * 3.1416 * R1 * R2
End Function
Function tb1(R1, C1)
tb1 = 0.693 * R1 * C1
End Function
Function tb2(R2, C2)
tb2 = 0.693 * R2 * C2

End Function
Function tc(R1, R2)
tc = 2.197 * R1 * R2
End Function
Function td1(R1, R2, C1)
td1 = 0.693 * (R1 + R2) * C1
End Function
Function td2(R2, C1)
td2 = 0.693 * R2 * C1

End Function
Function te(R1, R2)
te = 2 * 3.1416 * Sqr((R1 * R2) / 1000)
End Function

Function tf(R1, R2, C1, C2)
tf = 2 * 3.1416 * Sqr(R1 * (2 + R2 + (C1 * C2 / (C1 + C2))))
End Function
Function test(st As String) As Boolean
'判断文本框内的数字是否合法。
n = 1
p = 0
q = 0
While Mid$(st, n, 1) <> ""
If Asc(Mid$(st, n, 1)) > 47 And Asc(Mid$(st, n, 1)) < 58 Then p = p + 1
If Asc(Mid$(st, n, 1)) = 46 Then q = q + 1
n = n + 1
Wend
If n = p + q + 1 And q < 2 And n > 1 Then test = True

End Function

Private Sub mnuRc4_Click()
WebBrowser1.Navigate (adress & "\html\osc4.htm")
Label1 = "R1 (kΩ)"
Label2 = "R2 (kΩ)"
Label3 = "C (μF)"
Label4 = "None"
j = 4
End Sub

⌨️ 快捷键说明

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