龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > VC开发 >

simulink与vc++6.0接口(2)

时间:2009-12-30 15:42来源:未知 作者:admin 点击:
分享到:
(6) engOutPutBuffer 功能:确定存放MATLAB输出结果的缓冲区域。 语法:int engOutputBuffer(Engine* eP,char* p,int n); 使用engOutputBuffer,用户可以为引擎指针ep所指向

(6)  engOutPutBuffer   

功能:确定存放MATLAB输出结果的缓冲区域。   

语法:int engOutputBuffer(Engine* eP,char* p,int n);   

使用engOutputBuffer,用户可以为引擎指针ep所指向的引擎设置一个输出缓冲区,将MATLAB输出到屏幕上的内容保存在其中,其长度由参数n确定,位置由字符指针p来确定。

VC++6.0集成环境中建立MATLAB引擎程序的方法   

第一步,建立项目工程。启动VC++6.0集成环境,选择File下拉式菜单中的New选项,可有三种类型的应用程序创建工程选择.分别为MFC AppWizard(exe)、Win32Application和Win32conso1e Application。选择其中一种,在Project name编辑框中输入项目名,按照项目向导完成项目工程创建。

第二步,设置编译环境。选择下拉式菜单Tools中的菜单项Options,选择其中的Directories属性页,在其中的Show directories下拉式选项框中分别选择Include Files和Library Files,在下部的编辑框中通过浏览分别添加如下路径:Include Fiels:MATLAB根目录externinclude

MATLAB根目录externincludecpp
Library Fiels:MATLAB根目录externlib   
MATLAB根目录externinclude   

第三步,设置项目连接选项。选择菜单Project中的子菜单Settings,选择其中的属性页Link,在其中的Catogery下拉式选项框中选择Input.在下部的Object Library modules编辑框中填写:libeng.lib、libmx.1ib和libmat.1ib。(具体用到什么库由你的应用决定)

第四步,加入引擎头文件。在准备使用MATLAB引擎的类的cpp文件中,加入“#include “engine.h””语句,并且在以后建立的要使用MATLAB引擎的类中也注意加入上述语句。   

当完成以上述四步工作后,用户就可以在VC++中对MATLAB引擎程序进行编译和调试了。

 Simulink的命令行仿真方式

一般情况下,Simulink是类似框图图形化的仿真方法;而在通过引擎方式将Simulink同VC相结合时,仿真的每个操作是通过调用engEvalString执行一个用字符串表示的MATLAB表达式(Simulink仿真命令)来实现的。因此,要掌握Simulink&VC混合编程,首先需要掌握Simulink的命令行仿真方式:

[t,x,y]=sim('modelname')

利用对话框参数进行仿真,返回输出矩阵;

[t,x,y]=sim('modelname', timespan, options, ut)

利用输入参数进行仿真,返回输出矩阵;

[t,x,y1,y2,...yn]=sim('modelname', timespan, options, ut)

利用输入参数进行仿真,返回逐个输出;

收藏文章
表情删除后不可恢复,是否删除
取消
确定
图片正在上传,请稍后...
评论内容为空!
还没有评论,快来抢沙发吧!
按钮 内容不能为空!
立刻说两句吧! 查看0条评论
精彩图集

赞助商链接