C#与MATLAB混合编程

因为老师项目需要,我必须使用C#调用MATLAB画图来实现无线传感器网络中的画图。这里我就和大家介绍一下其中的详细步骤。

Step 1:考虑到时代更新如此迅速的原因,我建议大家安装较新版本的软件,这里我使用的是Mtalab2014a,以及Visual Stdio 2015,可能有人问了,这些软件该怎么安装呢?这里我就只提供一下安装的文件下载,主要安装步骤请参考其他网友介绍。不过在这里请各位同志记住,Matalb一定要是完全破解的,这里的完全破解指的是你们的破解文件夹必须是包含“mcc”以及“compiler”文件,如果不是完全破解,在后期的MATLAB编译以及打包会出现错误。


Step2:安装好软件之后,我们打开MATLAB,出现如下界面:


step 3:在出现的界面中依次点击“新建----->函数”

在这里我就编辑一个最简单的画图函数,程序如下:

[plain]  view plain  copy
  1. function drawtest()  
  2. x=linspace(0,2*pi,30);  
  3. y=sin(x);  
  4. plot(x,y);  
  5. xlabel('自变量');  
  6. ylabel('函数');  
  7. end  
下面我来解释一下这段代码什么意思,如果对程序不感兴趣的伙伴可以直接pass本段

【1.function,顾名思义,这是一个函数,drawtest 是一个函数名,

x=linespce(0,2*pi,30)指的是,变量x在0到2PI这个区间取值,其中的取值间隔是30

y=sin(x)即我们熟悉的sin函数

plot(x,y)即利用MATLAB中的plot函数来绘图

xlabel(‘自变量’)以及ylabel(‘函数’)就是两个坐标轴上的标签符】

点击运行,出现如下的图:


step 4 ;下面开始我们最为关键的一步,打包成一个.dll文件

在MATLAB命令窗口中输入“deploytool”,如下:


运行出现以下界面:


选择第二个“Library Compiler”,出现以下界面:


注意我所圈出的这三个地方,我们选择“.NET Assembly”,然后下面的“Application Information”框就可以不用选择了。

继续往下看,出现这个页面

这个Microsoft NetFramework根据我们电脑自身的.NET Framework来选择,【如果有人不知道电脑的.NET Framework是什么版本,我待会儿再来介绍】,即选择和自身电脑平台一样的数值。

Step 5:然后点击上两幅图中所标注的“+”号,添加文件,选择我们之前保存的“drawtest.m”文件,然后点击标注图中的那个“package”按钮,就出现了下面的这个页面:


之前说到“完全破解MATLAB文件,”在这里若不是完全破解了MATLAB,就会出现打包错误,这里提醒大家一下一定要是完全破解。【如何完全破解,我稍后再做介绍】

step 6:打包之后就会自动弹出以下界面:


注意这里的文件夹位置,这里是我们以后经常会用到的路径名称,如果没有修改的话,一般会是默认在C盘的文档下的MATLAB文件夹下面,进去找一下就好。

step 7:现在运行Vs2015,新建C#项目,然后添加“Button ”控件【VS左侧边缘有工具箱选项,点击然后选择“公共控件”,选择“Button”】,出现如下界面:【如何新建C#项目,我稍后再做介绍】


step8:在“解决方案资源管理器”中找到“引用一栏”,然后右击,选择“添加引用”,点击“浏览”,找到我刚才然你记住的那个路径下的“drawtest.dll”文件。【我们会看到有两个.dll文件,大家可以自己试试添加哪一个,这里笔者只选择了第一个。】添加成功后,会出现以下页面:


step 9:现在回到“Form.cs”双击那个我们添加的Button控件,然后出现代码,我们在代码处添加以下内容:

[plain]  view plain  copy
  1. Class1 ta = new Class1();  
  2.             ta.drawtest();  
在代码头,就是一大堆using 申明处,添加“using drawtest;”

检查是否有错误,现在编译,运行,就可以得到以下的函数图像了:


大功告成!

趁着我离上晚自习还有一点时间,再在这里啰嗦两句

注:1.如何查看自己电脑的.NET Framework的版本。

.

2.关于新建“C#项目”,在VS主页,我们点击“文件----->新建----->项目”然后出现以下界面:


确定之后,就按照上面我们的步骤继续做即可。

3.要保证自己的C#程序能够运行出来,最好安装一下mcr,这个是MATLAB程序的运行环境,安装方式如下:

找到自己安装MATLAB的路径,我的如下:

   E:\Program Files\MATLAB\R2014a\toolbox\compiler\deploy\win64\MCRInstaller.exe

找到MCRInstall.exe文件,安装一下,这样能保证程序的正确运行。

4.Matlab2014a完全破解文件以及破解步骤的文件分享链接如下:

 链接:http://pan.baidu.com/s/1pLtSc9l 密码:0wa9

5.如果调用过程出现问题,请私信作者【QQ:1471831539】,欢迎一起讨论。

------------------------------------2017-03-24更新------------------------------------------------我是一条智慧的分界线-----------------------------------

1.近来收到很多网友的私信,说是按照我的步骤一路到头,MATLAB程序是对的,C#项目代码中也没有问题,但是为什么就没有正确的画图程序出来呢?这里统一回复一下:可能的原因(我也不敢讲绝对了)

1)就是上面我讲到的“没有正确新建C#项目的.NET FrameWork平台”,就是上面的注2内容,希望大家自己多尝试一下【.NET FrameWork 选择4或者3.5即可】!

转自:https://blog.csdn.net/liu16659/article/details/52442435
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值