基于MATLAB的数字滤波器设计
下载此文档
文档格式:DOC
更新时间:2008-05-07
下载次数:0
点击次数:3
文档基本属性
文档语言:Simplified Chinese
文档格式:doc
文档作者:向超
关键词:
主题:
备注:
点击这里显示更多文档属性经理:
单位:电子科技大学
分类:
创建时间:
上次保存者:
修订次数:
编辑时间:
文档创建者:
修订:
加密标识:
幻灯片:
段落数:
字节数:
备注:
演示格式:
上次保存时间:
实验5 基于docsou.comB的数字滤波器设计
实验目的:加深对数字滤波器的常用指标和设计过程的理解.
实验原理:低通滤波器的常用指标:
通带边缘频率:,阻带边缘频率: ,通带起伏:,通带峰值起伏: ,阻带起伏:,最小阻带衰减: .
数字滤波器有IIR和FIR两种类型,它们的特点和设计方法不同.
在docsou.comB中,可以用[b,a]=butter(N,Wn)等函数辅助设计IIR数字滤波器, 也可以用b=fir1(N,Wn,'ftype') 等函数辅助设计FIR数字滤波器.
实验内容: 利用docsou.comB编程设计一个数字带通滤波器,指标要求如下:
通带边缘频率:,,通带峰值起伏:.
阻带边缘频率:,,最小阻带衰减: .
分别用IIR和FIR两种数字滤波器类型进行设计.
实验要求:给出IIR数字滤波器参数和FIR数字滤波器的冲激响应,绘出它们的幅度和相位频响曲线,讨论它们各自的实现形式和特点.
判断输入的值是否为数字的函数docsou.com
实际项目中有时候需要判断输入的值是否全为数字,然而直接用判断数字的一些函数如Val()和Isnumeric()等 对"+"号,"-"号,还有小数点不能直接过滤,下面的函数实现判断功能,如果全为数字返回True,如果有非数字返回docsou.com. docsou.comc docsou.commber_Check(ByVal str As docsou.comg) As Boolean
Dim i docsou.comteger = Len(str)
Dim j docsou.comteger
Dim flag As Boolean = True
For j = 1 To i
If IsNumeric(Mid(str, j, 1)) Then
flag = True
Else
flag = docsou.com
Exit For
End If
Next
Return flag
End docsou.comn
\\docsou.comclare docsou.comdocsou.comb "user32" Alias "docsou.comdowLongA" (ByVal hwnd As Long, ByVal docsou.comx As Long, ByVal dwNewLong As Long) As Long
docsou.comclare docsou.comn docsou.comb "user32" Alias "docsou.comdowLongA" (ByVal hwnd As Long, ByVal docsou.comx As Long) As Long
docsou.comdocsou.com_docsou.comR = &H2000&
docsou.comnst GWL_STYLE = (-16)
docsou.come docsou.comntrolEdit(docsou.comntrol docsou.comntrol)
Dim x As Long
docsou.comtyle As Long
Estyle = docsou.comdowLong(docsou.comntrol.hwnd, GWL_STYLE)
Estyle = Estyle docsou.com_docsou.comR
x = docsou.comdowLong(docsou.comntrol.hwnd, GWL_STYLE, Estyle)
End Sub
docsou.come Sub Form_Load()
docsou.comntrolEdit(Text1) 'text1为文本框
End Sub