采用VB与MATLAB混合编程的数字滤波器设计.pdf
《采用VB与MATLAB混合编程的数字滤波器设计.pdf》由会员分享,可在线阅读,更多相关《采用VB与MATLAB混合编程的数字滤波器设计.pdf(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第2 7 卷第1 8 期计算机工程与设计2 0 0 6 年9 月V 0 1 2 7N o 18C o m p u t e rE n g i n e e r i n ga n dD e s i g nS e p t 2 0 0 6采用V B 与M A T L A B 混合编程的数字滤波器设计李善姬,芦成刚(延边大学电子信息工程系,吉林延吉1 3 3 0 0 2)摘要:结合V B 编程简单、界面友好的特点及M A T L A B 强大的计算,图形表达功能,采用V B 与M A T L A B 的混合编程,-q-以开发出效率高、使用方便的应用程序。利用A c t i v e X 技术和文件传递参数,
2、解决了V B 与M A T L A B 的混合编程并应用于数字滤波器的设计上,利用该方法设计了F I R 数字滤波器。关键词:A c t i v e X 技术;文件传递参数;V B 与M A T L A B 混合编程;数字滤波器设计中图法分类号:T P 3 1 1 1 1;T N 7 1 3 7文献标识码:A文章编号:1 0 0 0-7 0 2 4(2 0 0 6)1 8-3 4 8 6-0 2D e s i g no fd i g i t a lf i l t e rw i t hm i x e dp r o g r a mo fV Ba n dM A T L A BL IS h a n-j
3、 i,L UC h e n g-g a n g(D e p a r t m e n to fE l e c t r o n i cI n f o r m a t i o na n dE n g i n e e r i n g,Y a n b i a nU n i v e r s i t y,Y a n j i13 3 0 0 2,C h i n a)A b s t r a c t:C o m b i n e ds a m p l ep r o g r a ma n df r i e n d l yi n t e r f a c eo f V Bw i t hh i g h-p o w e r
4、e dc a l c u l a t i o na n dg r a p h i ce x p r e s s i o no f M A T L A B,t h ea p p l i e dp r o g r a mt ob ed e v e l o p i n gb ya d o p t i n gt h em i x e dp r o g r a mo f V Ba n dM A T L A Bi se f f i c i e n ta n da c c e s s i b l et ou s e U s i n ga c t i v eXt e c h n o l o g ya n dd
5、 o c u m e n t 仃i m s f e rr e f e r e n c e i ti ss o l v e dt ot h em i x e dp r o g r a mo f V Ba n dM A T L A B M o r e o v e r,i ti su s e dt od e s i g nt h ed i g i t a lf i l t e r,a n dd i g i t a lf i l t e rF I Ri sd e s i g n e db yt h ew a y K e yw o r d s:a c t i v eXt e c h n o l o g
6、y;d o c u m e n tt r a n s f e rr e f e r e n c e;m i x e dp r o g r a mo f V Ba n dM A T L A B;d i g i t a lf i l t e r0 引言V B 是一种简单实用且功能丰富的可视化编程语言,可用于开发W i n d o w s 环境下的各类应用程序。它使用W i n d o w s 内部的应用程序接口函数,以及动态数据交换、动态链接库、对象的链接和嵌入等技术,可以高效、快速地开发出W i n d o w s 环境下功能强大、具有丰富图形界面的应用软件系统。但是V B在数值计算方面却远不如
7、M A T L A B。M A T L A B 是一种以矩阵计算为基础的功能强大的程序设计语言,它不仅编程效率高、扩展性强,而且在数值计算和图形表达功能方面具有其它类似软件难以匹敌的优势,然而它在数据可视化方面又远不如V B。如果将两个软件的功能结合在一起,利用V B 和M A T L A B各自的优点,则可以开发出具有更友好的界面、功能更强大的应用程序,这在实际的科研中具有广泛的意义。本文中将利用这一思想设计F I R 数字滤波器。1F I R 数字滤波器设计基本思想数字滤波器设计是数字信号处理的核心问题,利用数字滤波器可以在复杂的信号中提取所需要的信号,抑制不需要的信号。有关数字滤波器的设
8、计研究广泛被各界学者进行“捌。由于有限脉冲响应(f i n i t ei m p u l s er e s p o n s e,F I R)数字滤波器具有无限脉冲响应(i n f i n i t e i m p u l s er e s p o n s e,I I R)数字滤波器难以实现的严格线性相位特性,在图像处理及数据传输时不会发生明显的相位失真,而且F I R 数字滤波器同时可具有任意的幅度特性,因而F I R 数字滤波器在工程实际中得到广泛的应用。F I R 数字滤波器的设计方法常用3 种:窗函数法、频率抽样法和等波纹逼近法。其中,窗函数法是一种常用的设计方法。其基本设计步骤为:步骤1
9、 根据技术要求,来确定待求滤波器的单位抽样响应 d(栉);步骤2 根据对过渡带及阻带衰减的要求,选择窗函数的形式,并估计窗口长度步骤3 计算滤波器的单位抽样响应(”)h(n)=h d(n)“n)式中:w(n 卜_ 上面选择好的窗函数。步骤4 验算技术指标是否满足要求,如果不满足要求,根据具体情况重复步骤2 步骤4,直到满足要求为止。窗函数的形式有多种,如矩形窗、三角形窗、汉宁窗、哈明窗、布莱克曼窗和凯泽窗。根据阻带最小衰减,目前使用最广泛的是凯泽窗。利用M A T L A B 提供的F I R 滤波器设计函数可以快速地设计出所需数字滤波器,并用图形显示滤波器的幅频和相频特性蓝线,可以知道设计结
10、果是否满足指标要求。2V I I 与M A T L A B 混合编程的实现方法2 1 利用A c f i v e X 自动化A c t i v e X 自动化是A c t i v e X 的一个协议,它允许应用程序收稿日期:2 0 0 5 0 7-2 8。作者简介:李善姬(1 9 5 9-),女(朝鲜族),吉林延吉人,硕士,副教授,研究方向为计算机应用;芦成刚,男,硕士研究生。-3 4 8 6-万方数据或组件控制另一个应用程序或组件的运行,它包括自动化服务器或控制器。M A T L A B 可以作为自动化服务器,可以由其它应用程序编程驱动。M A T L A B 支持C O M 技术,它提供了
11、一个自动化对象,其外部名称是M a t l a b A p p l i c a t i o n,其它程序通过C O M 技术提供的函数得到自动化对象支持的接口指针,通过调用接口函数便可控制和使用自动化对象了,利用这一特性用户可以非常方便地在应用程序中调用M A T L A B 命令,向M A T L A B 输入数据,使用M A T L A B 功能丰富的工具箱,完成所需要的设计,获取数据图形结果。在V B 应用程序中创建A c t i v e X 对象的具体步骤如下D i mm a t l a bA sO b j e c tS e tm a t l a b=C r e a t e O b j
12、 e c t(”M a t l a b A p p l i c a t i o n”)在V B 应用程序中创建了M a t l a b 的A e t i v e X 对象后,就可以使用这个对象所包含的各种方法来实现对M a t l a b 的调用。M a t l a b A p p l i c a t i o n 对象含有3 种方法,它们是:E x e c u t e、G e t F u l l-M a t r i x 和P u t F u l l M a t r i x。对以上3 种方法简单说明如下:E x e c u t e 用于执行一个合法的M A T L A B 命令。E x e c
13、u t e 方法的输入参数为一个字符串类型的变量,它可以包含任何合法的M A T L A B 命令,并以结果字符串的形式输出,同时命令所产生的任何图形都将被直接显示在屏幕上。G e t F u l l M a t r i x 用于从M A T L A B 工作空间中获取数据。通过该方法应用程序可以从指定的M A T L A B工作空间中获取指定名字的m x A r r a y 结构体数据。P u t F u l l M a t r i x 用于向M A T L A B 工作空间中输出一个指定名字的m x A r r a y 结构体。通过该方法,应用程序可向指定的M A T L A B工作空间输
14、出一个指定名字的m x A r r a y 结构体。2 2 利用D D E 技术动态数据交换(简称D D E)是一种开放的、与语言无关的、基于消息的协议,它是应用程序通过共享内存进行进程间通信的一种形式。服务器程序与客户程序之间的数据交换被称为“会话”,其中客户程序是初始化链接和发送数据请求的应用程序,而服务器程序则是通过执行自身的命令或发送数据来响应客户程序的应用程序。D D E 协议将通过通信对象划分为服务名、主题名和项目名。每次D D E 会话由服务名和主题名惟一确定。客户应用程序可以通过D D E 协议和服务器应用程序的一个或多个项目建立数据链路。V B 为用户提供的支持D D E 通
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 采用 VB MATLAB 混合 编程 数字滤波器 设计
限制150内