主要内容

通过使用使用MEX功能马铃薯编码器应用程序

使用使用的工作流程生成MEX功能马铃薯编码器应用程序

行动 细节
1

设立马铃薯®编码器™项目。

设置Matlab编码器项目
2

指定构建配置参数。放构建类型梅克斯

配置项目设置
3.

建立项目。

构建MATLAB编码器项目

Matlab编码器应用程序不受支持金宝appMatlab Online™。生成MEX功能Matlab在线, 使用Codegen.命令。

使用mex函数使用马铃薯编码器应用程序

此示例显示如何使用Matlab代码生成MEX函数Matlab编码器应用程序。

创建入口点函数

在本地可写文件夹中,创建MATLAB文件,Mcadd.m.,包含:

功能Y = Mcadd(U,V)%#codegen.y = u + v;

创建测试文件

在相同的本地可写文件夹中,创建一个matlab文件,Mcadd_test.m.,那个呼叫麦克达使用示例输入。示例输入是具有类型的标量int16

功能y = mcadd_test y = mcadd(int16(2),int16(3));

打开马铃薯编码器应用程序

在Matlab Toolstrip上应用标签,下面代码生成, 点击Matlab编码器应用图标。

该应用程序打开了选择源文件页。

指定源文件

  1. 在这一点选择源文件页面,键入或选择入口点函数的名称麦克达

    该应用程序创建一个具有默认名称的项目Mcadd.prj.

  2. 点击下一个定义输入类型步。该应用分析了编码问题和代码生成准备的功能。如果应用程序识别问题,则会打开审核代码生成准备页面您可以在哪里审核和修复问题。在这个例子中,因为应用程序没有检测到问题,所以它打开定义输入类型页。

定义输入类型

因为C在编译时使用静态键入,所以Matlab编码器必须确定MATLAB文件中所有变量的属性。您必须指定所有入学点功能输入的属性。从入口点函数输入的属性,Matlab编码器可以推断Matlab文件中所有变量的属性。

指定测试文件Mcadd_test.m.Matlab编码器用于自动定义类型V.

  1. 输入或选择测试文件Mcadd_test.m.

  2. 点击自动杂记输入类型

    测试文件,Mcadd_test.m.,调用入口点函数,麦克达,使用示例输入类型。Matlab编码器infers输入V.INT16(1x1)

  3. 点击下一个检查运行时间问题步。

检查运行时间问题

检查运行时间问题步骤从您的入口点函数生成MEX文件,运行MEX函数,并报告问题。此步骤是可选的。但是,执行此步骤是最好的做法。您可以检测和修复更加困难以在生成的C代码中诊断的运行时错误。

  1. 打开检查运行时间问题对话框,单击检查问题

    该应用程序填充了测试文件字段Mcadd_test.,您用于定义输入类型的测试文件。

  2. 点击检查问题

    该应用程序生成MEX功能。它运行替换呼叫的测试文件麦克达呼叫MEX功能。如果应用程序在MEX函数生成或执行期间检测到问题,则提供警告和错误消息。单击这些消息以导航到有问题的代码并修复问题。在此示例中,该应用程序不会检测到问题。

  3. 点击下一个生成代码步。

生成MEX功能

  1. 打开产生对话框,单击产生

  2. 在里面产生对话框,设置构建类型梅克斯到C.使用其他项目构建配置设置的默认值。

  3. 点击产生

    该应用程序表示代码生成成功。它显示源MATLAB文件和页面左侧的生成的输出文件。在这一点变量选项卡,它显示有关MATLAB源变量的信息。在这一点目标构建日志标签,它显示构建日志,包括编译器警告和错误。

    Matlab编码器构建项目,默认情况下,生成MEX功能,Mcadd_mex.,在当前文件夹中。Matlab编码器还在调用的子文件夹中生成其他支持文件金宝appCodegen / MEX / MCADDMatlab编码器使用MATLAB函数的名称作为生成文件的根名称。它为MEX文件创建了一个特定于平台的扩展。看命名惯例

  4. 要查看代码生成报告,请单击查看报告

  5. 点击下一个打开完成工作流程页。

查看完成工作流程页面

完成工作流程页面表示代码生成成功。它提供了一个项目摘要和链接到生成的输出。

配置项目设置

要打开“项目设置”对话框:

  1. 打开产生对话框,单击产生

  2. 点击更多设置

要更改项目设置,请单击包含要更改的设置的选项卡。例如,改变在整数溢出上饱和设置,单击速度标签。

MEX函数使用不同的配置参数集而不是库和可执行文件。当您更改输出类型时MEX功能源代码静态库动态库, 或者可执行文件,验证这些设置。

某些配置参数与MEX和独立代码生成相关。如果您在输出类型是时启用任何这些参数MEX功能,并且您想要对C / C ++代码生成使用相同的设置,您必须再次启用它C / C ++静态库C / C ++动态库, 和C / C ++可执行文件

也可以看看

建个马铃薯编码器项目

使用指定的设置构建项目生成代码页面,点击产生。作为Matlab编码器应用程序构建一个项目,它显示构建进度。构建完成后,该应用程序提供有关构建的详细信息目标构建日志标签。

如果启用了代码生成报告或发生构建错误,则该应用程序会生成报告。该报告提供有关最新构建的详细信息,并提供到报告的链接。

要查看报告,请单击“查看报告关联。该报告提供了与MATLAB代码的链接,并生成C / C ++文件以及MATLAB代码中变量的编译时类型信息。如果发生构建错误,则报告列出了错误和警告。

也可以看看

相关话题