Matlab与COM应用(一)——COM技术概述

通用对象模块COM技术是一种帮助软件开发人员将那些不同软件供应商的应用程序集成到完整的应用程序解决方案的软件开发技术。说白了就是软件的组件化。

例如,使用COM技术,开发人员可以选择一个软件供应商的数据库接口组件,而选用另外一个软件供应商提供的商业图形组件,开发人员只要将这些组建集成起来,应用到另外一个软件供应商提供的数学分析环境中完成自己的开发,就能够完成复杂的应用程序开发。

COM技术有如下优点:

1.将庞大的应用程序划分成若干的组件
2.每个组件相互独立,协同工作,通过接口完成任务
3.独立开发、编译、测试
4.便于升级和开发新的应用程序,只要升级相关组件并重新组合即可

那么,在应用程序开发的过程中,最关键的就是组件之间的接口,在windows平台上,COM就是被广大程序员所推崇的组件标准之一

在windows平台上,一个COM组件可以是一个动态链接看DLL,也有可能是一个可执行程序EXE。基于COM标准,可以开发不同的COM对象,而对象以接口的形式提供服务。

COM组件、对象和接口之间的关系如下:

<ignore_js_op>com.jpg 

COM对象是组件对象类的实例,COM要求对象具有完全的封装特性,避免对象的数据或方法被直接使用。
COM接口是提供访问对象的方法、属性和手段,COM接口通常聚合了一组相关的方法。

一个组件可以由多个COM对象,而一个对象可以包含多个接口,每一个接口都有一个12位的全局唯一标识符(GUID),客户通过GUID就能获取接口的指针,通过接口的指针就可以调用相应的成员函数

一般地,COM对象与客户之间是遵循客户端/服务器工作模式的,主要的优势就是体现在稳定性好,尤其在进行进程间通讯的时候,稳定性好就以为着可靠性高。

通常情况下,在进行应用程序开发过程中,极少直接使用COM API和COM接口,因为这些技术相对而言比较复杂而且不那么容易理解和实现,对普通用户来说要求比较高。故通常我们使用一些实用的技术:

(1)自动化服务:一种以windows为基础的ActiveX协议,允许一个应用程序控制另一个应用程序,它们采用统一的接口(IDispatch)。使用自动化协议,像一些非编译语言,例如VBscript,可以直接同应用程序交互。比如Matlab控制Excel编程。

(2)ActiveX控件:具有图形用户界面的自动化组件,可以响应用户的动作,例如windows中常见的对话框,相当于Matlab的GUI中的控件,在有events(事件)发生时,激发回调callback。

既然上面说了直接的接口技术我们很少用到,再说我们又不是专业的程序开发技术人员,故在后面讲到的所有内容中,我们不会涉及到接口技术,只围绕【自动化服务】和【ActiveX控件】进行分析

 

转自 http://www.matlabsky.com/forum.php?mod=viewthread&tid=1162

 

 

转载于:https://www.cnblogs.com/renly/archive/2013/01/14/2859796.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数字通信同步技术是实现高速、可靠数字通信的关键技术之一。而在数字通信系统中,数字通信同步技术MATLAB与FPGA实现,特别是基于Xilinx/VHDL进行开发的方式,具有重要的意义。 首先,MATLAB作为一个强大的数学计算工具,可以方便地进行算法的设计与验证。在数字通信同步技术中,使用MATLAB进行算法设计和仿真可以更加直观地观察到系统的性能和特性,并且可以快速地进行系统性能指标的评估和优化。同时,MATLAB还提供了丰富的工具箱和函数库,包括通信系统工具箱、信号处理工具箱等,可以方便地调用和实现数字通信同步技术中的各种功能模块。 其次,FPGA作为一种可编程逻辑器件,可以实现数字通信同步技术中的各种算法和功能模块。基于Xilinx平台和VHDL语言进行FPGA开发,具有较高的灵活性和可扩展性。可以通过编写VHDL代码,将MATLAB中设计好的算法直接转换为硬件逻辑,在FPGA芯片上进行运行。这样可以实现更高的运行速度和更低的系统延迟,并且可以大大提高系统的实时性和并行计算能力。 通过将数字通信同步技术MATLAB与FPGA实现进行结合,可以充分发挥两者的优势,提高数字通信系统的运行速度和性能。实现MATLAB算法到FPGA芯片的转化需要使用HDL Coder工具。该工具可以将MATLAB中的算法转换为HDL代码(如VHDL),并为FPGA开发提供数学功能密集型模块。与传统的软件实现相比,基于FPGA的实现可以更好地满足高速、实时和并行计算的需求,并且能够方便地进行系统的调试和优化。 综上所述,数字通信同步技术MATLAB与FPGA实现,尤其是基于Xilinx/VHDL的开发方式,可以极大地提高数字通信系统的性能和可靠性,对数字通信领域的研究和应用具有重要的意义。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值