Host-Target交流金宝app公益诉讼的模拟
介绍如何使用rtiostream
用于在PIL模拟期间开发计算机和目标硬件之间通信的API。
通信rtiostream
API
的rtiostream
API支金宝app持针对目标连接性API的通信。使用rtiostream
API来实现通信通道,使不同进程之间能够进行数据交换。
PIL仿真需要一个主机-目标通信通道。该通信通道包括在主机和目标上运行的驱动程序代码。的rtiostream
API定义了此驱动程序代码必须实现的目标端和主机端函数的签名。
API独立于发送数据的物理层。可能的物理层包括RS232、以太网或控制器区域网络(CAN)。
一个完整的rtiostream
实现需要主机端和目标端驱动程序。代码生成软件包括用于默认TCP/IP实现的主机端驱动程序和用于串行通信的版本。使用方法:
TCP / IP
rtiostream
通信通道,您必须提供或从第三方获取目标特定的TCP/IP设备驱动程序。串行通信通道,您必须提供,或从第三方获取,目标特定的串行设备驱动程序。
对于其他通信通道和平台,代码生成软件不提供默认实现。您必须同时提供主机端和目标端驱动程序。
的rtiostream
API包含以下函数:
信息:
使用
rtiostream
连接实现中的函数,请参见创建一个目标连接性API实现.测试
rtiostream
MATLAB中的共享库方法®代码,请参见rtiostream_wrapper
.调试和验证自定义的行为
rtiostream
接口实现,看测试rtiostream驱动程序而且rtiostreamtest
.
同步主机和目标器
如果您使用rtiostream
API要实现通信通道,主机和目标必须同步,这就阻碍了Simulink金宝app®在目标应用程序完全初始化之前传输和接收数据。
要同步TCP/IP rtiostream实现的主机和目标,请使用setInitCommsTimeout
方法从rtw.connectivity.RtIOStreamHostCommunicator
.这种方法适用于面向连接的TCP/IPrtiostream
因为Simulink会自动等待直到目标服务器运行金宝app。
与其他rtiostream
实现,例如串行,Simulink端金宝apprtiostream
连接打开时无需等待目标完全初始化。在这种情况下,你必须使你的发射器
实现等待,直到目标应用程序完全初始化。使用以下方式同步主机和目标:
的末尾添加一个停顿
发射器
实现,使发射器
等待目标初始化完成。在
发射器
实现时,使用第三方下载器或调试器api等待目标初始化完成。实现握手机制
发射器
/rtiostream
确认目标初始化完成的实现。
测试一个rtiostream
司机
使用测试套件来调试和验证自定义的行为rtiostream
接口的实现。
测试套件可以帮助您:
减少集成没有内置的定制硬件所需的时间
rtiostream
金宝app支持。减少测试定制所需的时间
rtiostream
驱动程序。分析定制的性能
rtiostream
驱动程序。
测试套件由两部分组成。一部分是在目标硬件上运行的应用程序。另一部分在MATLAB中运行。有关详细信息,请参见rtiostreamtest
.
字可寻址目标硬件
在“配置参数”对话框中,当您指定设备供应商而且设备类型,您提供关于目标硬件的内存寻址信息的PIL模拟。
例如,考虑当设备供应商被设置为德州仪器公司
而且设备类型被设置为C5000
.
该设置指定目标硬件使用16位字地址和大端语序。rtiostream实现使用16位字进行操作。
在目标硬件上,如果rtIOStream
函数指定大小为1,那么目标硬件必须发送或接收一个16位的字(2字节)。sizeof (char)
而且sizeof(短)
返回1,对应一个16位的单词。的rtIOStream
函数期望字内的字节顺序是小端序的,也就是说,低有效字节在高有效字节之前传输。
rtiostreamtest
标识目标硬件并按16位字处理数据,例如,字节值作为16位字值传输。
另请参阅
rtIOStreamClose
|rtIOStreamOpen
|rtIOStreamRecv
|rtIOStreamSend
|rtiostream_wrapper
|rtiostreamtest
|rtw.connectivity.RtIOStreamHostCommunicator