在embedded matlab function中,有四种类型数据(scope)与外界做交换:input、output、parameter和data store memory。
input和output是输入与输出,对应于函数的输入与输出参数,容易理解。data store memory暂时不予考虑。这次谈谈parameter的设置问题。
一.设置parameter的原因。
简而言之,设置parameter是为了能让embedded matlab function能够从其父已封装子系统的参数或者matlab工作空间(workspace)中的变量以只读的方式获取值。
二.如何设置parameter。
- 在embedded matlab editor中函数首行中设置参数,但参数名称要与想要传递过来的的变量名称一致。即将parameter当做同名的input卸载function header中。
- 这时,我们要设置的参数就像一个input port一样显示在模块中。
假如我们想要传递一个名为para的parameter,此时的editor中代码如下:
模块的外观如下:
3. 在embedded matlab editor中的菜单tool->Model Explorer中或tool->Edit Data/Port中其父系统的菜单View->Model Explorer(Ctrl-h)中更改其Scope为parameter,如下两图所示:


4. 此时para已经是parameter了,观察block的外观,也没有para这个port了。

三.对于parameter的一些理解.
parameter看起来好像是函数头部的输入参数一样(header of embedded matlab function)一样,这是为了与matlab中的function保持一致性。这样你就可以通过复制粘贴函数来测试函数了。
本文探讨了在Embedded MATLAB Function中设置parameter的原因、方法及其理解。parameter用于从封装子系统的参数或MATLAB工作空间中以只读方式获取值。设置方法包括在编辑器中定义参数,并在Model Explorer中将其Scope设为parameter,使其在函数头部显示并允许测试。

被折叠的 条评论
为什么被折叠?



