使用目标连接性配置和目标连接性API为目标环境定制在环处理器(PIL)执行。
通过目标连接配置,您可以指定:
目标连接性API实现的目标连接性配置名称。
定义兼容MATLAB的设置®代码。例如,为特定硬件实现生成的代码。
PIL执行需要一个目标连通性PIL API实现,集成第三方工具用于:
构建在目标硬件上运行的PIL应用程序
下载、启动和停止目标上的应用程序
MATLAB与目标之间的通信
您可以有许多不同的连接配置PIL执行。注册一个连接配置与MATLAB通过创建rtwTargetInfo.m
文件并将其放置在MATLAB搜索路径上。
在PIL执行中,软件决定使用哪一个可用的连接配置。该软件寻找与测试中的MATLAB代码兼容的连接性配置。如果软件发现多个或没有兼容的连通性配置,则会生成一个错误消息,其中包含解决问题的信息。
这个图显示了PIL目标连接API的组件。
你必须提供三个API组件的实现:
构建API——指定用于构建生成代码的工具链方法。
启动器API -控制MATLAB如何启动和停止PIL可执行文件。
通信API -自定义MATLAB和PIL目标之间的连接性。嵌入式编码器®为TCP/IP和串行通信提供主机端支持金宝app,您可以对其他协议进行调整。
这些步骤概述了如何创建目标连接性API实现。步骤中显示的示例代码取自ConnectivityConfig.m
文件中使用从命令行执行循环中的处理器.
创建的子类rtw.connectivity.Config
.
ConnectivityConfig < rtw.connectivity.Config
在子类:
实例化rtw.connectivity.MakefileBuilder
,它配置构建过程。
builder = rtw.connectivity。MakefileBuilder (componentArgs……targetApplicationFramework,……exeExtension);
创建的子类rtw.connectivity.Launcher
,它使用第三方工具下载并执行应用程序。
发射器= mypil。发射器(componentArgs builder);
配置您的rtiostream
的API实现host-target通信通道。
对于目标端,您必须提供用于通信的驱动程序代码,例如用于TCP/IP或串行通信的代码。要将此代码集成到构建过程中,请创建rtw.pil.RtIOStreamApplicationFramework
.
对于主机端,可以使用为TCP/IP或串行通信提供的库。实例化rtw.connectivity.RtIOStreamHostCommunicator
,它加载并初始化您指定的库。
hostCommunicator = rtw.connectivity.RtIOStreamHostCommunicator(…componentArgs,……发射器,……rtiostreamLib);
如果您需要对生成的代码进行执行时分析,那么创建一个计时器对象,该对象提供特定于硬件的计时器和相关源文件的详细信息。看到指定硬件定时器.
在MATLAB中注册目标连接性API实现作为目标连接性配置:
创建或更新rtwTargetInfo.m
文件。在这个文件中:
创建一个目标连接性配置对象,该对象指定目标连接性API实现的配置名称和兼容的MATLAB代码。
调用registerTargetInfo
.
添加包含rtwTargetInfo.m
,并刷新MATLAB编码器™库登记信息。
有关更多信息,请参见rtw.connectivity.ConfigRegistry
.
要在早期独立于算法开发和代码生成的情况下验证目标连接性配置,请使用piltest
函数。使用该函数,您可以运行一套测试。功能:
运行MATLAB函数并执行PIL执行。
如果检测到差异,则比较结果并产生错误。
例如,请参见PIL执行的代码生成的卡尔曼估计.
piltest
|rtw.connectivity.Config
|rtw.connectivity.ConfigRegistry
|rtw.connectivity.Launcher
|rtw.connectivity.MakefileBuilder
|rtw.connectivity.RtIOStreamHostCommunicator
|rtw.pil.RtIOStreamApplicationFramework